update readme

This commit is contained in:
sit002 2026-01-09 15:57:51 +08:00
parent bc37bbcdff
commit 2af897692d
2 changed files with 116 additions and 58 deletions

130
README.md
View File

@ -428,7 +428,7 @@ Settings → Collaborators → 添加其他组员(使用 `st+学号` 搜索)
- [ ] `.gitignore` 已创建且包含必要规则 - [ ] `.gitignore` 已创建且包含必要规则
- [ ] `.env.example` 已提交,`.env` 未提交 - [ ] `.env.example` 已提交,`.env` 未提交
- [ ] 没有提交 API Key 或敏感信息 - [ ] 没有提交 API Key 或敏感信息
- [ ] 没有提交大于 50MB 的文件 - [ ] 没有提交大于 10MB 的文件
--- ---
@ -444,7 +444,7 @@ Settings → Collaborators → 添加其他组员(使用 `st+学号` 搜索)
- [ ] ML 模型完成并保存 - [ ] ML 模型完成并保存
- [ ] Agent 工具调用测试通过 - [ ] Agent 工具调用测试通过
- [ ] Streamlit Demo 可运行 - [ ] Streamlit Demo 可运行
- [ ] REPORT.md 初稿完成 - [ ] README.md 初稿完成
--- ---
@ -509,7 +509,7 @@ uv run streamlit run src/streamlit_app.py
## 评分标准(总分 100 ## 评分标准(总分 100
> ⚠️ 所有分析、对比、决策逻辑都必须在 `REPORT.md` 中清晰体现。 > ⚠️ 所有分析、对比、决策逻辑都必须在 `README.md` 中清晰体现。
### A. 问题与数据10 分) ### A. 问题与数据10 分)
@ -678,8 +678,7 @@ DEEPSEEK_API_KEY=your-key-here
ml_course_design/ ml_course_design/
├── pyproject.toml # 项目配置与依赖 ├── pyproject.toml # 项目配置与依赖
├── uv.lock # 锁定的依赖版本 ├── uv.lock # 锁定的依赖版本
├── README.md # 说明文档 ├── README.md # 项目说明与报告
├── REPORT.md # 项目报告
├── .env.example # 环境变量模板 ├── .env.example # 环境变量模板
├── .gitignore # Git 忽略规则 ├── .gitignore # Git 忽略规则
@ -706,28 +705,131 @@ ml_course_design/
## README.md 模板(你的项目) ## README.md 模板(你的项目)
在你的项目 README.md 中包含以下内容: 将以下内容作为你项目 `README.md` 的模板
```markdown ```markdown
## 团队成员 # 项目名称
> **机器学习 (Python) 课程设计**
## 👥 团队成员
| 姓名 | 学号 | 贡献 | | 姓名 | 学号 | 贡献 |
|------|------|------| |------|------|------|
| 张三 | 2024001 | 数据处理、模型训练 | | 张三 | 2024001 | 数据处理、模型训练 |
| 李四 | 2024002 | Agent 开发、Streamlit | | 李四 | 2024002 | Agent 开发、Streamlit |
| 王五 | 2024003 | 报告撰写、测试 | | 王五 | 2024003 | 测试、文档撰写 |
## 项目简介 ## 📝 项目简介
1-2 段描述项目目标、选用的数据集、解决的问题) 1-2 段描述项目目标、选用的数据集、解决的问题)
## 快速开始 ## 🚀 快速开始
(如何安装依赖、运行 demo ```bash
# 克隆仓库
git clone http://hblu.top:3000/MachineLearning2025/GXX-ProjectName.git
cd GXX-ProjectName
## 开发心得 # 安装依赖
uv sync
(遇到的主要困难、解决方案、对 AI 辅助编程的感受) # 配置环境变量
cp .env.example .env
# 编辑 .env 填入 API Key
# 运行 Demo
uv run streamlit run src/streamlit_app.py
```
---
## 1⃣ 问题定义与数据
### 1.1 任务描述
(描述预测任务类型:分类/回归/时序,以及业务目标)
### 1.2 数据来源
| 项目 | 说明 |
|------|------|
| 数据集名称 | XXX |
| 数据链接 | [Kaggle](https://...) |
| 样本量 | X,XXX 条 |
| 特征数 | XX 个 |
### 1.3 数据切分与防泄漏
(如何切分训练/验证/测试集?如何确保没有数据泄漏?)
---
## 2⃣ 机器学习流水线
### 2.1 基线模型
| 模型 | 指标 | 结果 |
|------|------|------|
| Logistic Regression | ROC-AUC | 0.XX |
### 2.2 进阶模型
| 模型 | 指标 | 结果 |
|------|------|------|
| LightGBM | ROC-AUC | 0.XX |
### 2.3 误差分析
(模型在哪些样本上表现不佳?为什么?)
---
## 3⃣ Agent 实现
### 3.1 工具定义
| 工具名 | 功能 | 输入 | 输出 |
|--------|------|------|------|
| `predict_risk` | 调用 ML 模型预测 | CustomerFeatures | float |
| `explain_features` | 解释特征影响 | CustomerFeatures | list[str] |
### 3.2 决策流程
Agent 如何使用工具?如:预测 → 解释 → 建议)
### 3.3 案例展示
**输入**
```
请分析这位客户的流失风险:年龄 35任期 2 个月,月费 89.99
```
**输出**
```json
{
"risk_score": 0.72,
"decision": "高风险,建议主动挥留",
"actions": ["发送优惠短信", "客服回访"],
"rationale": "新客户 + 月付合同是流失高危特征"
}
```
---
## 4⃣ 开发心得
### 4.1 主要困难与解决方案
(遇到的最大困难是什么?如何解决?)
### 4.2 对 AI 辅助编程的感受
(使用 AI 工具的体验如何?哪些场景有帮助?哪些地方需要注意?)
### 4.3 局限与未来改进
(如果有更多时间,还有哪些可以改进的地方?)
``` ```
--- ---
@ -765,7 +867,7 @@ ml_course_design/
- [ ] 使用 Polars 进行数据处理 - [ ] 使用 Polars 进行数据处理
- [ ] 使用 Pydantic 定义特征和输出模型 - [ ] 使用 Pydantic 定义特征和输出模型
- [ ] Agent 至少有 2 个 tool含 1 个 ML 工具) - [ ] Agent 至少有 2 个 tool含 1 个 ML 工具)
- [ ] REPORT.md 说明了数据切分策略 - [ ] README.md 说明了数据切分策略
- [ ] Demo 可以正常运行 - [ ] Demo 可以正常运行
--- ---

