generated from Python-2026Spring/assignment-05-final-project-template
电信客户流失预测系统(课程项目)
—— 满足Level 1任务要求,覆盖数据处理、机器学习、LLM+Agent全流程
核心内容:
1. 问题与数据:以Kaggle Telco Customer Churn数据集为基础,定义“客户流失分类”任务,明确标签/输入输出边界,包含数据字段说明与分层抽样切分策略;
2. 传统机器学习:实现LogisticRegression(基线)+RandomForest(强模型)的可复现训练(固定随机种子),完成指标对比(F1/ROC-AUC)与误差分析(错误样本分桶+改进方向);
3. LLM+Agent:构建2个工具(ML流失预测工具+特征解释工具),通过Pydantic定义结构化输出,生成可落地的风险分层干预建议;
4. 工程与演示:提供Streamlit交互界面(预测→分析→建议全流程),支持跨机运行(git clone+uv sync即可部署),代码结构清晰并包含类型提示。
| data | ||
| models | ||
| src | ||
| .gitignore | ||
| .python-version | ||
| app.py | ||
| main.py | ||
| predict.py | ||
| pyproject.toml | ||
| README.md | ||
| requirements.txt | ||
| ROC曲线.png | ||
| run.bat | ||
| save_model.py | ||
| telco_churn_model.pkl | ||
| tests | ||
| uv.lock | ||
| visualization.py | ||
| 混淆矩阵.png | ||
| 特征重要性TOP10.png | ||