Before coding
开始写代码前准备这六项
先把入口、规则和环境问题排除,后面的错误才更容易定位。
- ✓账号与验证
完成 Kaggle 账号登录及比赛需要的验证步骤,确认可以访问目标赛事数据。
- ✓规则确认
阅读资格、团队、数据、代码与提交限制,并记录核对日期。
- ✓任务说明
用自己的话写出输入、预测目标、样本单位、指标方向和提交格式。
- ✓运行环境
决定使用 Kaggle Notebook 还是本地环境,记录 Python 与主要依赖版本。
- ✓文件结构
把原始数据、处理代码、模型、输出和实验日志分开,避免相互覆盖。
- ✓时间预算
为理解数据、复现 Baseline、第一次提交和排错分别预留时间。
Eight-step loop
从零到第一次有效提交
每一步只解决一个明确问题,先求可运行和可检查,再求复杂。
- 01
读 Overview
确认问题背景、预测目标和最终交付,不把样例 Notebook 当作完整题意。
- 02
读 Rules
把会影响数据、协作和提交的条款写进项目说明。
- 03
读 Data
查看文件、字段、键、目标列、样例提交和数据字典。
- 04
做最小探索
检查形状、类型、缺失、重复、目标分布和训练测试差异。
- 05
运行 Baseline
逐段理解预处理、验证、训练和预测,不只点击 Run All。
- 06
生成提交
按 sample_submission 的列名、行数和顺序写出文件。
- 07
上传校验
确认提交成功、分数方向合理,并保存线上结果和本地结果。
- 08
完成一次改动
只改变一个主要变量,重新验证、提交并记录结论。
Learn by running
把官方界面变成自己的操作清单
竞赛页告诉你边界,协作与代码空间帮助你复现方法;真正的入门成果是能独立重跑,而不是收藏更多链接。


Submission anatomy
提交文件最常见的问题,不在模型里
先把输出当作严格的数据接口检查。很多第一次提交失败,来自格式、顺序或缺失值,而不是算法。
列名与顺序
以 sample_submission 为模板,检查预测列名称、ID 列、列顺序和大小写。
行数与主键
确认每个测试样本恰好对应一行,主键没有重复、丢失或因为 merge 改变顺序。
取值范围
检查概率、类别、日期或连续数值是否满足要求,排除 NaN、Inf 和意外字符串。
文件与压缩
按照页面要求使用 CSV、JSON 或压缩包,确认编码、分隔符、文件名和包内目录。
Debug map
遇到错误时,按层定位
一次只改变一个层级,避免环境、数据和模型同时变化。
访问层
数据无法下载或页面不可用时,先检查是否已加入比赛、接受规则并完成所需验证。
环境层
导入失败或版本冲突时,记录依赖和运行时,先复现最小报错。
数据层
形状或字段异常时,打印文件列表、数据类型、主键唯一性和合并前后行数。
提交层
上传失败时,把输出与 sample_submission 做逐列、逐行和缺失值对比。
Beginner FAQ
新手最常问的六个问题
完成一次闭环后,再根据证据决定补什么知识。
一定要先学完机器学习课程吗?
应该用本地环境还是 Kaggle Notebook?
Baseline 分数低是不是没有价值?
第一次提交后该做什么?
为什么线上分数和本地差很多?
哪里领取新手清单?
Complete the loop
把第一次提交做成可复现成果
如果已经卡在数据、环境、Baseline 或提交格式,请带上赛事链接、报错和已完成步骤进行诊断。