使用贝叶斯定理,目前来看最重要的一点在于假设。就是未知事件已知化,同时也要注意假设的全程性,不能从中开始新的假设,这种假设往往是不全面的。

我自己找到的假设的方法有两种,一种是命名,一种是时序。全程性就体现在时序上了,假设考虑的范围要从第一条相关条件开始。

举3个原书的例子:

例子1,有两个筐,一个筐A中是:3/4的红球,1/4的黄球;另一个筐B中是:1/2的红球,1/2的黄球。

我拿到了一个红球,那么这个红球从筐A中拿到的概率是多少?

1,我们看一下能不能使用贝叶斯公式?这个事件可以分为两个子事件,先选筐,后拿球。选筐和拿球现在看是互斥的。这样,我们就完成了一部分的时序化。目前来看命名的必要不是很大,但是我可以说,我拿了球的这个筐为1号筐,另立一个为2号筐。

2,我们看一下先验分布,选A,B拿球的概率是相同的,都是1/2。

3,似然度:

假设A的为3/4;

假设B的为1/2。

4,根据全概率公式,我们得到归一化常量,这个常量是5/8。也就是我们的P(D)。这个值的实际意义是拿到红球的概率是5/8,这个好像是有一定意义的。

5,很容易得到后验概率,为3/5。

这个例子,我感受到这个时序化很重要,我们的描述就是“拿了一个球,这个球是红球”,但是实际上我们看我们是怎么拿的,是先选中一个筐,再从筐里边拿球。

我一直纠结归一化常量的含义,在有些例子中,归一化常量有实际意义,在有些例子中对于我来讲没有。

例子2,初始条件一样,但是,我分别从两个筐中各拿一个球,一个是红色的,一个是黄色的(球的数量无限多)。请问红球从筐A中拿到的概率?

1.我们还是要假设。虽然拿球的数量是2个了,但是复杂度并不一定成倍的增加。因为我们将这样假设:我先选中一个筐,这个筐命名为1号筐,从这个筐中拿出红球,从另一个筐中(2号)拿出黄球。这个会出现一个小疑问,就是我的先后顺序影响真实结果吗?目前先不讨论。

2.仍然是先验分布:

假设1:先拿筐A,1/2

假设2:先拿筐B,1/2    这里注意先拿后拿直接决定了拿出红球的筐,应为我们就是如此假设的。

3.似然度,

假设1:3/4 * 1/2 = 3/8

假设2:1/2 * 1/4 = 1/8

在我们假定先后拿出的顺序不影响真实结果的情况下,符合全概率,所以得到 P(D) = 1/4 。实际意义?等等,我们计算一下,两个球都黄和都红的概率是显而易见的1/8和3/8。也就是说,一黄一红的概率应该是1/2。为什么得到了1/4?因为我们忽略了先拿黄球,也就是说真真正正的假设应该包含先拿红或者先拿黄。但是如果不考虑先后,不会影响到上边假设1和2之间的比例。所以计算后验概率是没有问题的。

那么这里的完整建模应该是什么呢?

1,选择要先拿的框;2,拿一个球;3,拿另外一个球。

A:1/2   1/4    1/2    =1/16

3/4    1/2    =3/16

B:1/2   1/2    3/4    =3/16

1/2    1/4    =1/16

这样就是1/2 了。

4.这里看到,后验概率是3/4,也就是说,我各拿一个球,一黄一红和我只拿一个红球。最后这个红球来自A框的概率还是不一样的。

例子3:

monty hall问题。这个问题我这里就不解释了,大家自行查询一下。

很显然为什么有的人会认为换不换选择都一样,应为他们没有未知问题已知化的过程,也就是没有假设。这样导致当他们确实想要进行概率思考的时候,他们没法得到正确的概率,他们之后他们认为的概率。确实,如果让我从中间步骤考虑的话,我确实也会根据直觉,得到错误的概率。

同时,这个monty hall值得注意的一点是:必须要清晰现有事件和条件。

看看我们的前提和假设,无论车在那个门的后边,我们都先选择A门。然后monty 打开的门就是B门,而且这个门后边是没有车的。说实话,这里这样假设我是有点心虚的。不像上一个例子,我能肯定的得知先拿什么样的球是不影响实际情况的。以我的认知能力,在没有思考的情况下,我无法确认作者这样假设会不会对真实概率有没有什么影响。

思索一下,显然,我们的先验分布和选什么开什么还牵扯不到任何关系(这里有一个疑问,是我们所说的,开B门,无车,对先验概率有影响吗?这里不能这样去考虑,很重要的一点就是我们要根据实际情况的发生顺序来假设。一定要注意,是先将车放到门后,然后我们选择A门,然后再打开B门。如果你从打开B门,其后没车反着考虑的话,会使得自己感觉没有问题。但实际已经出错。)

假设1:A门后有车,1/3

假设2:B门后有车,1/3

假设3:C门后有车,1/3