View File

@ -1,44 +0,0 @@
# 项目报告:[项目名称]
> **小组成员**:
> - [姓名] (学号)
> - [姓名] (学号)
## 1. 问题定义与数据
### 1.1 任务描述
<!-- 描述预测任务(分类/回归/时序)和业务目标。 -->
### 1.2 数据来源与说明
<!-- 数据集链接。描述字段、样本量以及所做的任何预处理。 -->
### 1.3 数据切分与防泄露
<!-- 即使如何切分训练/验证/测试集?如何确保没有数据泄露(特别是对于时序或多表数据)? -->
## 2. 机器学习流水线
### 2.1 基线模型
<!-- 你的基线模型是什么?(例如:使用默认参数的逻辑回归)。它的表现如何? -->
### 2.2 进阶模型
<!-- 你改进后的模型是什么例如LightGBM, Random Forest。为什么选择它 -->
### 2.3 评估与误差分析
<!-- 展示指标F1, AUC 等)。分析模型在哪些样本上表现不佳及其原因。 -->
## 3. Agent 实现
### 3.1 工具定义
<!-- 列出你实现的工具。 -->
- `tool_name_1`: 描述...
- `tool_name_2`: 描述...
### 3.2 决策逻辑
<!-- Agent 如何使用工具?(例如:预测 -> 解释 -> 建议)。 -->
### 3.3 案例展示
<!-- 展示一个真实的交互示例(输入 -> 系统响应)。 -->
## 4. 反思
### 4.1 挑战与解决方案
<!-- 最困难的部分是什么?你是如何解决的? -->
### 4.2 局限与未来改进
<!-- 如果有更多时间,还有哪些可以改进的地方? -->