机器学习题2:请简述如何用朴素贝叶斯模型实现垃圾邮件的分类。

① 运用一个词典,将邮件中所有可能出现的单词全部列举出来

② 将每封邮件表示成一个向量x,向量的长度就是词典的长度|V|,向量中的每个元素对应词典中的单词,元素取值非0即1,1表示该词在邮件中出现过,0表示没有出现过。

垃圾邮件的分类目标是p(y|x),根据生成模型可以转换为计算先验概率p(y)和各个词汇的条件概率p(x|y),即

其中计算p(y)与p(x|y)具体过程如下:

假设,其中

先验概率:

正常邮件:

垃圾邮件:

④ 计算新样本x是垃圾邮件的概率p(y|x)

⑤将测试结果与实际结果进行比较,并记录下分类正确和分类错误的数目,最后计算得到准确率、精确率等。

例如:如下图有12封邮件,其中五封为垃圾邮件Spam 。其中七封为非垃圾邮件NSpam

  • 如上图所示,将所有邮件中出现'free''money'的标红。
  • 计算先验概率
  • 各个词汇的条件概率p(x|y):

在垃圾邮件spam 邮件中,

出现'free'的概率为 、即

根据条件概率,计算垃圾邮件中包含'free'单词的概率,

在非垃圾邮件Nspam 邮件中,

出现'free'的概率为 、 即 

根据条件概率,计算垃圾邮件中包含free’单词的概率,

  • 判断包含某个单词的邮件是否是垃圾邮件及其概率

包含'free'单词的邮件是垃圾邮件的概率:

包含'free'单词的邮件是非垃圾邮件的概率:

同理

包含'money'单词的邮件是垃圾邮件的概率:

包含'money'单词的邮件是非垃圾邮件的概率:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值