假设1:选择A门,monty选择B门1/2 ,B门后没车100%

假设2:选择A门,monty选择B门1/2,B门后没车 0

假设3:选择A门,monty选择B门100%,B门后没车100%

这样我们看到:

1/6

0

1/3

得到正确的P(D) = 1/2 其含义是,我选择A门&monty打开B门&没车 的概率是 1/2 。这个好像就没什么实际意义了。

后验概率就得出了,果然我们应该换一下我们选择。

[Thinkbayes]贝叶斯思维读书笔记-1-贝叶斯定理的更多相关文章

  1. [Thinkbayes]贝叶斯思维读书笔记-2-火车头问题

    今天,我们继续我们的笔记. 作者在第三章继续举了一个例子.火车头问题(读者在此可能会觉得这个问题没有意义,但相信随着深入阅读,这个问题会被解答). 这个举例恰到好处,能够让我深入理解到底应该如何假设, ...

  2. 统计学习:《贝叶斯思维统计建模的Python学习法》中文PDF+英文PDF+代码

    用数学工具解决实际问题仅有的要求可能就是懂一点概率知识和程序设计.而贝叶斯方法是一种常见的利用概率学知识去解决不确定性问题的数学方法,对于一个计算机专业的人士,应当熟悉其应用在诸如机器翻译,语音识别, ...

  3. R语言︱贝叶斯网络语言实现及与朴素贝叶斯区别(笔记)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 一.贝叶斯网络与朴素贝叶斯的区别 朴素贝叶斯的 ...

  4. 贝叶斯推断 && 概率编程初探

    1. 写在之前的话 0x1:贝叶斯推断的思想 我们从一个例子开始我们本文的讨论.小明是一个编程老手,但是依然坚信bug仍有可能在代码中存在.于是,在实现了一段特别难的算法之后,他开始决定先来一个简单的 ...

  5. 《Machine Learning in Action》—— 白话贝叶斯,“恰瓜群众”应该恰好瓜还是恰坏瓜

    <Machine Learning in Action>-- 白话贝叶斯,"恰瓜群众"应该恰好瓜还是恰坏瓜 概率论,可以说是在机器学习当中扮演了一个非常重要的角色了.T ...

  6. Python深度学习读书笔记-1.什么是深度学习

    人工智能 什么是人工智能.机器学习与深度学习(见图1-1)?这三者之间有什么关系?

  7. Java实现基于朴素贝叶斯的情感词分析

    朴素贝叶斯(Naive Bayesian)是一种基于贝叶斯定理和特征条件独立假设的分类方法,它是基于概率论的一种有监督学习方法,被广泛应用于自然语言处理,并在机器学习领域中占据了非常重要的地位.在之前 ...

  8. <机器学习实战>读书笔记--朴素贝叶斯

    1.朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法, 最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model, ...

  9. 机器学习实战笔记(Python实现)-03-朴素贝叶斯

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

随机推荐

  1. 有return如果是try catch finally运行命令

    背景: 昨天一个朋友出去采访,遇到这样的问题:"C#  catch那里return.finally也弄它运行?" 个人总结实践: 1.无论有木有出现异常.finally块中代码都会 ...

  2. android 删除SD卡或手机的缓存图像和文件夹

    public static final String TEMP_PHOTO_FILE_NAME = "temp_photo.jpg"; private static String ...

  3. 使用rem设计移动端自适应页面三(转载)

    使用rem 然后根据媒体查询实现自适应.跟使用JS来自适应也是同个道理,不过是js更精确一点.使用媒体查询: html { font-size: 62.5% } @media only screen ...

  4. helloWord

    helloWord!!! 在cnblogs安家了

  5. NUnit使用方法

    单元测试是一个成熟项目必不可少的一个环节,NUnit很好的提供了测元测试的一些方法,以下是我得出的一点点经验以及NUnit的一点点实际应用中用到的内容.写的有点儿乱,不懂下面留言.谢谢~ 准备NUni ...

  6. DOM(二) 判断节点包含关系

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  7. String类重写

    #include <iostream> #include<string.h> using namespace std; class String { int length; i ...

  8. D12

    orz!=-=今天莫名爆人品..表示受到了惊吓.. 一下子从rank20-30+,突然间蹦到了rank3..=-=可怕.. 或许是因为T1有看过啊类似的啊..然后T3又被40指点了一下,T2打了个暴力 ...

  9. Repeater 模板中查找子控件

    前言:对于Repeater控件,相信从事NETWeb开发的同仁们再熟悉不过了.因其呈现方式和Literal一样,并不在前端生成任何表单标签元素,所以属于比较轻量级的控件.不过青睐于Repeater的主 ...

  10. 寻找最大的k个数

    这个题目是非常经典的一个题目,解法也有很多,现在就把我已经理解的解法记录下来. 题目描述 有n个无序的数,它们各不相等,怎样选出其中的最大的k个数呢? 题目分析: 解法1: 最容易想到的就是把n个数进 ...