Bayesian Method 陈子豪 ACM Honored Class July 17th,2014
Origin 所谓的贝叶斯方法源于他生前为解决一个“逆概”问题写的一篇文章,而这篇文章是在他死后才由他的一位朋友发表出来的。在贝叶斯写这篇文章之前,人们已经能够计算“正向概率”,如“假设袋子里面有N个白球,M个黑球,你伸手进去摸一把,摸出黑球的概率是多大”。而一个自然而然的问题是反过来:“如果我们事先并不知道袋子里面黑白球的比例,而是闭着眼睛摸出一个(或好几个)球,观察这些取出来的球的颜色之后,那么我们可以就此对袋子里面的黑白球的比例作出什么样的推测”。这个问题,就是所谓的逆概问题。 接下来我们来回顾一下贝叶斯定理
Bayesian Theorem 这是贝叶斯方法的核心
The theorem is trivial. 概率论只不过是把常识用数学公式表达了出来 ——拉普拉斯 对于早期的概率论,现在我们看来确实是这个样子的
Warm-up 一所学校里面有 60% 的男生,40% 的女生。男生总是穿长裤,女生则一半穿长裤一半穿裙子。有了这些信息之后我们可以容易地计算“随机选取一个学生,他(她)穿长裤的概率和穿裙子的概率是多大”,这个就是前面说的“正向概率”的计算。然而,假设你走在校园中,迎面走来一个穿长裤的学生(很不幸的是你高度近似,你只看得见他(她)穿的是否长裤,而无法确定他(她)的性别),你能够推断出他(她)是男生的概率是多大吗? 很无聊的一个问题,我们跳过,来看点有趣的。
Example 1 拼写纠正
Example 1 Input: thew Hypothesis: the ? thaw ?
Definition Hypothesis: h1, h2 , ... ,hn Data: D h是词库里的单词 P(D)在这里是不重要的
Example 1 Why? 为什么要用贝叶斯公式? 为什么可以用贝叶斯公式
Example 1 Edit Distance(编辑距离): Minimum number of operations required to transform one string into the other. 为什么不从与D编辑距离的大小来判断? 为什么不从键盘的位置来判断?
Example 1 先验概率。最大似然估计是不考虑先验概率,只考虑后面的第二项 最大似然估计
Example 1 Input:Tkp Hypothesis:Tip ? 0.00220% Top ? 0.0120% (data from Google Books Ngram Viewer) 用最大似然的问题在于,即使一个猜测与数据很好的符合,也并不代表这是一个好的猜测,比如有n个几乎在一条直线上的点.....
The girl saw the boy with a telescope. 这个关于自然语言二义性的例子也说明了同样的问题 注意我这里给的例子,其实也说明了贝叶斯方法可以用于解决自然语言二义性的问题上
Example 2 最小二乘法 不知道大家是否想过,在做直线拟合的时候为什么要一偏移量平方的和最为判断拟合直线优劣的根据呢,贝叶斯方法可以提供一个完美的解释
Example 2 最小二乘法 h为那条曲线,D为n个数据点 要找直线 h 使得 最大 对于一个曲线 以及若干个点(x1,y1), (x2, y2), (x3, y3), ... ,(xn, yn) 对于横坐标为xi的所有点,他们的纵坐标的频率关于 呈正态分布 h为那条曲线,D为n个数据点 要找直线 h 使得 最大
Example 2 最小二乘法
Example 3 中文分词 中国航天官员应邀到美国与太空总署官员开会 中国/航天/官员/应邀/到/美国/与/太空/总署/官员/开会 最早的中文分词 从左往右扫,查询词典。 这种方式比较廉价,也能基本解决七八成问题 但是如果遇到了二义性问题吗,这种方法就行不通了
Example 3 中文分词 发展中国家 发展/中国/家 发展/中/国家 最早的中文分词 从左往右扫,查询词典。 这种方式比较廉价,也能基本解决七八成问题 但是如果遇到了二义性问题吗,这种方法就行不通了 发展/中/国家
Example 3 中文分词 令X为字串,Y为词串 即要寻找使得 最大的Y
Example 3 中文分词 对于词串 假设句子中的一个词的出现概率只与其之前k个单词相关(k语言模型) 当词串长度大时就会因为数据稀疏性的原因无法工作,因此,有人提出简化 这里k一般不超过3 假设句子中的一个词的出现概率只与其之前k个单词相关(k语言模型)
Example 4 贝叶斯垃圾邮件过滤器 给定一封由n个单词所组成的邮件D,要判断其是否为垃圾邮件。 记 h- 表示正常邮件,h+ 表示垃圾邮件。 即要求 即要求
Example 4 贝叶斯垃圾邮件过滤器
Example 4 Naive Bayesian Method(朴素贝叶斯方法) 贝叶斯垃圾邮件过滤器 独立假设是一个比较强的假设,但是在许多方面却十分有用 除此之外,关于贝叶斯方法,还有一个十分有名而且很有用的叫做贝叶斯网络。贝叶斯网络大致就是一种对马尔科夫链的一种推广,在这里就不详细介绍了
Reference http://mindhacks.cn/2008/09/21/the-magical-bayesian-method/平凡而又神奇的贝叶斯方法 Wikipedia 数学之美 吴军 人民邮电出版社 2012年6月第一版 https://books.google.com/ngrams
Q & A
Thank you!