首页 > 其他 > 详细

naive bayes

时间:2015-05-29 00:31:14      阅读:169      评论:0      收藏:0      [点我收藏+]

场景:垃圾邮件预测

目标:
$p(y|w) = \frac{p(w|y)p(y)}{p(w)}$
对于一封邮件来说,它的单词相同,所以$p(w)$可以不关心,计算得到分子就能知道更属于哪一类
所以,关键在于计算$p(y)$以及$p(w_i|y)$,即根据数据估计这些値
 
假设w为(0,1,0,.,1,..,0),即邮件中是否出现词典中单词,n为词典长度
使用最大似然估计:
$log\prod_i^m p(w_i)|y_i)p(y_i) = \sum_i^m [log p(y_i)\sum_j^n log p(w_{ij}|p(y_i))]$
得到
$p(y=1) = \frac{\sum [y_i==1]}{m}$
$p(w_k|y=1) = \frac{\sum [y_i==1\ and\ w_k==1]}{\sum [y_i==1]}$
 
在做预测时,有些单词在以前邮件中内有出现,所以,这些单词的概率
$p(w_k|y=1)=0$,这种情况会使$p(y=1|w)=0$,做拉普赖斯平滑
$p(w_k|y=1) = \frac{1+\sum [y_i==1\ and\ w_k==1]}{c+\sum [y_i==1]}$
c为$w_k$可取値的个数,此处为0,1,所以c=2

naive bayes

原文:http://www.cnblogs.com/porco/p/4537259.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!