朴素贝叶斯 Naive Bayes

朴素贝叶斯是基于概率理论的分类算法,其依据贝叶斯公式,可对每个类别出现的概率进行预测分类。其解决思路是:依据类别中各个特征出现的概率,将待分类项归在所有特征出现概率最大的那一类。

朴素贝叶斯特性

使用朴素贝叶斯的前提条件是:待分类的特征同等重要,相互之间没有关联。

优点:

  • 学习和预测效率高,有稳定的分类效率且易于实现;
  • 在数据较少的情况下仍然有效,可处理多分类问题;
  • 只要变量独立这个条件成立,朴素贝叶斯分类器性能最优;
  • 比其他分类方法具有最小的误差率。

缺点:

  • 分类效果不是特别好;
  • 特征独立性假设会使朴素贝叶斯变得简单,但是会牺牲一定的分类准确率;
  • 实际中难以满足独立条件假设;
  • 如果分类变量的类别没有在训练数据集总被观察到,会无法进行预测。

应用场景及实践

朴素贝叶斯通常有两种实现方式:基于伯努利模型、基于多项式模型。

朴素贝叶斯的应用主要有:

  • 实时预测
  • 多类预测
  • 文本分类 / 垃圾邮件过滤 / 情感分析
  • 推荐系统

朴素贝叶斯的思路

朴素贝叶斯法要做的是计算出 x 归属于哪一个类别 y ,过程如下:

  1. {x\text{ }=\text{ }{ \left\{ {a\mathop{{}}\nolimits_{{1}},\text{ }a\mathop{{}}\nolimits_{{2}},\text{ }…,\text{ }a\mathop{{}}\nolimits_{{m}}} \right\} }} 为一个待分类项,每一个 {a}{x} 的特征属性;
  2. 要进行归类的类别是集合 {C\text{ }=\text{ }{ \left\{ {y\mathop{{}}\nolimits_{{1}},\text{ }y\mathop{{}}\nolimits_{{2}},\text{ }…,\text{ }y\mathop{{}}\nolimits_{{n}}} \right\} }}
  3. 算出 {x} 归于 {y\mathop{{}}\nolimits_{{k}}} 的概率: {P{ \left( {y\mathop{{}}\nolimits_{{1}} \left| x\right. } \right) },\text{ }P{ \left( {y\mathop{{}}\nolimits_{{2}} \left| x\right. } \right) },\text{ }…,\text{ }P{ \left( {y\mathop{{}}\nolimits_{{n}} \left| x\right. } \right) }}
  4. 如果 {P{ \left( {y\mathop{{}}\nolimits_{{k}} \left| x\right. } \right) }\text{ }=\text{ }max{ \left\{ {P{ \left( {y\mathop{{}}\nolimits_{{1}} \left| x\right. } \right) },\text{ }P{ \left( {y\mathop{{}}\nolimits_{{2}} \left| x\right. } \right) },\text{ }…,\text{ }P{ \left( {y\mathop{{}}\nolimits_{{n}} \left| x\right. } \right) }} \right\} }} ,那么 {x} 被归类在 {y\mathop{{}}\nolimits_{{k}}} 中。
相关词 :朴素贝叶斯分类器