目录
📢2024-2025-2-CMP245-Python与大数据分析-课程大作业通知
⚠️ 严正声明
本次大作业旨在培养独立思考和实际操作能力,突破传统闭卷考试的局限,通过更具挑战性的方式激发学习热情。老师精心设计评估体系,并严格防范不正当竞争,确保公平性,使真正努力的同学得到应有认可。
正如古训所言:“千里之行始于足下”,诚信与坚持才是成长与成功的基石。规则不仅约束行为,更保障每位学子公平竞争的机会。望大家以敬畏之心遵守规章,在实践中不断累积力量,迈向更高成就。
请大家务必遵守规则,杜绝任何舞弊行为。接受举报,举报邮箱 6.00@163.com
📷 插图展示





🚨 涉嫌舞弊人员名单
以下为涉嫌舞弊的人员名单(红色字体标注),课程负责人将联合信息处负责人进行追查:
某同学375350157、某同学745706177、某同学_1楼主、SunnyBlossoming可指导、某同学5nyxa8b、某同学5nyv2hg、QQ1129888135
⚠️ 提醒
课程负责人将与信息处负责人一同追索上述涉嫌舞弊人员,并采取一切必要手段,包括可能的“钓鱼执法”。
请注意:你们能上的网站,课程老师也能上去,而且能看到全貌。
期末一旦发现舞弊行为,相关材料将上报教务处,按照作弊处理,存在学位吊销风险。
📌 大作业名称:谁会提出保险索赔?
⏰ 时间安排与提交方式 ⚠️ 测试集6小时限制取消,开放至 2025年6月29日 23:59
时间节点 | 描述 | 提交方式 | 开始时间 | 截止时间 |
---|---|---|---|---|
软件下载开放 | 期末大作业软件下载 | 通过课程网站下载客户端软件 | 2025年6月21日 23:59 | 2025年6月29日 23:59 |
测试集获取 | 考试期间通过软件获取测试数据 | 输入学号登录客户端软件后获取 | 2025年6月21日 23:59 | 2025年6月29日 23:59 |
预测结果提交 | 预测结果(.csv)文件共3次提交机会 | 17578行×1列无表头格式 | 2025年6月21日 23:59 | 2025年6月29日 23:59 |
项目首页提交 | 包含基本信息的首页文件 | PDF/DOCX格式 | 2025年6月21日 23:59 | 2025年7月1日 23:59 |
项目报告提交 | 详细分析报告(5000字) | PDF/DOCX格式 | 2025年6月21日 23:59 | 2025年7月1日 23:59 |
源代码提交 | 完整可运行的项目代码 | .py .ipynb 或 ZIP压缩包格式 | 2025年6月21日 23:59 | 2025年7月1日 23:59 |
⚠️ 注意:该软件仅允许在 一台主机上运行,原因你懂的。
软件下载地址:期末大作业4Windows
- 软件下载地址(M芯片 Mac版):期末大作业4Mac M芯片
- 软件下载地址(Intel芯片 Mac版):期末大作业4Mac Intel芯片
- Mac安装方式:点击查看安装说明
- 作业下载:2025-期末大作业.zip
一、项目背景
在现代保险行业中,精准识别可能提出索赔的客户,对于控制风险、优化保费结构具有重要意义。现实中,车险客户索赔数据极度不平衡,绝大多数客户在保险期间内并不会提出索赔申请,只有极少数会。
本次项目要求同学们以“保险侦探”的身份,利用所学的 Python 数据分析与建模技能,对车险客户数据进行建模预测,判断客户在保单有效期内是否有索赔行为,从而:
- 帮助保险公司合理控制风险;
- 精细化定价和产品设计;
- 降低理赔成本;
- 提供更公平的服务给客户。
二、任务目标与提交内容
✅ 任务要求
你需要使用训练数据构建分类模型,并预测测试集中每位客户的索赔概率(取值在 0 到 1 之间)。此外,还需撰写完整项目报告,提交所有相关成果。
📄 提交内容
内容 | 文件格式 | 要求 |
---|---|---|
预测结果 | .csv |
共 17578 行 × 1 列,每行为客户索赔概率,无表头 |
项目首页 | .doc / .pdf |
包含项目标题、姓名、学号等 |
报告正文 | .doc / .pdf |
内容详实,包括数据处理、建模过程、模型评估等 |
源代码 | .ipynb / .py / .zip |
模型训练、预测代码需完整、可运行 |
⚠️ 严禁抄袭、共享测试集或提交他人结果,一经发现将按59.99 分处理。
三、📤 提交方式说明
为确保作业提交的规范性和完整性,本课程采用专用软件进行作业提交与评分。
📋 提交流程
- 下载并安装客户端软件:从课程网站下载对应操作系统版本
- 登录验证:使用学号登录客户端软件
- 获取测试数据:在指定时间内通过软件获取测试集
- 分别上传4个文件:
- 预测结果文件(.csv格式)
- 项目首页文件(PDF格式)
- 项目报告文件(PDF/DOCX格式)
- 源代码压缩包(ZIP格式)
⚠️ 重要提醒: - 软件仅允许在一台机器上运行,请选择合适的设备 - 所有文件必须通过客户端软件提交,其他方式无效 - 请在截止时间前完成提交,逾期不予受理
四、数据说明及获取方式
📂 数据位置说明
训练集(
train.csv
)- 📍 位置:下载的作业包中的 "6-数据集" 文件夹内
- 行数:41015
- 列数:40
- 包含目标变量
claim_status
(1=索赔,0=未索赔)
测试集(
test.csv
)- 📍 获取方式:在指定时间通过 期末考试.exe 软件获取
- 行数:17579
- 列数:39(无
claim_status
) - ⚠️ 注意:测试集将在考试期间限时开放
五、字段举例
字段名称 | 类型 | 含义 |
---|---|---|
subscription_length |
float | 保单生效时长(年) |
vehicle_age |
float | 车辆使用年限 |
customer_age |
int | 投保人年龄 |
region_density |
int | 地区人口密度 |
segment |
string | 市场细分等级(如 B1、C2) |
airbags |
int | 安全气囊数量 |
ncap_rating |
int | 安全评级(1-5星) |
claim_status |
int | 是否索赔(仅训练集中) |
六、⚠️ 重要提醒
数据获取流程
- 第一步:下载作业包,从"6-数据集"文件夹获取训练数据
- 第二步:使用训练数据进行模型开发和调试
- 第三步:在指定考试时间启动期末考试.exe获取测试数据
- 第四步:使用训练好的模型对测试数据进行预测
- 第五步:在截止时间前提交所有成果
📋 提交检查清单
- [ ] 预测结果文件(.csv格式,17578行×1列,无表头)
- [ ] 项目首页(包含姓名、学号等基本信息)
- [ ] 详细报告(数据处理、建模过程、模型评估)
- [ ] 完整源代码(可运行的模型训练和预测代码)
- [ ] 确认所有文件在截止时间前提交
六、结果文件示例生成代码
import pandas as pd
import numpy as np
# 假设 predictY 是你预测的概率值 DataFrame
predictY = pd.DataFrame(np.random.uniform(0, 1, 17578).reshape(17578, 1))
predictY.to_csv('Results.csv', encoding='utf-8', index=False, header=False)
七、模型评估标准:AUC(Area Under Curve)
- 本项目以 AUC 值 作为主要评估指标;
- AUC 衡量模型在所有可能阈值下的区分能力;
- 特别适用于类别极度不平衡的数据集;
- 不受分类阈值影响,体现模型对正负样本排序的整体性能。
示例代码:
from sklearn import metrics
# y_true 为真实标签,y_pred 为预测概率
fpr, tpr, _ = metrics.roc_curve(y_true, y_pred)
auc_score = metrics.auc(fpr, tpr)
print("AUC:", auc_score)
八、📝 项目报告要求(5000字)
📋 报告基本要求
- 字数要求:不少于5000字(不含代码和图表)
- 格式要求:PDF或DOCX格式,排版清晰美观
- 提交方式:通过客户端软件上传
- 截止时间:2025年7月1日 23:59
🏗️ 建议报告结构
1. 封面页 (1页)
- 项目标题:谁会提出保险索赔?
- 学生姓名、学号、班级
- 提交日期
2. 摘要 (300-500字)
- 项目背景简述
- 采用的主要方法
- 核心发现和结果
- 模型性能指标
3. 引言 (800-1000字)
- 业务背景:保险行业索赔预测的重要性
- 问题定义:明确分类任务目标
- 数据概述:训练集和测试集基本信息
- 评估标准:AUC指标的选择原因
4. 数据探索与分析 (1200-1500字)
- 数据基本信息:维度、数量、字段含义
- 缺失值分析:缺失情况统计和处理策略
- 目标变量分析:类别分布、不平衡程度
- 特征分布分析:数值型和分类型特征的分布
- 相关性分析:特征间相关性和与目标变量的关系
- 异常值检测:识别和处理策略
5. 数据预处理 (800-1000字)
- 缺失值处理:填充方法和理由
- 异常值处理:检测和处理方法
- 特征编码:分类变量的编码策略
- 特征缩放:标准化/归一化方法
- 特征选择:降维或特征筛选方法
- 数据划分:训练集验证策略
6. 模型构建与优化 (1500-2000字)
模型选择:
- 尝试的算法类型(如逻辑回归、随机森林、XGBoost、LightGBM等)
- 各算法的优缺点分析
- 选择理由
模型训练:
- 超参数调优方法(网格搜索、贝叶斯优化等)
- 交叉验证策略
- 防止过拟合的方法
7. 模型评估与结果 (800-1000字)
评估指标:
- AUC值及其解释
- 其他辅助指标(Precision, Recall, F1-score等)
模型比较:
- 不同模型的性能对比
- 性能提升的原因分析
特征重要性:
- 关键特征识别
- 业务解释意义
8. 结果分析与业务洞察 (600-800字)
- 预测结果分析:测试集预测结果的分布特征
- 业务价值:模型在实际业务中的应用价值
- 风险因子识别:影响索赔概率的关键因素
- 改进建议:对保险公司的具体建议
9. 总结与展望 (400-500字)
- 项目总结:完成的工作和取得的成果
- 技术收获:学到的知识和技能
- 局限性分析:当前方法的不足
- 未来改进:可能的优化方向
10. 参考文献
- 相关学术论文、技术文档
- 使用的开源库和工具
📊 报告撰写建议
内容要求
- 数据可视化:使用图表展示数据分析结果
- 代码片段:关键算法的核心代码(非完整代码)
- 结果展示:模型性能图表和对比分析
- 逻辑清晰:思路连贯,论证充分
技术深度
- 方法论述:详细说明采用的技术方法和理论依据
- 参数选择:解释超参数选择的原因
- 实验设计:说明实验的设计思路和验证方法
- 结果解释:从技术和业务角度解释结果
创新亮点
- 特征工程:创新的特征构造方法
- 模型改进:对传统方法的改进
- 业务理解:深入的业务分析和见解
- 技术应用:新技术或新方法的应用
✅ 评分标准
评分维度 | 权重 | 具体要求 |
---|---|---|
内容完整性 | 25% | 结构完整,各部分内容充实 |
技术深度 | 30% | 方法先进,分析深入 |
实验设计 | 20% | 实验合理,验证充分 |
结果分析 | 15% | 结果可信,解释合理 |
表达质量 | 10% | 语言流畅,逻辑清晰 |
九、参考资料
- Scikit-learn 官方文档:https://scikit-learn.org
- AUC 详解:https://baike.baidu.com/item/AUC/19282953