88 lines
2.9 KiB
Markdown
88 lines
2.9 KiB
Markdown
|
|
# 垃圾短信分类系统实施计划
|
|||
|
|
|
|||
|
|
## 项目结构设计
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
├── src/
|
|||
|
|
│ ├── data/
|
|||
|
|
│ │ ├── __init__.py
|
|||
|
|
│ │ ├── preprocess.py # 数据预处理
|
|||
|
|
│ │ └── validation.py # 数据验证
|
|||
|
|
│ ├── models/
|
|||
|
|
│ │ ├── __init__.py
|
|||
|
|
│ │ ├── train.py # 模型训练
|
|||
|
|
│ │ ├── evaluate.py # 模型评估
|
|||
|
|
│ │ └── predict.py # 模型预测
|
|||
|
|
│ ├── agent/
|
|||
|
|
│ │ ├── __init__.py
|
|||
|
|
│ │ ├── tools.py # Agent工具定义
|
|||
|
|
│ │ └── agent.py # Agent实现
|
|||
|
|
│ ├── llm/
|
|||
|
|
│ │ ├── __init__.py
|
|||
|
|
│ │ └── llm_service.py # LLM服务
|
|||
|
|
│ ├── main.py # 主程序入口
|
|||
|
|
│ └── streamlit_app.py # Streamlit可视化应用
|
|||
|
|
├── models/ # 模型保存目录
|
|||
|
|
├── data/ # 数据目录
|
|||
|
|
│ └── spam.csv # 原始数据集
|
|||
|
|
├── .env.example # 环境变量示例
|
|||
|
|
├── .gitignore # Git忽略文件
|
|||
|
|
├── pyproject.toml # 项目配置
|
|||
|
|
└── README.md # 项目说明文档
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 实施步骤
|
|||
|
|
|
|||
|
|
### 1. 项目配置更新
|
|||
|
|
- 更新pyproject.toml,添加所需依赖
|
|||
|
|
- 更新.gitignore,添加必要的忽略规则
|
|||
|
|
- 创建.env.example文件,包含API密钥配置
|
|||
|
|
|
|||
|
|
### 2. 数据处理
|
|||
|
|
- 使用Polars完成数据清洗流水线
|
|||
|
|
- 使用Pandera定义数据Schema
|
|||
|
|
- 将英文数据集翻译成中文(可选,用于LLM解释)
|
|||
|
|
|
|||
|
|
### 3. 机器学习模型
|
|||
|
|
- 实现至少2个模型对比:
|
|||
|
|
- 基线模型:Logistic Regression
|
|||
|
|
- 强模型:LightGBM
|
|||
|
|
- 实现模型训练、评估和保存功能
|
|||
|
|
- 确保模型性能达到要求(Accuracy ≥ 0.85 或 Macro-F1 ≥ 0.80)
|
|||
|
|
|
|||
|
|
### 4. LLM服务
|
|||
|
|
- 集成DeepSeek API
|
|||
|
|
- 实现文本解释和建议生成功能
|
|||
|
|
|
|||
|
|
### 5. Agent实现
|
|||
|
|
- 使用pydantic-ai框架
|
|||
|
|
- 定义至少2个工具:
|
|||
|
|
- ML预测工具:用于分类短信
|
|||
|
|
- 解释工具:用于生成分类结果的解释和建议
|
|||
|
|
- 实现Agent逻辑,串联ML模型和LLM
|
|||
|
|
|
|||
|
|
### 6. 可视化应用
|
|||
|
|
- 使用Streamlit创建交互式界面
|
|||
|
|
- 支持上传短信进行分类
|
|||
|
|
- 显示分类结果和解释
|
|||
|
|
|
|||
|
|
### 7. 文档编写
|
|||
|
|
- 编写README.md,包含项目说明、安装步骤、使用方法等
|
|||
|
|
- 按照课程设计要求的模版样式组织文档
|
|||
|
|
|
|||
|
|
## 关键技术点
|
|||
|
|
|
|||
|
|
- 数据清洗:处理缺失值、特殊字符、编码问题
|
|||
|
|
- 特征工程:文本向量化(TF-IDF)
|
|||
|
|
- 模型优化:超参数调优、交叉验证
|
|||
|
|
- LLM集成:结构化输出、提示工程
|
|||
|
|
- Agent设计:工具调用、结果整合
|
|||
|
|
|
|||
|
|
## 预期成果
|
|||
|
|
|
|||
|
|
- 可复现的机器学习训练流程
|
|||
|
|
- 高性能的垃圾短信分类模型
|
|||
|
|
- 基于LLM的智能解释和建议生成
|
|||
|
|
- 完整的Agent系统,串联ML模型和LLM
|
|||
|
|
- 交互式可视化应用
|
|||
|
|
- 符合课程设计要求的项目结构和文档
|