# message_classify
对垃圾短信进行分类
代码分为如下几个模块
## 一、RawData
### 该文件夹中存储了原始的短信数据
## 二、Data
### 该文件夹中存储了处理后的数据
## 三、model
### 该文件夹中存储了fit好的pca模型和tfidf模型,目的是对新来的短信数据可以快速进行处理
## 四、data_parse
### 1.load_data.py
#### 该代码的作用是加载原始短信数据,然后将数据拆分为内容和标签,分别存储,便于后续操作
### 2.preprocessing_data.py
#### 该代码中包括对数据进行训练集和测试集的切分、标准化、降维三个功能
### 3.word_vector.py
#### 该代码的作用是将短信数据进行处理,计算tfidf特征
### 4.spam_handler.py
#### 该代码的作用是使用word2vec计算word vector特征
## 五、classifier_sklearn
### 该文件夹下是通过调用sklearn中的包对模型进行训练
### 1.model
#### 该文件夹下存储各个分类器训练出的模型
### 2.Train.py
#### 该代码的作用是对各个分类器模型进行训练,并可以进行交叉验证。对每一个分类器,写了一个class,每一个class中包含train_classifier、cross_validation两个函数
### 3.Predictor.py
#### 该代码是用训练好的分类器对测试数据进行分类,并进行recall、precision、f1等指标的计算
### 4.Evaluator.py
#### 该代码的作用是对分类器进行评估,包括了Train.py里的训练过程,以及用测试集进行测试的过程。
## 六、SVM
### 1.fig
#### 该文件夹中存储对SVM中参数C进行学习的过程中的最好的参数的图
### 2.model
#### 该文件夹中存储了线性SVM和RBF核的SVM的训练模型
### 3.SVM_Trainer.py
#### 该代码的作用是对SVM分类器进行训练,并交叉验证
### 4.SVM_Predictor.py
#### 该代码的作用是用训练好的SVM模型对测试数据进行预测
### 5.SVM_Evaluator.py
#### 该代码的作用是结合上述两个代码的功能,先进行训练然后再进行测试。
### 6.Realtime_Predictor.py
#### 该代码的作用是对一个新来的数据进行预测然后返回分类结果
### 7.predictor.py
#### 该代码的作用是手动的输入一条短信,然后查看分类结果
## 七、SVM_mine
### 1.data
#### 该文件夹中存储了word2vector所需要的切分结果
### 2.model
#### 该文件夹中存储了svm模型和word2vec模型
### 3.svm_interface.py
#### 该代码提供了svm的一些接口
### 4.svm_by_ms.py
#### 该代码是自己实现的SVM的算法
### 5.predictor.py
#### 该代码是对整个自己写的SVM进行测试
## 八、KNN_mine
### 1.knn.py
#### 该代码是自己实现的KNN算法
## 九、MyApplication
### 这是写的Android程序,功能为拦截手机接收的短信然后发送给server进行分类,返回分类结果等。
## 十、server.py
### 该代码是通过socket简单实现了一个server,实现了接收一条短信,调用训练好的模型对其进行分类。
## 十一、client.py
### 该代码是通过python实现的一个简单的客户端,功能是向server发送一条短信,然后接收分类结果
## 代码运行顺序(以classifier_sklearn中的为例)
### 1.先运行load_data.py,将原始的短信数据加载进来并进行content和label的切分,这里可以修改读取的短信的条数
### 2.然后运行word_vector.py,可以计算tfidf特征,并存储为稀疏矩阵的形式
### 3.然后运行Train.py模型训练,这时候可以选择加载tfidf,也可以选择加载原始数据计算word2vec特征,还可以选择使用哪个分类器。
### 4.然后运行Evaluator.py,就可以用训练好的模型对测试集进行测试,也可以不运行第三步中的Train.py,只运行Evaluator.py,这个代码中包含了训练和测试。
### 5.Predictor.py,这个是一个实时短信分类的测试代码,可以自己在代码里修改输入的短信,会得到分类结果
### 6.运行server.py,会开启一个socket连接,然后运行client.py或者安卓APP,即可以实现“云端”的实时分类。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1、该资源内项目代码经过严格调试,下载即用确保可以运行! 2、该资源适合计算机相关专业(如计科、人工智能、大数据、数学、电子信息等)正在做课程设计、期末大作业和毕设项目的学生、或者相关技术学习者作为学习资料参考使用。 3、该资源包括全部源码,需要具备一定基础才能看懂并调试代码。
资源推荐
资源详情
资源评论
收起资源包目录
基于python的对垃圾短信进行分类源码+项目说明.zip (21个子文件)
project_code_0628
SVM
SVM_Predictororigin.pyc 1KB
SVM_Trainer.pyc 9KB
SVM_Evaluator.py 3KB
SVM_Predictor.py 724B
SVM_Trainer.py 8KB
SVM_Predictor.pyc 1KB
Realtime_Predictor.py 1003B
__init__.pyc 128B
SVM_Evaluator.pyc 2KB
model
SVM_linear_estimator.pkl 6.13MB
Terminal_estimator.pkl 348KB
SVM_rbf_estimator.pkl 265KB
Realtime_Predictor.pyc 1KB
fig
param_effect.png 35KB
SVM_mine
svm_interface.py 2KB
data
labeled.txt 113B
cut_result.txt 691KB
model
spam_word2vec_model 1.76MB
svm_model_1.txt 3KB
svm_by_ms.pyc 4KB
README.md 4KB
共 21 条
- 1
资源评论
辣椒种子
- 粉丝: 4242
- 资源: 5837
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 人物检测26-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- 人和箱子检测2-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- 清华大学2022年秋季学期 高等数值分析课程报告
- GEE错误集-Cannot add an object of type <Element> to the map. Might be fixable with an explicit .pdf
- 清华大学2022年秋季学期 高等数值分析课程报告
- 矩阵与线程的对应关系图
- 人体人员检测46-YOLO(v5至v9)、COCO、Darknet、TFRecord数据集合集.rar
- GEMM优化代码实现1
- java实现的堆排序 含代码说明和示例.docx
- 资料阅读器(先下载解压) 5.0.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功