跳到主要内容

前面所有章节学的都是「一个模型、一个任务、从零训一次」。 这一章把这三个默认挨个松开:多模型怎么合、无标注怎么用、任务怎么共享、 知识怎么搬、旧的怎么不忘、新任务怎么快上手。 「模型独立」四个字是钥匙——这六招不挑结构,线性模型和神经网络都能用。

模型独立的学习方式:六种复用已有知识的办法

1. 这一章讲什么

两件事: 一条定理(集成收益由错误相关性决定)撑起的集成学习; 以及五种在「单任务从零训练」不成立时的替代方案——半监督、多任务、迁移、 持续、元学习。

它在全书链条里的位置: 第 27 章说预训练学到的表示可以迁移——这一章的 迁移学习把「怎么迁」讲成了一套方法;第 11 章的 MAML 会在元学习一节回来。

「不更新参数的那一种适应」,直接通向第 32、33 章的指令微调(拿指令-回答对再训)与智能体。

需要第 07 章(偏差-方差)和第 27 章;贝叶斯后验在 EWC 一节借力第 34 章之前的直觉即可。

2. 顶层全景

六种方式,各答一个问题:
集成 多个模型一起答,怎么合? → 收益取决于错误相关性
半监督 标注少、无标注多,怎么用? → 伪标签质量与分布匹配
多任务 几个相关任务,怎么共享? → 硬/软/层次/共享-私有四种
迁移 源任务的知识怎么搬到目标? → 先分清领域变了还是任务变了
持续 任务依次来,怎么不忘旧的? → 灾难性遗忘与 EWC
元学习 怎么学一个「学得快」的机制? → MAML 学初始值;ICL 是隐式版

一句话链条: 单打独斗各有短板 → 集成用「人多」压方差(定理给上界)→ 半监督用「无标注」补标注 → 多任务与迁移用「相关任务」补数据 → 持续学习把时间维引进来,遗忘成为真问题 → 元学习把「学」本身当成学习对象 → 大模型的上下文学习(靠提示里的示例、不更新参数)把最后一步做成了隐式版。

3. 集成学习:收益取决于错误相关性

把 M 个模型的输出直接平均(回归取均值、分类当投票),有一个漂亮的定理: 集成模型的期望错误不超过所有模型平均的期望错误;而且—— 各模型错误两两不相关时,集成错误降到平均错误的 1/M; 所有模型错误完全相同时,集成错误就等于平均错误,一分不少1

证明的骨架值得看一眼:把平均后的错误展开,会出现所有两两配对的交叉项 𝔼[εmεn]——这一项就是两个模型错误的协相关性。错误不相关,交叉项为零, 只剩对角项,错误除以 M;错误完全相同,交叉项拉满,什么都不省2。 上界本身由 Jensen 不等式给出3

所以书把条件说得毫不含糊:好的集成「既要求每个基模型本身具有一定的准确率, 也要求不同模型之间具有一定的差异性」——差异不足时,加再多模型收益也有限4

制造差异的两条路:

路线怎么造差异代表
Bagging 类对训练集有放回地随机采样,得到 M 个自助采样集,各训一个模型;随机森林在此基础上再随机选特征Bagging / 随机森林
Boosting 类顺序训练,每个新模型盯着前面模型分错的样本AdaBoost

5

4. 主走查:手算一轮 AdaBoost

AdaBoost 维护一份样本权重:每轮训一个弱分类器,算它的加权错误率 εm, 集成权重 αm = ½·log((1−εm)/εm);然后「分错的样本权重乘 e^{+α}、 分对的乘 e^{−α}」,再归一化——下一轮的弱分类器因此更关注难样本6

数据就是书里的习题:5 个样本 (x₁,+1),(x₂,−1),(x₃,+1),(x₄,−1),(x₅,+1), 初始权重各 1/5;第一轮弱分类器 f₁ 只分错了 x₃。 以下按公式实算。

第一轮加权错误率 ε₁ = 1/5 = 0.2
集成权重 α₁ = ½·ln(0.8/0.2) = ½·ln4 ≈ 0.693
分对的四个样本 w ← 0.2 × e^(−0.693) = 0.2 × 0.5 = 0.1
分对的 x₃ w ← 0.2 × e^(+0.693) = 0.2 × 2 = 0.4
归一化(总和 0.8) 每个分对样本 0.125,x₃ = 0.5

