使用Python实现朴素贝叶斯算法实现垃圾邮件分类
一、实验任务内容
1、分解各类先验样本数据中的特征
2、计算各类数据中,各特征的条件概率
3、分解待分类数据中的特征
4、计算各特征的各条件概率的乘积
5、结果中的最大值就是该样本所属的类别
二、实验步骤及结果
1、得到数据集和标签集,返回列表参数,返回单词转换为向量之后的列表。
2、通过训练得到贝叶斯分类模型
3、用朴素贝叶斯文本分类器对两个测试样本进行分类,利用正则函数进行解析
4、导入垃圾邮件和非垃圾邮件各25个并解析;构建训练集和测试集,利用贝叶斯分类模型来预测测试集,输出贝叶斯预测的准确率
5、输出测试10次的平均值
6、输出去重的单词列表和贝叶斯分类模型测试的准确率,测试10次的准确率的平均值。
三、实验心得
朴素贝叶斯确实是很好的预测分类的算法,但是这个算法还是有点过分的依赖训练集了,一些基本的概率计算还是根据训练集的结果得来的(比如40个训练集,10个测试集,它输出的准确率是0.5),预测的结果很大程度上取决于训练集的好坏,一旦训练集数据趋势有误会对结果造成严重的影响。
1