朴素贝叶斯(naive Bayes)法是一种基于概率的机器学习算法。它基于贝叶斯定理,并假设特征之间相互独立(这就是“朴素”的来源)。朴素贝叶斯法实现简单,
学习与预测的效率都很高,是一种常用方法,在许多场景下表现得非常好,如文本分类(垃圾邮件检测)、情感分析等。
朴素贝叶斯法的核心是贝叶斯定理:
P ( Y ∣ X ) = P ( X ∣ Y ) P ( Y ) P ( X ) P(Y|X) = \frac{P(X|Y)P(Y)}{P(X)} P(Y∣X)=P(X)P(X∣Y)P(Y)
P ( Y ∣ X ) P(Y \mid X) P(Y∣X): 后验概率,给定特征 X X X时类的概率。
P ( X ∣ Y ) P(X \mid Y) P(X∣Y): 条件概率,类 Y Y Y包含特征 X X X的概率。
P ( Y ) P(Y) P(Y): 先验概率,类Y的概率。
P ( X ) P(X) P(X): 特征X的概率。
朴素贝叶斯假设所有特征“相互独立”,这使得我们无需考虑特征之间复杂的依赖关系,极大简化了条件概率的计算:
P ( X 1 , X 2 , ⋯ , X n ∣ Y ) = P ( X 1 ∣ Y ) ⋅ P ( X 2 ∣ Y ) ⋯ P ( X n ∣ Y ) = ∏ j = 1 n P ( X j ∣ Y ) \begin{aligned} P(X_1,X_2, \cdots , X_n \mid Y) &= P(X_1 \mid Y) \cdot P(X_2 \mid Y) \cdots P(X_n|Y) \\ &= \prod_{j=1}^{n} P(X_j \mid Y) \end{aligned} P(X1,X2,⋯,Xn∣Y)=P(X1∣Y)⋅P(X2∣Y)⋯P(Xn∣Y)=j=1∏nP(Xj∣Y)
我们通过例题来了解下朴素贝叶斯算法:
编号 大小 颜色 形状 好果 1 小 青色 非规则 否 2 大 红色 非规则 是 3 大 红色 圆形 是 4 大 青色 圆形 否 5 大 青色 非规则 否 6 小 红色 圆形 是 7 大 青色 非规则 否 8 小 红色 非规则 否 9 小 青色 圆形 否 10 大 红色 圆形 是 \begin{matrix} \text{编号} & \text{大小} & \text{颜色} & \text{形状} & \text{好果} \\ 1 & \text{小} & \text{青色} & \text{非规则} & \text{否} \\ 2 & \text{大} & \text{红色} & \text{非规则} & \text{是} \\ 3 & \text{大} & \text{红色} & \text{圆形} & \text{是} \\ 4 & \text{大} & \text{青色} & \text{圆形} & \text{否} \\ 5 & \text{大} & \text{青色} & \text{非规则} & \text{否} \\ 6 & \text{小} & \text{红色} & \text{圆形} & \text{是} \\ 7 & \text{大} & \text{青色} & \text{非规则} & \text{否} \\ 8 & \text{小} & \text{红色} & \text{非规则} & \text{否} \\ 9 & \text{小} & \text{青色} & \text{圆形} & \text{否} \\ 10 & \text{大} & \text{红色} & \text{圆形} & \text{是} \end{matrix} 编号12345678910大小小大大大大小大小小大颜色青色红色红色青色青色红色青色红色青色红色