读数:一轮之后,x₃ 一个样本就占了全部权重的一半——第二轮的弱分类器 哪怕只为 x₃ 这一个点工作,账面上也是「对了一半」。这就是「盯着上一个 分错的样本」的算术含义。错误率 0.5 时 α=0(分类器等于瞎猜,集成权重为零); 错误率超过 0.5 时 α 为负——比瞎猜还差的分类器,会被反向使用

书还给了 AdaBoost 的统计学解释:它等价于分步优化一个指数损失 e^{−yF(x)} 的加性模型——每一步在当前集成的基础上,挑出让总损失最小的弱分类器和权重; 对损失做二阶泰勒展开,就能推出上面那两个公式7

5. 半监督:少量标注 + 大量无标注

设定:标注集 N 条、无标注集 M 条,且 M≫N。书先把成功的前提写清楚: 「无标注数据中蕴含的结构信息能够为分类边界或特征表示提供额外约束。 如果无标注数据与目标任务分布相差很大,或者模型给出的伪标签质量较差, 那么无标注数据反而可能带来干扰」8

两条经典路:

  • 自训练:用标注数据训模型 → 预测无标注样本 → 把置信度高的样本连同 它的伪标签放进训练集 → 重新训练,循环。书指出它和第 34 章的 EM 算法 相似,但缺点明摆着:「无法保证每次加入训练集的样本的伪标签是正确的」, 错误的伪标签反而损害模型。模型输出的置信度不等于真实正确率, 所以实际要在验证集上设阈值、做概率校准或人工抽查9
  • 协同训练:数据若有两个相对独立的视角(网页的文字内容和链接结构), 就训两个分类器互相喂伪标签;两视角要满足条件独立和「各自充足」两条假设。 视角高度重合时,效果退化为自训练10

6. 多任务学习:共享什么、怎么共享

几个相关任务一起学,共享的是表示层。书列了四种共享模式11:

模式做法
硬共享低层共用模块提通用特征,高层各任务私有
软共享不设共享模块,各任务互相「借」(复制隐状态或用注意力选取)
层次共享低级任务在低层输出,高级任务在高层输出
共享-私有共享模块管跨任务特征,私有模块管任务特征,最后拼起来

训练目标是所有任务损失的加权和(权重常全取 1),交替训练; 联合训练之后可以再对单个任务微调。为什么有效书给了四条:相当于隐式 数据增强;共享模块防过拟合到单个任务(一种正则化);服务多任务的表示 捕捉更稳定的因素;任务间可以互相「借」特征12

边界叫负迁移:任务相关性弱或共享机制不合理时,「来自其他任务的信息 非但不能帮助当前任务,反而会干扰其学习过程」13

7. 迁移学习:先分清搬的是什么

书把问题拆成两个坐标:领域 𝒟=(输入空间, 输入的分布)和 任务 𝒯=(输出空间, p(y|x))。领域不同 = 输入空间或输入分布变了; 任务不同 = 输出空间或条件分布变了。迁移学习就是源领域/源任务的知识 帮目标领域/目标任务,标准机器学习则是两者都相同14

由此分两支:归纳迁移——源任务和目标任务不同,先在源领域学出泛化强的 表示或模型再迁移(源有大量无标注时,预训练任务可以是自编码、密度估计、 语言建模——第 27 章那条线;源有大量标注时,直接搬 ImageNet 预训练模型); 转导迁移——目标领域无标注但训练时可见,典型子问题是领域适应15

三种偏移的名字要能分清:协变量偏移(输入分布变了, p(y|x) 没变)、 概念偏移(输入没变,p(y|x) 变了)、先验偏移(标签分布变了)16。 领域适应的主打法:学一个领域无关的表示——书给的形式是「源领域损失 + 一个分布差异度量」的加权和;度量可以用 MMD 这类统计距离,也可以用 领域对抗:训一个判别器猜样本来自哪个领域,特征提取器则以 「让判别器猜不出来」为目标——判别器判不出领域,表示就领域无关了17

