文章目录
朴素贝叶斯算法
朴素贝叶斯算法介绍
概率数学基础复习
- 条件概率 : 事件A在另外一个事件B已经发生条件下的发生概率 P(A|B)
- 联合概率 : 表示多个条件哦同时成立的概率 P(AB) = P(A) * P(B|A) = P(B) * P(A|B)
朴素贝叶斯算法-利用概率值进行分类的一种机器学习算法
贝叶斯公式
-
贝叶斯公式
- P© 表示c出现的概率
- p(W|C) 表示C条件下W出现的概率
- P(W) 表示 W 出现的概率
-
例子: 判断女神对你的喜欢情况
P(C | W) = P(喜欢 | (程序员,超重))
P(W | C) = P((程序员,超重) | 喜欢)
P© = P(喜欢)
P(W) = P(程序员,超重)
- 根据训练样本估计先验概率P©:
- P© = P(喜欢) = 4/7
- 根据条件概率P(W | C)调整先验概率:
- P(W | C) = P((程序员,超重) | 喜欢) = 1/4
- ''此时我们的后验概率
- P(W | C) * P©为:P(W | C) * P© = P((程序员,超重) | 喜欢) * P(喜欢) = 4/7 * 1/4 = 1/7
- 那么该部分数据占所有既为程序员,又超重的人中的比例是多少呢?
- P(W) = P(程序员,超重) = P(程序员) * P(超重 | 程序员) = 3/7 * 2/3 = 2/7
朴素贝叶斯算法
朴素贝叶斯在贝叶斯基础上增加:特征条件独立假设,即:特征之间是互为独立的。
此时,联合概率的计算即可简化为:
P(程序员,超重|喜欢) = P(程序员|喜欢) * P(超重|喜欢)
P(程序员,超重) = P(程序员) * P(超重)
拉普拉斯平滑系数
- 为了避免概率值为 0,我们在分子和分母分别加上一个数值,这就是拉普拉斯平滑系数的作用
- α 是拉普拉斯平滑系数,一般指定为 1
- Ni 是 F1 中符合条件 C 的样本数量
- N 是在条件 C 下所有样本的总数
- m 表示所有独立样本的总数
朴素贝叶斯API
sklearn.naive_bayes.MultinomialNB(alpha = 1.0)
- 朴素贝叶斯分类
- alpha 拉普拉斯平滑系数
案例
- 需求 已知商品评论数据,根据数据进行情感分类(好评、差评)