Independent labs

读懂以后,必须独立做出来

每个学段用一个真实实验收束。这里没有“照着运行就算完成”:你需要留下代码、报告、测试和错误分析,并按验收标准自查。

S0 · 地基 · 数学与工程 · 6–10 小时

文本分类:跑通第一条机器学习流水线

从原始文本出发,完成数据划分、训练、评估和错误分析,建立可靠实验习惯。

回到本段课程

开始前

  • 完成 Stage 0 第 1–13 课
  • 能运行 Python 与 PyTorch
  • 理解交叉熵和混淆矩阵

环境准备

  1. 建立独立虚拟环境并记录 Python/torch 版本
  2. 选择一个公开情感分类小数据集
  3. 固定随机种子,把数据按 8:1:1 划分

必须完成

  1. 实现 Dataset、DataLoader 和最小文本向量化流程。
  2. 实现 Embedding + masked mean pooling + Linear 分类器。
  3. 训练至少两个配置,记录训练/验证 loss,不用测试集调参。
  4. 在测试集计算准确率、精确率、召回率、F1 和混淆矩阵。
  5. 阅读至少 20 个错误样本,归纳三类主要失败原因。

提交物

  • 可重复运行的 notebook 或 Python 项目
  • 一页实验报告:配置、指标、错误分析、改进计划

验收标准

  • 从空环境按 README 可运行
  • 测试集只在最终评估使用
  • 指标计算与混淆矩阵一致
  • 能解释过拟合是否发生以及证据
完成全部验收后再记录

这是一项自评记录,不代表平台或认证机构审核通过。

S1 · 语言模型与架构 · 8–12 小时

Transformer 解剖:从张量维度到因果注意力

不依赖高级封装,实现并验证注意力、多头拆分、RoPE 和因果掩码。

回到本段课程

开始前

  • 完成 Stage 1
  • 熟悉 NumPy/PyTorch 张量运算
  • 能手算小规模 softmax

环境准备

  1. 只使用 torch 基础张量算子
  2. 准备 B=2、T=5、d=16、heads=4 的固定输入
  3. 为所有中间张量写 shape 注释

必须完成

  1. 实现 scaled dot-product attention,并与手算小例子核对。
  2. 实现多头拆分、转置、拼接和输出投影。
  3. 实现下三角因果掩码,证明未来位置权重为零。
  4. 实现二维 RoPE 旋转,并检查旋转前后向量范数。
  5. 比较 MHA、MQA、GQA 的 KV 形状与缓存规模。

提交物

  • attention.py 与对应测试
  • 一张张量形状流转图和三项失败案例说明

验收标准

  • 注意力权重沿 key 维求和为 1
  • 因果位置不可见
  • RoPE 基本保持范数
  • 多头输出形状恢复为 (B,T,d)
完成全部验收后再记录

这是一项自评记录,不代表平台或认证机构审核通过。

S2 · 预训练工程 · 16–24 小时

Mini-GPT:从零训练一个可生成文本的小模型

把模型结构、预训练目标、优化、资源估算和文本生成串成完整工程。

回到本段课程

开始前

  • 完成 Stage 2
  • 已通过 Stage 1 注意力实验
  • 具备可运行 PyTorch 的 CPU/GPU 环境

环境准备

  1. 选用小型公开语料并记录来源
  2. 把配置集中在一个文件
  3. 先用极小模型做过拟合单 batch 测试

必须完成

  1. 实现 tokenizer/字符词表、定长序列采样与训练验证拆分。
  2. 实现因果 Transformer block 和语言模型头。
  3. 加入 AdamW、warmup/cosine、梯度裁剪和 checkpoint。
  4. 记录训练/验证 loss、困惑度、吞吐和峰值显存。
  5. 实现 temperature、top-k 采样,并比较生成差异。

提交物

  • 完整训练项目与 README
  • 训练曲线、参数量/显存估算、样例生成和复盘报告

验收标准

  • 能在小数据上明显过拟合
  • 参数量估算与程序统计误差可解释
  • checkpoint 可恢复训练
  • 生成过程不读取未来 token
