==这一章原理很简单,相关的知识到处都是,《数学之美》讲过,《统计学习方法》西瓜书都有详细的概述。但是就是一个简单的概率问题,如果真正遇到实际问题,却也并不是很好解决的。这其中往往是实际操作时往往和理论空想不同,数据的合理安排非常重要。贝叶斯的使用非常广泛,其实就目前而言,现实生活中很多的人工智能方面的处理其实就是用的贝叶斯,特别是对于商业数据的处理分析。比如搜索公司中的网页关联分析,社交软件中根据行为表现进行群体划分,以及新闻中的精准推送等。==
一、贝叶斯公式
- 这个定理解决了现实生活里经常遇到的问题:已知某条件概率,如何得到两个事件交换后的概率,也就是在已知P(A|B)的情况下如何求得P(B|A)。
- 一般而言就是这个概率公式:P(B|A) = P(AB)/P(A) = P(A|B)P(B)/P(A)
二、贝叶斯原理和流程
- 由于这方面的讲述比较多,而且,在我看来,只要知道了上面的公式含义,基本上就知道了使用的方法。这里主要说明一点,原理虽然简单,但是直接操作可能会出现无从下手。所以最好的方式是直接看实例代码,这样更容易懂。之后再做其他的,流程其实是类似的。
三、样例1:文本情感分类
- 目标:其实就是根据文章的评论,来区分评论的倾向,是积极0,还是否消极1;
- 步骤:对于训练集,分别提取出积极消极对应的词汇;对于测试集,计算测试集词汇在训练集在积极和消极中的“比重”,来确定将其分为哪一类。
- 代码:bayes.py
1 |
|
测试代码:test.py
1 | from unit04.bayes import * |
四、样例2:垃圾邮件过滤/邮件分类
filterEmail.py
1 | # 案例2:过滤垃圾邮件 |
五、样例3:根据某个人说话词语来判断所在的城市
getYourCityFromWord.py
1 |
|