搬的三种方式:当固定特征用、微调、以及大模型时代的参数高效适配—— Adapter 在每层插小型瓶颈模块、Prefix Tuning 拼接可学前缀、 LoRA(低秩适配——把权重更新拆成 ΔW=BA 两个小矩阵),r 远小于原维度, 只训练 A 和 B18。书还提醒:网络低层学通用特征、高层学任务特征, 所以不必全图搬,可以按相关性选层19

8. 持续学习:学了新的,别忘了旧的

任务按时间依次到来(这是它与多任务的分界),核心风险是 灾难性遗忘:学习新任务时,把对旧任务要紧的参数改掉了20

书详细展开的是弹性权重巩固(EWC),思路是贝叶斯式的:学完任务 A 后, 对 A 重要的参数应该「动起来代价高」。做法上,用 Fisher 信息矩阵给每个参数打「要紧程度」的分 每个参数携带了多少任务 A 的信息——对角线元素越大,该参数的估计越可靠、 越不该动;训练任务 B 时,在 B 的损失后面加上一项惩罚: λ×(Fisher 信息)×(当前参数 − A 学到的参数)²21

直觉一句话:Fisher 信息大的参数是「旧任务的地基」,新任务只能在地基旁边施工。 书还给了另外两条路线的名字:重放(存旧样本或生成重建,混着训)、 参数隔离或结构扩展(新旧任务分参数子空间)22。 另一条更远的路在第 9 节:干脆学一个更好的优化器本身。

9. 元学习:学怎么学

动机书借了没有免费午餐定理:没有通用算法在所有任务上都有效,那能不能 从一组任务里总结出一种更适合新任务的学习策略?这就是元学习 ——「学习如何学习」23。它和少样本学习相关但不等价:少样本关心 「样本很少时怎么考好」,元学习关心「怎么从多个任务中学到快速适应的机制」24

两条典型路:

  • 基于优化器的元学习:用一个小网络(如 LSTM)来预测参数更新量—— 把「梯度进、更新出」这个规则本身学出来,目标是「若干步更新后损失尽可能小」25
  • MAML(模型无关的元学习):学一个初始参数 θ,使得它对任何新任务 只要走一步(或几步)梯度下降就能到好位置。要点在形式:任务适配后的 θ′=θ−α∇L(θ) 被当成 θ 的函数参与外层优化——外层更新的是「走完这一步 之后的表现」,而不是这一步本身。严格算需要二阶梯度,但书说一阶近似通常 也够好;内层步长 α 很小时,MAML 在形式上接近多任务学习26

大模型的收尾:书用一段话把这一章接到了现代——大语言模型的 上下文学习(ICL)不进行任何梯度更新,仅在输入提示里放几个示例就能干新活; 从元学习的角度看,它是隐式的元学习:预训练让模型内化了「如何从少量示例 归纳模式」,推断时的前向传播本身就扮演了「内循环适应」的角色—— 和 MAML 的显式梯度更新构成一组对照27。第 31、32 章会在这条线上接着走。

10. 作者的判断与证据

书里给了定理与证明的: 集成错误上界与相关性条件(定理 11.1)12; AdaBoost 的指数损失解释与 αm 公式67;EWC 的贝叶斯推导与 Fisher 信息21; MAML 的目标函数与一阶近似26

书里给了坦白的: 伪标签可能错误且置信度不可全信9;负迁移的条件13; 元学习方法「若训练任务分布与测试任务分布差异大,泛化会受限」(总结表)28

书里给了对照表的: 六种方式按「额外信息来源/训练组织方式/主要收益与风险」 一张总表28——读者挑方法时先问这三个问题,再对号入座。

11. 边界与局限

集成那 1/M 的上界是「错误不相关」理想下的:真实模型 trained on 同一批数据, 错误相关性不会为零;书给了方向(收益递减),没给定量估计方法。

半监督的阈值、协同训练的视角假设都偏「原则性」:伪标签阈值怎么定、 两个视角要多独立,书只给了检验思路(验证集、人工抽查),没有给配方。

EWC 的 Fisher 信息按对角近似:书明确说为效率取了对角阵; 参数间相关性被丢掉,这是近似代价,书没有展开更精确的方案。

MAML 的二阶梯度只给了「一阶近似可够用」一句:什么任务下够用, 没有给出判据。

