项目简介
本项目是基于Python语言开发的垃圾邮件分类系统,融合了朴素贝叶斯算法与支持向量机(SVM)算法。其核心目标是实现邮件的自动分类,准确区分垃圾邮件和正常邮件。用户可通过命令行参数灵活配置模型类型、训练集和测试集路径、测试次数以及测试集邮件数量。
项目的主要特性和功能
- 支持通过命令行参数设置模型类型、训练集和测试集路径、测试次数及测试集邮件数量。
- 能够读取邮件文件并进行预处理,包括去除标点符号、停用词,转换为小写以及词性还原等操作。
- 实现了伯努利模型和多项式模型的朴素贝叶斯算法,用于垃圾邮件分类。
- 采用支持向量机算法进行邮件分类。
- 存储测试结果,如正确率、错误率等,并使用pyecharts库对结果进行可视化展示。
- 支持自定义创建测试集,也可从训练集中随机选择作为测试集。
- 具备文件恢复功能,可将测试过的文件重新放回训练集以便再次使用。
安装使用步骤
环境准备
- 安装Python3。
- 安装依赖库:pandas、pyecharts、snapshot_selenium、sklearn和nltk。
下载项目文件
下载项目所有文件至本地。
运行程序
通过命令行运行bayes.py
文件,使用命令行参数设置模型类型、训练集和测试集路径等。示例命令如下:
bash
python bayes.py --model 5 --test_times 70
查看结果
程序将输出分类结果及测试数据,并生成相应的可视化图表,包含正确率、错误邮件数量以及各模型错误邮件的详细情况。
注意事项
- 项目使用了nltk库,需下载一些语言资源(如停用词、词性标注等),可按照项目提供的链接下载并放置到指定的nltk数据路径下。
- 为使用pyecharts生成图表,需要下载chromedriver,用于生成图表所需的快照。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】