总体思路与步骤:
1、从电子邮箱中收集垃圾和非垃圾邮件训练集。
2、读取全部训练集,删除其中的干扰字符,例如【】*。、,等等,然后分词,删除长度为1的单个字。
3、统计全部训练集中词语的出现次数,截取出现次数最多的前N(可以根据实际情况进行调整)个。
4、根据每个经过第2步预处理后垃圾邮件和非垃圾邮件内容生成特征向量,统计第3步中得到的N个词语分别在本邮件中的出现频率。
5、根据第4步中得到特征向量和已知邮件分类创建并训练朴素贝叶斯模型。
6、读取测试邮件,参考第2步,对邮件文本进行预处理,提取特征向量。
7、使用第5步中训练好的模型,根据第6步提取的特征向量对邮件进行分类。
参考代码:
1、导入需要用到的标准库和扩展库对象。
2、读取全部训练集,删除干扰字符或长度为1的单词。
3、创建贝叶斯模型,使用已有数据进行训练。
4、使用训练好的模型对未知邮件内容进行分类。
说明:分类有误差是正常的,增加训练集和调整模型参数,可以提高准确率。
邮件训练集下载地址:
链接: https://pan.baidu.com/s/1wBRbCATYlqCaYc848ydGAQ
密码: q369