ml-pretraining-paradigmlisted
Install: claude install-skill fieldlu/Machine-learning-skills
# 预训练范式决策树 — 在自训/微调/PEFT/提示四档里选最低成本的够用档
## R — 原文 (Reading)
> (转述)Devlin 等确立预训练-微调范式:先在大规模无标注语料上以掩码语言建模等目标预训练出通用语言表示,再在下游任务上以极小的架构改动(仅加输出层)微调,即可在十一项 NLP 任务上取得当时最优——"一次预训练、处处微调"取代了逐任务从零设计架构。
>
> — Jacob Devlin 等《BERT》(NAACL 2019)
> (转述)Brown 等展示大规模语言模型的上下文学习能力:GPT-3 无需任何梯度更新,仅在输入中给出若干任务示例即可完成多种任务,性能随示例数平滑提升;这把"适配任务"的成本从训练侧转移到了提示构造侧。
>
> — Tom Brown 等《Language Models are Few-Shot Learners》(NeurIPS 2020)
---
## I — 方法论骨架 (Interpretation)
西瓜书的世界观是"每个任务从零训练一个模型",而 BOOK_OVERVIEW 批判节已指出:这一路线在大模型时代被部分绕开。本 skill 补全的就是那条新路线的决策树。
**核心原则:适配任务的手段有四个成本档位,永远先试低成本档,只有低档被证明不够才升档。**
- **档位 0 · 提示工程**: 零训练成本。给指令+少样本示例,利用基础模型的上下文学习能力。
- **档位 1 · 参数高效微调 (LoRA/Adapter/前缀)**: 冻结原权重、只训极小的新增参数。数据千级~数万级即可,显存门槛低,原模型能力基本保留(遗忘风险天然更小)。
- **档位 2 · 全参微调**: 数据十万级以上或领域距离极大时才值得;容量最大但最贵,且最容易把预训练能力冲掉。
- **档位 3 · 从零预训练**: 只有在领域语料与通用分布根本不同(生物序列、私有协议)且数据/算力都到位时才考虑,绝大多数团队终生不需要此档。
两条贯穿性纪律:①**领域距离**决定升档动机——任务离预训练分布越远,越需要可训练参数;②**灾难性遗忘**是微调的固有税:在小学习率、冻结底层、回放旧数据、PEFT 四种缓解中按代价排序选用,且必须留出通用能力回归测试集才能发现遗忘。
---
## A1 — 文献中的经典应用 (Past Application)
*(本批主题超出西瓜书覆盖范围,A1 改引奠基文献的经典案例,均为学界公认的原始实验叙述)*
### 案例 1: BERT 用一次预训练横扫十一个任务
- **问题**: 2018 年之前 NLP 每个任务都要单独设计架构并从零训练,深度模型的红利无法跨任务复用。
- **方法论的使用**: 把问题重构为两段式——先用双向掩码目标在海量无标注文本上学通用表示(这一步与具体任务无关),再对每个下游任务只加一个输出层做微调。
- **结论**: 下游任务需要的多数知识已在预训练中获得,微调只需轻推表示;任务特化的边际成本骤降。
- **结果**: 十一项任务 SOTA;GLUE 基准随之饱和,"预训练+微调"成为 NLP 标准生产流程,也是本 skill 决策树的起点。
### 案例 2: GPT-3 把适配成本移到提示侧
- **问题**: 即便 BERT 式微调,每个任务仍需标注数据+一轮训练工程;能否连训练都省掉?
- **方法论的使用**: 作者系统改变提示中示例数量(zero/one/few-shot)并对照微调基线,发现性能随