朴素贝叶斯问题举例

假设我们现在有垃圾邮件样本、正常邮件样本、测试邮件,其中

垃圾邮件样本
1.点击、更多、信息
2.最新、产品
3. 信息、点击、链接

正常邮件样本
1.开会
2.信息、详见、邮件
3.最新、信息

测试邮件
最新、产品、实惠、点击、链接

下面是计算步骤。

1 条件概率


注: 红色字体为平滑操作

P()=2+18+9=317P(点击|垃圾) = frac{2+color{red}{1}}{8+color{red}{9}} = frac{3}{17}      P()=0+16+9=115P(点击|正常) = frac{0+color{red}{1}}{6+color{red}{9}} = frac{1}{15}

P()=1+18+9=217P(更多|垃圾) = frac{1+color{red}{1}}{8+color{red}{9}} = frac{2}{17}      P()=0+16+9=115P(更多|正常) = frac{0+color{red}{1}}{6+color{red}{9}} = frac{1}{15}

P()=2+18+9=317P(信息|垃圾) = frac{2+color{red}{1}}{8+color{red}{9}} = frac{3}{17}      P()=2+16+9=315P(信息|正常) = frac{2+color{red}{1}}{6+color{red}{9}} = frac{3}{15}

P()=317P(最新|垃圾) = frac{3}{17}           P()=115P(最新|正常) = frac{1}{15}

P()=217P(链接|垃圾) = frac{2}{17}          P()=115P(链接|正常) = frac{1}{15}

P()=117P(开会|垃圾) = frac{1}{17}          P()=215P(开会|正常) = frac{2}{15}

P()=117P(邮件|垃圾) = frac{1}{17}          P()=215P(邮件|正常) = frac{2}{15}

P()=117P(详见|垃圾) = frac{1}{17}          P()=215P(详见|正常) = frac{2}{15}

P()=217P(产品|垃圾) = frac{2}{17}          P()=115P(产品|正常) = frac{1}{15}

2 先验概率


P()=12P(正常) = frac12  P()=12P(垃圾) = frac12

3 计算


P()=P()×P()P()              =P()×P()×P()×P()×P()P()                               =215×115×115×115×12P()P(正常|新邮件) = frac{P(新邮件|正常)×P(正常) }{P(新邮件)}\ \  \              = frac{P(最新|正常)×P(产品|正常)×P(点击|正常)×P(链接|正常)×P(正常)}{P(新邮件)}              \              \      = frac{ frac{2}{15}× frac{1}{15}× frac{1}{15}× frac{1}{15}× frac{1}{2} }{P(新邮件)}
注:

  1. 由于 “实惠” 未出现在样本中,因此第二个等号中缺少 P(实惠|正常)
  2. 实际上第二个等号应为约等号
  3. P(新邮件)为标准化常量,难以计算

同理可计算出 P(垃圾|新邮件),将二者比较即可得出预测结果

原文地址:https://www.cnblogs.com/larkiisready/p/11681636.html