12. 可带走的

  1. 集成的收益由错误相关性决定:不相关时错误除以 M,完全相关时一无所获;
  2. Bagging 靠重采样造差异,Boosting 靠「盯着分错的样本」造差异;
  3. AdaBoost:αm=½ln((1−εm)/εm);εm=0.5 的分类器权重为零,超过 0.5 反向使用;
  4. 半监督成功的前提:伪标签质量分布匹配;置信度 ≠ 正确率,阈值要靠验证集;
  5. 多任务四种共享:硬/软/层次/共享-私有;任务不相关时负迁移;
  6. 迁移先问一句:领域变了还是任务变了? 三种偏移(协变量/概念/先验)各有各的药;
  7. LoRA:ΔW=BA 的低秩拆解,只训少量新增参数——第 32 章微调大模型的主力工具;
  8. EWC 用 Fisher 信息矩阵标记(打分)「哪些参数对旧任务要紧」,新任务避着走;
  9. MAML 学的是「走一两步就能适配」的初始值;二阶梯度可用一阶近似;
  10. 上下文学习 = 不更新参数的隐式元学习,前向传播就是内循环—— 这是本章通向大模型的一扇门。

13. 原文地图

主题原书章原文位置
章定位与「模型独立」第11章 模型独立的学习方式text/12-ch11.txt:13(搜「单任务、从零训练、一次性完成训练」)
集成学习与平均策略第11章 模型独立的学习方式text/12-ch11.txt:37(搜「集成学习(Ensemble Learning」)
定理 11.1第11章 模型独立的学习方式text/12-ch11.txt:48(搜「定理 11.1」) · text/12-ch11.txt:52(搜「两两不相关」)
交叉项与 Jensen第11章 模型独立的学习方式text/12-ch11.txt:74(搜「相关性」) · text/12-ch11.txt:83(搜「Jensen 不等式」)
准确率 + 差异性第11章 模型独立的学习方式text/12-ch11.txt:981(搜「一定的准确率」)
Bagging / 随机森林 / Boosting第11章 模型独立的学习方式text/12-ch11.txt:106(搜「Bootstrap Aggregating」) · text/12-ch11.txt:109(搜「随机森林(Random Forest」) · text/12-ch11.txt:112(搜「Boosting 类方法」)
AdaBoost 算法第11章 模型独立的学习方式text/12-ch11.txt:135(搜「AdaBoost(Adaptive Boosting」) · text/12-ch11.txt:153(搜「集成权重」)
指数损失解释第11章 模型独立的学习方式text/12-ch11.txt:169(搜「统计学解释」) · text/12-ch11.txt:234(搜「关于 𝛼𝑚 的导数」)
半监督前提第11章 模型独立的学习方式text/12-ch11.txt:253(搜「结构信息能够为分类边」)
自训练第11章 模型独立的学习方式text/12-ch11.txt:262(搜「自训练是首先使用标注数据」) · text/12-ch11.txt:270(搜「置信度不一定等于真」)
协同训练第11章 模型独立的学习方式text/12-ch11.txt:296(搜「协同训练(Co-Training」) · text/12-ch11.txt:311(搜「条件独立性和互补性」)
四种共享模式第11章 模型独立的学习方式text/12-ch11.txt:379(搜「四种常见的共享模式分别为」)
多任务收益与负迁移第11章 模型独立的学习方式text/12-ch11.txt:423(搜「多任务学习常常可以获得比单任务学习更」) · text/12-ch11.txt:464(搜「负迁移(Negative Transfer」)
领域与任务第11章 模型独立的学习方式text/12-ch11.txt:483(搜「领域(Domain」) · text/12-ch11.txt:494(搜「则认为两个任务不同」)
归纳/转导迁移第11章 模型独立的学习方式text/12-ch11.txt:509(搜「归纳迁移学习(Inductive」) · text/12-ch11.txt:578(搜「转导迁移学习」)
PEFT 与 LoRA第11章 模型独立的学习方式text/12-ch11.txt:553(搜「参数高效适配」) · text/12-ch11.txt:560(搜「Low-Rank Adaptation」)
三种偏移第11章 模型独立的学习方式text/12-ch11.txt:588(搜「三种情况造成」) · text/12-ch11.txt:589(搜「协变量偏移」) · text/12-ch11.txt:592(搜「概念偏移」) · text/12-ch11.txt:596(搜「先验偏移」)
领域对抗第11章 模型独立的学习方式text/12-ch11.txt:660(搜「领域判别器」)
持续学习与遗忘第11章 模型独立的学习方式text/12-ch11.txt:709(搜「持续学习(Continual Learning」) · text/12-ch11.txt:721(搜「灾难性遗忘(Catastrophic」)
EWC 与 Fisher第11章 模型独立的学习方式text/12-ch11.txt:733(搜「弹性权重巩固(Elastic」) · text/12-ch11.txt:760(搜「Fisher 信息矩阵(Fisher Information Matrix」) · text/12-ch11.txt:806(搜「训练任务 𝒯𝐵 时的损失函数」)
三类方法概览第11章 模型独立的学习方式text/12-ch11.txt:821(搜「持续学习方法概览」)
元学习定义第11章 模型独立的学习方式text/12-ch11.txt:835(搜「学习如何学习」)
少样本的关系第11章 模型独立的学习方式text/12-ch11.txt:843(搜「少样本学习(Few-shot Learning」)
基于优化器的元学习第11章 模型独立的学习方式text/12-ch11.txt:868(搜「自动学习一种更新参数的规则」)
MAML第11章 模型独立的学习方式text/12-ch11.txt:914(搜「Model-Agnostic Meta-Learning」) · text/12-ch11.txt:925(搜「关于 𝜃 的函数」) · text/12-ch11.txt:950(搜「一阶近似」)
ICL = 隐式元学习第11章 模型独立的学习方式text/12-ch11.txt:1017(搜「上下文学习(In-Context」) · text/12-ch11.txt:1020(搜「隐式的元学习」)
总结表第11章 模型独立的学习方式text/12-ch11.txt:990(搜「几类模型独立学习方式的比较」)

Footnotes

  1. 出处:「第11章 模型独立的学习方式」第 48 至 56 段(text/12-ch11.txt:48,搜「定理 11.1」; text/12-ch11.txt:52,搜「两两不相关」)。 2

  2. 出处:「第11章 模型独立的学习方式」第 58 至 80 段(text/12-ch11.txt:74,搜「相关性」), 展开式(11.5)-(11.9)。 2

  3. 出处:「第11章 模型独立的学习方式」第 83 至 93 段(text/12-ch11.txt:83,搜「Jensen 不等式」), 式(11.10)。

  4. 出处:「第11章 模型独立的学习方式」第 95 至 98 段(text/12-ch11.txt:981,搜「一定的准确率」)。

  5. 出处:「第11章 模型独立的学习方式」第 103 至 116 段(text/12-ch11.txt:106,搜「Bootstrap Aggregating」; text/12-ch11.txt:109,搜「随机森林(Random Forest」;text/12-ch11.txt:112,搜「Boosting 类方法」)。

  6. 出处:「第11章 模型独立的学习方式」第 139 至 167 段(text/12-ch11.txt:153,搜「集成权重」; text/12-ch11.txt:159,搜「调整样本权重」),算法 11.1;习题 11-13 见第 1106 至 1109 段 (text/12-ch11.txt:1106,搜「给定 5 个训练样本」)。 2

  7. 出处:「第11章 模型独立的学习方式」第 169 至 238 段(text/12-ch11.txt:169,搜「统计学解释」; text/12-ch11.txt:203,搜「二阶泰勒展开」;text/12-ch11.txt:234,搜「关于 𝛼𝑚 的导数」), 式(11.12)-(11.23)。 2

  8. 出处:「第11章 模型独立的学习方式」第 253 至 255 段(text/12-ch11.txt:253,搜「结构信息能够为分类边」)。

  9. 出处:「第11章 模型独立的学习方式」第 262 至 272 段(text/12-ch11.txt:262,搜「自训练是首先使用标注数据」; text/12-ch11.txt:267,搜「无法保证每次加入训练集」;text/12-ch11.txt:270,搜「置信度不一定等于真」)。 2

  10. 出处:「第11章 模型独立的学习方式」第 296 至 318 段(text/12-ch11.txt:302,搜「条件独立性」; text/12-ch11.txt:311,搜「条件独立性和互补性」)。

  11. 出处:「第11章 模型独立的学习方式」第 379 至 394 段(text/12-ch11.txt:379,搜「四种常见的共享模式分别为」)。

  12. 出处:「第11章 模型独立的学习方式」第 423 至 434 段(text/12-ch11.txt:423,搜「多任务学习常常可以获得比单任务学习更」)。

  13. 出处:「第11章 模型独立的学习方式」第 463 至 467 段(text/12-ch11.txt:464,搜「负迁移(Negative Transfer」)。 2

  14. 出处:「第11章 模型独立的学习方式」第 483 至 507 段(text/12-ch11.txt:483,搜「领域(Domain」; text/12-ch11.txt:494,搜「则认为两个任务不同」),式(11.27)-(11.28)。

  15. 出处:「第11章 模型独立的学习方式」第 509 至 519 段(text/12-ch11.txt:509,搜「归纳迁移学习(Inductive」; text/12-ch11.txt:528,搜「两种常见情况」);领域适应见第 584 至 586 段(text/12-ch11.txt:584,搜「领域适应(Domain Adaptation」)。

  16. 出处:「第11章 模型独立的学习方式」第 587 至 598 段(text/12-ch11.txt:589,搜「协变量偏移」; text/12-ch11.txt:592,搜「概念偏移」;text/12-ch11.txt:596,搜「先验偏移」)。

  17. 出处:「第11章 模型独立的学习方式」第 617 至 679 段(text/12-ch11.txt:618,搜「领域无关」; text/12-ch11.txt:657,搜「MMD」;text/12-ch11.txt:660,搜「领域判别器」),式(11.29)-(11.38)。

  18. 出处:「第11章 模型独立的学习方式」第 553 至 563 段(text/12-ch11.txt:553,搜「参数高效适配」; text/12-ch11.txt:560,搜「Low-Rank Adaptation」)[Hu et al., 2022]。

  19. 出处:「第11章 模型独立的学习方式」第 564 至 568 段(text/12-ch11.txt:564,搜「可迁移」)[Yosinski et al., 2014]。

  20. 出处:「第11章 模型独立的学习方式」第 721 至 727 段(text/12-ch11.txt:721,搜「灾难性遗忘(Catastrophic」) [French, 1999; Kirkpatrick et al., 2017]。

  21. 出处:「第11章 模型独立的学习方式」第 733 至 818 段(text/12-ch11.txt:733,搜「弹性权重巩固(Elastic」; text/12-ch11.txt:753,搜「Fisher 信息矩阵来近似」;text/12-ch11.txt:797,搜「对角线的值」; text/12-ch11.txt:806,搜「训练任务 𝒯𝐵 时的损失函数」),式(11.39)-(11.53)。 2

  22. 出处:「第11章 模型独立的学习方式」第 821 至 827 段(text/12-ch11.txt:821,搜「持续学习方法概览」)。

  23. 出处:「第11章 模型独立的学习方式」第 829 至 840 段(text/12-ch11.txt:830,搜「没有免费午餐定理」; text/12-ch11.txt:835,搜「学习如何学习」)。

  24. 出处:「第11章 模型独立的学习方式」第 843 至 850 段(text/12-ch11.txt:843,搜「少样本学习(Few-shot Learning」)。

  25. 出处:「第11章 模型独立的学习方式」第 855 至 908 段(text/12-ch11.txt:868,搜「自动学习一种更新参数的规则」; text/12-ch11.txt:891,搜「若干步更新后」),式(11.55)-(11.58)。

  26. 出处:「第11章 模型独立的学习方式」第 910 至 973 段(text/12-ch11.txt:914,搜「Model-Agnostic Meta-Learning」; text/12-ch11.txt:925,搜「关于 𝜃 的函数」;text/12-ch11.txt:948,搜「真正的参数更新」; text/12-ch11.txt:950,搜「一阶近似」)[Finn et al., 2017],式(11.59)-(11.62)。 2

  27. 出处:「第11章 模型独立的学习方式」第 1017 至 1024 段(text/12-ch11.txt:1017,搜「上下文学习(In-Context」; text/12-ch11.txt:1020,搜「隐式的元学习」;text/12-ch11.txt:1021,搜「前向传播过程本身就扮演了」)。

  28. 出处:「第11章 模型独立的学习方式」第 990 至 1011 段(text/12-ch11.txt:990,搜「几类模型独立学习方式的比较」), 表 11.2。 2