Skip to content

淘天 Problem 1:MAGIC Gamma 望远镜粒子识别

  • 来源:noai-mis/淘天/Problem 1
  • 类型:Tabular ML
  • 原始资料:lesson.ipynbbaseline.ipynbscoring.pyNOAI竞赛实战课程大纲最终版.pdf
  • 题面完整性:notebook 教学材料完整
  • 解法资料完整性:完整教学 notebook

题面大意

基于 MAGIC Gamma Telescope 数据,用 10 个连续数值特征判断粒子事件是 gamma (g) 还是 hadron/background (h)。提交应输出属于 gamma 的概率/分数,评分使用 ROC-AUC。

数据特点

10 个特征全为连续变量,没有缺失值。任务是标准二分类,特征工程不是重点,重点在模型选择、验证方式和 AUC 指标理解。课程大纲将本题定位为“交叉验证与模型选择”,要求对比单次切分和 5-Fold 交叉验证的波动,并用学习曲线判断欠拟合/过拟合。

考点

核心考点是用可靠验证机制选择模型。ROC-AUC 衡量随机正例得分高于随机负例的概率,因此提交概率/排序分比硬标签更合适。单次 holdout 的结果可能受划分偶然性影响,必须用 K-Fold 或 Stratified K-Fold 估计平均表现和方差。

涉及知识点

  • Decision Tree / RandomForest / GBDT / XGBoost。
  • Gini impurity 和连续特征切分。
  • Stratified K-Fold。
  • ROC-AUC 与概率输出。
  • 学习曲线、欠拟合/过拟合。

解法思路

按课程大纲,推荐从“验证方式”而不是“堆模型”开始。先做一次 train/validation split,训练 Logistic Regression、RandomForest、GradientBoosting,记录 ROC-AUC;再改成 5-Fold Stratified CV,观察每折分数和单次切分分数的差异,用这个实验说明单次切分不可靠。模型输出必须保留 predict_proba 或 decision score,因为 AUC 需要排序分数。

模型比较后,绘制学习曲线:如果训练分和验证分都低,说明模型欠拟合,可换 GBDT/XGBoost 或增加树模型复杂度;如果训练分高而验证分低,说明过拟合,应限制树深、增加叶子最小样本或增强正则。最终解法可将逻辑回归、随机森林、GBDT 的概率做 averaging/soft voting,得到比单模型更稳定的提交分数。

可选/多种解法

单次切分 baseline:快速跑通流程,但只用于演示波动。

5-Fold Stratified CV:课程推荐的模型选择主线。

逻辑回归 + 树模型对比:展示线性模型与非线性模型差异。

Soft voting/averaging:把多个模型概率平均,提升 AUC 排序稳定性。

特殊技巧

使用 StratifiedKFold 保持正负比例。不要提交 0/1 标签,AUC 需要排序分数。学习曲线不是装饰图,而是决策工具:它决定下一步是加模型复杂度、加数据/特征,还是做正则化。

调参优化

MAGIC 这类入门二分类题适合系统比较传统模型参数。建议固定 5-Fold Stratified CV 后,再调 Logistic Regression 的 C、SVM 的 C/gamma、RandomForest 的树数/深度/最小叶样本数、GBDT 的学习率/树深/迭代轮数。若评分是 ROC-AUC,重点调概率排序质量而不是分类阈值;阈值只在额外关心 precision/recall 时才需要扫描。特征缩放对 Logistic/SVM/KNN 影响明显,对树模型影响较小,因此模型比较时要保持预处理管线一致。

注意事项

若使用 XGBoost,要确认环境安装;lesson 中会自动跳过缺失依赖。交叉验证模型选择要看平均值和波动,不要只看一次 holdout。

推广意义

这是表格二分类和树模型入门题,适合建立“指标 -> 验证 -> 模型选择 -> 提交概率”的竞赛基本流程。