分类算法 -- 朴素贝叶斯


生之本质在于死。因此只有乐于生的人才能真正不感到死之苦恼 - 蒙田随笔


简单说明

贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类,这里讲解最简单的朴素贝叶斯分类算法


贝叶斯定理

贝叶斯定理基于条件概率,P(A|B)表示在事件B已经发生的情况下,事件A发生的概率

条件概率下有一条很有用的求解公式:

这条公式经过简单的两步推导就可以推出贝叶斯定理了


朴素贝叶斯分类流程

  1. 为一个待分类项,而每个a为x的一个特征属性
  2. 有类别集合
  3. 计算
  4. 如果,则

所以现在的目的是求出第三步中的x属于各类别的概率

  1. 找到一个已知分类的待分类项集合,这个集合叫做训练样本集
  2. 统计得到在各类别下各个特征属性的条件概率估计。即
  3. 如果各个特征属性是条件独立的,则根据贝叶斯定理有如下推导:
  4. 因为分母对于所有类别为常数,因为我们只要将分子最大化皆可。又因为各特征属性是条件独立的,所以有:

算法示例

转载:https://blog.csdn.net/xo3ylAF9kGs/article/details/78630937

挑苹果时,一般红润而圆滑的果子都是好苹果,泛青无规则的一般都比较一般,现在根据之前几次买过的苹果,已经验证过了10个苹果,主要根据大小,颜色和形状这三个特征,来区分是好是坏,如下:

编号 大小 颜色 形状 好果
1 青色 非规则
2 红色 非规则
3 红色 圆形
4 青色 圆形
5 青色 非规则
6 红色 圆形
7 青色 非规则
8 红色 非规则
9 青色 圆形
10 红色 圆形

现在有一个苹果各属性为 大,红色,圆形,求这个苹果更大概率属于那种果

这里设结果为c,则P(c)为

P(c=好果)= 4/10

P(c=一般) = 6/10

接下来求解每个属性的类条件概率: P(大小=大 | c=好果) = 3/4

P(颜色=红色 | c=好果) = 4/4

P(形状=圆形 | c=好果) = 3/4

P(大小=大 | c=一般) = 3/6

P(颜色=红色 | c=一般) = 1/6

P(形状=圆形 | c=一般) = 2/6

现在需要求解的是

P1(c=好果|大小=大,颜色=红,形状=红色)

P2(c=一般果|大小=大,颜色=红,形状=红色)

两个概率,由贝叶斯定理可得:

P1 = P(c=好果) * P(大小=大 | c=好果) * P(颜色=红色 | c=好果) * P(形状=圆形 | c=好果) = 0.225

P2 = P(c=一般) * P(大小=大 | c=一般) * P(颜色=红色 | c=一般) * P(形状=圆形 | c=一般) = 0.0167

比较可得,此苹果更可能为好果


评价

优点:对小规模的数据表现很好,适合多分类任务,适合增量式训练 缺点:对输入数据的表达形式很敏感(离散、连续,值极大极小之类的)