聊聊"朴素贝叶斯算法"
今天抽空聊一聊机器学习中非常重要的一种算法——朴素贝叶斯(Naive Bayesian )。
先说说为什么叫做“朴素贝叶斯”,原因很简单:因为它的原理很“朴素”!并且使用了贝叶斯公式。所以,先来看看概率论中的两个非常重要的东西:
OK,这是统计学中非常重要的两个公式,务必理解、熟记!
朴素贝叶斯算法的核心原理是:对于待分类样本,计算在此待分类样本出现的条件下各个类别出现的概率,哪个最大,就认为此待分类样本属于哪个类别。过程如下:
其中第三步是难点和关键所在:
但是,要特别注意的一点是:如果在训练的时候存在P(a|y)=0, 也就是某个类别下某个特征未出现,由于乘积为0,则在预测新样本的时候,会认为该样本属于该类别下的概率为0。此时,可使用 "拉普拉斯校准"的方法解决该问题:本质上是给频率表中的每个计数加上一个较小的数,这样就保证了每一类中每个特征发生概率非零。通常情况下,拉普拉斯估计中加上的数值设定为1,这样就保证每一类特征的组合至少在数据中出现一次。
OK~~~~,终于写完了,加油,冲啊!!!