[Machine Learning] 朴素贝叶斯(Naive Bayes)

Naive Bayes (朴素贝叶斯)

在机器学习中,朴素贝叶斯分类器是一系列以假设特征之间强(朴素)独立下运用贝叶斯定理为基础的简单概率分类器

贝叶斯公式&全概率公式&先验概率&后验概率

如果对这四个名词不太熟悉,可以参考《[Machine Learning] 贝叶斯公式 & 全概率公式(Bayes Rule & Total Probability Theorem)》一文。

条件独立性假设(Conditions Independent)

如果 P ( X , Y Z ) = P ( X Z ) P ( Y Z ) P(X,Y|Z) = P(X|Z)P(Y|Z) ,或等价地 P ( X Y , Z ) = P ( X Z ) P(X|Y,Z) = P(X|Z) ,则称事件X,Y对于给定事件Z是条件独立地,也就是说,当Z发生时,X发生与否与Y发生与否是无关的。

朴素贝叶斯分类器原理

朴素贝叶斯分类器(Naive Bayes Classifier)是以贝叶斯定理为基础并且假设特征条件之间相互独立的方法,先通过已给定的训练集,以特征词之间独立为前提假设,学习从输入到输出的联合概率分布,再基于学习到的模型,输入 X X 求出使得后验概率最大的输出 Y Y

设有样本数据集 D = d 1 , d 2 , d 3 , . . . , d n D={d_1,d_2,d_3,...,d_n} ,对应样本数据地特征属性集为 X = x 1 , x 2 , x 3 , . . . , x d X={x_1,x_2,x_3,...,x_d} ,类变量 Y = y 1 , y 2 , y 3 , . . . , y m Y={y_1,y_2,y_3,...,y_m} ,即D可以分为 y m y_m 类别。

其中 x 1 , x 2 , x 3 , . . . , x d x_1,x_2,x_3,...,x_d 相互独立且随机,则 Y Y 的先验概率 P p r i o r = P ( Y ) P_{prior}=P(Y) ,Y的后验概率 P p o s t = P ( Y X ) P_post = P(Y|X) ,由贝叶斯公式可得,后验概率可以由先验概率 P p r i o r = P ( Y ) P_{prior}=P(Y) 、证据 P ( x ) P(x) 、类条件概率 P ( X Y ) P(X|Y) 计算出:

P ( Y X ) = P ( Y ) P ( X Y ) P ( X ) P(Y|X)= \frac{P(Y)P(X|Y)}{P(X)}

朴素贝叶斯基于各特征之间相互独立,在给定类别为 y y 的情况下,上式可以进一步表示为下式:

P ( X Y = y ) = Π P ( x i Y = y ) P(X|Y=y) = \Pi P(x_i|Y=y)

由以上两式可以计算出后验概率为:

P p o s t = P ( Y X ) = P ( Y ) Π i = 1 d P ( x i Y ) P ( X ) P_{post} = P(Y|X) = \frac{P(Y)\Pi_{i=1}^{d} P(x_i|Y)}{P(X)}

扫描二维码关注公众号,回复: 9180271 查看本文章

由于 P ( X ) P(X) 的大小是固定不变的,因此在比较后验概率时,只需要比较上式的分子部分即可。因此可以得到一个样本数据属于类别 y i y_i 的朴素贝叶斯计算如:

P ( y i x 1 , x 2 , x 3 , . . . , x d ) = P ( y i ) Π j = 1 d P ( x j y i ) Π j = 1 d P ( x j ) P(y_i|x_1,x_2,x_3,...,x_d) = \frac{P(y_i)\Pi_{j=1}^{d}P(x_j|y_i)}{\Pi_{j=1}^{d}P(x_j)}

优点

朴素贝叶斯算法假设了数据集之间是相互独立的,因此算法的逻辑性十分简单,并且算法较为稳定,当数据呈现不同的特点时,朴素贝叶斯的分类性能不会有太大的差异。换句话说就是朴素贝叶斯算法的健壮性比较好,对于不同类型的数据集不会呈现太大的差异性。

当数据集之间的关系相对比较独立时,朴素贝叶斯分类算法会有较好的效果。

缺点

属性独立性的条件同时也是朴素贝叶斯分类器的不足之处。数据集属性的独立性在很多情况下是很难满足的,因为数据集的属性之间往往都存在着相互关联,如果在分类过程中出现这种问题,会导致分类效果大大降低。

发布了9 篇原创文章 · 获赞 3 · 访问量 4825

猜你喜欢

转载自blog.csdn.net/Oh_MyBug/article/details/104334691
今日推荐