机器学习中的朴素贝叶斯
朴素贝叶斯(Naive Bayes)是机器学习中一种基于概率的分类算法,它建立在贝叶斯定理的基础上,并引入了一个“朴素”的假设:特征之间是相互独立的。虽然这个假设在现实世界中很少完全成立,但朴素贝叶斯因其简单、高效和在某些场景下表现良好而被广泛应用,尤其是在文本分类(如垃圾邮件检测)和其他高维数据处理任务中。
核心概念:贝叶斯定理
朴素贝叶斯的基础是贝叶斯定理,公式如下:
-
( P(A|B) ):后验概率,即在给定条件 ( B ) 下事件 ( A ) 发生的概率。
-
( P(B|A) ):似然概率,即在事件 ( A ) 发生时条件 ( B ) 的概率。
-
( P(A) ):先验概率,即事件 ( A ) 的初始概率。
-
( P(B) ):证据,即条件 ( B ) 的总概率。
在分类问题中:
-
( A ) 代表类别(如“正面”或“负面”)。
-
( B ) 代表特征向量(如文本中的单词)。
朴素贝叶斯的目标是计算给定特征 ( B ) 时,样本属于某个类别 ( A ) 的概率,然后选择概率最大的类别作为预测结果。
“朴素”假设
朴素贝叶斯假设所有特征之间是条件独立的。也就是说,给定类别 ( A ) 的情况下,特征
之间互不影响。因此,联合概率可以简化为:
结合贝叶斯定理,分类问题变为:
其中表示“正比于”,因为 ( P(B) ) 对于所有类别是常数,可以在比较时忽略。
朴素贝叶斯的类型
根据特征的数据分布假设,朴素贝叶斯有几种常见变体:
-
高斯朴素贝叶斯(Gaussian Naive Bayes)
假设特征服从正态分布(高斯分布),适用于连续数据。概率密度函数为:其中
和
分别是类别 ( A ) 下特征
的均值和方差。
-
多项式朴素贝叶斯(Multinomial Naive Bayes)
适用于离散数据,尤其是计数数据(如词频)。常用于文本分类,计算特征出现的频率。 -
伯努利朴素贝叶斯(Bernoulli Naive Bayes)
适用于二值特征(0或1),关注特征是否出现,而非出现次数。
工作流程
-
训练阶段:
-
计算每个类别的先验概率 ( P(A) )(如训练集中每个类别的比例)。
- 根据训练数据,估计每个特征在给定类别下的条件概率
。
-
-
预测阶段:
-
对于新样本,计算其属于每个类别的后验概率。
-
选择后验概率最大的类别作为预测结果。
-
优点
-
计算简单,训练和预测速度快。
-
对小规模数据集表现良好。
-
在特征独立性假设较弱时仍可能有效(如文本分类)。
缺点
-
特征独立性假设过于理想化,可能导致模型性能下降。
-
对连续数据的处理(如高斯假设)可能不准确。
-
当训练数据中某些特征-类别组合未出现时,会出现零概率问题(常用平滑技术如拉普拉斯平滑解决)。
应用示例
假设有一个简单的文本分类任务,判断句子是“正面”还是“负面”:
-
数据:
正面:“我喜欢这本书”
负面:“我不喜欢这本书” -
特征:单词(如“我”、“喜欢”)。
-
计算:
训练时计算 ( P(正面) )、( P(负面) ) 和每个单词在类别下的条件概率。
预测时,输入新句子,计算后验概率,选择最大值。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)