完成全部验收后再记录

这是一项自评记录,不代表平台或认证机构审核通过。

S3 · 适配与对齐 · 12–20 小时

对齐流水线:LoRA 指令微调与偏好优化

用小模型跑通数据构建、LoRA SFT、偏好对和 DPO 对比评估。

回到本段课程

开始前

  • 完成 Stage 3
  • 理解自回归训练与 attention mask
  • 能阅读 Hugging Face 训练日志

环境准备

  1. 选择许可清晰的小模型与小型指令数据
  2. 划分训练与保留评估提示
  3. 记录基座模型原始输出

必须完成

  1. 把指令样本转换为统一模板,并正确屏蔽非回答 token 的 loss。
  2. 使用 LoRA 完成 SFT,报告可训练参数比例与显存。
  3. 为同一提示构建 chosen/rejected 偏好对并做质量检查。
  4. 运行小规模 DPO,比较 SFT-only 与 SFT+DPO。
  5. 从有用性、真实性、安全性三维进行盲评并记录反例。

提交物

  • 数据处理与训练配置
  • 模型对比表、失败样例和风险说明

验收标准

  • 基座权重按预期冻结
  • 训练模板和推理模板一致
  • 评估提示未进入训练
  • 不把少量主观样例包装成普遍结论
完成全部验收后再记录

这是一项自评记录,不代表平台或认证机构审核通过。

S4 · 解码 · 部署 · 应用 · 12–18 小时

证据型 RAG:从检索到带引用回答

构建一个能定位证据、拒绝无依据回答并可量化评估的最小 RAG 系统。

回到本段课程

开始前

  • 完成 Stage 4
  • 理解 embedding、余弦相似度与 masked pooling
  • 能调用本地模型或合规 API

环境准备

  1. 选择 20–50 篇来源明确的文档
  2. 建立 20 个可验证问题及标准证据
  3. 保留无答案问题用于测试拒答

必须完成

  1. 实现文档清洗、切块、元数据保留和向量索引。
  2. 实现查询编码、Top-k 检索与相似度检查。
  3. 设计只依据证据回答并返回引用的提示模板。
  4. 分别评估检索召回率与最终回答正确性。
  5. 比较无 RAG、有 RAG、不同 chunk/top-k 配置的结果。

提交物

  • 可运行的 RAG 应用或命令行程序
  • 评测集、引用结果、参数对比和错误分析

验收标准

  • 每个引用可回到原文
  • 检索失败与生成失败分开统计
  • 无证据时能够拒答
  • 报告至少三个典型失败模式
完成全部验收后再记录

这是一项自评记录,不代表平台或认证机构审核通过。

S5 · 推理 · 评测 · 冲刺 · 14–20 小时

综合能力验收:工具智能体与限时编程

在受控环境完成工具调用智能体,并用限时任务验证认证所需的综合编码能力。

回到本段课程

开始前

  • 完成 Stage 5
  • 完成至少三个前置阶段实验
  • 理解工具 schema、评测与安全边界

环境准备

  1. 准备计算器、检索和一个只读数据工具
  2. 为每个工具定义 JSON schema
  3. 建立正常、缺参、非法参数和工具失败测试

必须完成

  1. 实现工具选择、JSON 解析、schema 校验、执行与结果回填。
  2. 加入最大步数、超时、工具白名单和失败重试边界。
  3. 构建 20 个任务,统计成功率、步骤数和失败类型。
  4. 在 180 分钟内完成注意力、LoRA/RAG、工具调用三类编程题。
  5. 复盘维度、掩码、数据泄漏、校验和边界条件错误。

提交物

  • 带测试的工具智能体
  • 限时编程答案、评分表和个人易错清单

验收标准

  • 非法工具和非法参数不会执行
  • 循环有明确终止条件
  • 任务成功率可复算
  • 限时任务不依赖复制现成答案
完成全部验收后再记录

这是一项自评记录,不代表平台或认证机构审核通过。