元学习 可视化实验室
用交互式 SVG 呈现 MAML、Reptile、少样本学习、度量学习、双循环优化等元学习核心技术。八个模块,纯原生实现。
MAML 模型不可知元学习
Model-Agnostic Meta-Learning。内循环对每个任务支持集做几步梯度下降得到任务专属参数 θ′ᵢ;外循环在查询集上最小化损失,更新初始参数 θ。调整内循环步数与学习率,观察参数轨迹。
MAML 双循环更新
内循环:θ′ᵢ = θ − α ∇θ L_Tᵢ(θ)(重复 K 步)。外循环:θ ← θ − β ∇θ Σᵢ L_Tᵢ(θ′ᵢ)。MAML 通过二阶导(Hessian)让 θ 能快速适应新任务。下方展示多任务从 θ 出发的内循环适应轨迹与外循环聚合方向。
Reptile 一阶元学习
Reptile 用一阶近似替代 MAML 的二阶导:θ ← θ + ε (φ − θ),其中 φ 为 K 步内循环后的参数。计算更省,效果接近。对比 MAML 与 Reptile 的参数更新方向。
一阶近似 vs 二阶
MAML 外循环需 Hessian-vector 乘积(O(K) 内存)。Reptile 直接用 (φ−θ) 方向,等价于沿内循环路径的平均梯度。Reptile 更新方向 = 各任务内循环终点的平均位移,天然指向多任务最优的邻域。
少样本学习 Few-shot Learning
K-way N-shot 任务构造:从类池中采 K 个类,每类 N 个样本作为支持集、Q 个作为查询集。调整 K、N、Q 观察一个 episode 的结构。
Episode 构造
每个 meta-training episode:随机抽 K 个类,每类采 N 个支持样本与 Q 个查询样本。模型在支持集上构建类表示,在查询集上计算损失并反传。这种 N-way K-shot 协议使训练与测试分布一致,是少样本泛化的关键。
度量学习 Metric Learning
Prototypical Network:每类原型为支持集嵌入均值,查询样本按到原型的距离分类。Relation Network 学习样本对的关系分数。切换度量观察查询点归属。
Prototypical Network
类原型 cₖ = (1/|Sₖ|) Σ f(xᵢ)。查询样本 x 的分类:argminₖ d(f(x), cₖ),常用平方欧氏距离。原型网络无需 Fine-tune,前向即可分类,适合少样本。Relation Net 用可学习的非线性度量 g(x,c) 替代固定距离。
任务分布 Meta-Task Sampling
Meta-Task 由类池抽样构造:先采 N_way 个类,再每类采 N_shot+N_query 个样本。任务难度随类间相似度变化。调整采样参数观察任务分布。
任务难度分布
任务难度可用选中类间最小距离衡量。类越接近,分类越难。元学习通过覆盖不同难度的任务分布,提升对未见任务的鲁棒适应。Curriculum Meta-Learning 按难度递增采样,先易后难。
双循环优化 Bi-level Optimization
上层(外循环)优化元参数 θ,下层(内循环)优化任务参数 θ′。内循环学习率 α 控制适应速度,外循环学习率 β 控制元更新幅度。调整两者观察收敛行为。
Bi-level 目标
min_θ Σᵢ L_Tᵢ(θ′ᵢ(θ)) s.t. θ′ᵢ = θ − α ∇θ L_Tᵢ(θ)。内层是各任务的快速适应,外层是跨任务的元优化。α 过大导致内循环震荡,过小适应不足;β 过大元更新跳过最优,过小收敛慢。
快速适应 Fast Adaptation
元学习的核心收益:少量梯度步即可适应新任务。绘制 Fine-tune 步数 vs 验证精度的曲线,对比 MAML 初始化与随机初始化。观察 MAML 的“靠近最优”优势。
适应速度对比
MAML 的 θ 位于“易适应”区域:一两步梯度即可降到低损失。随机初始化需数十步。Few-shot 场景下步数受限,MAML 优势显著。曲线呈指数衰减:loss(t) ≈ loss∞ + (loss₀−loss∞) e^(−t/τ),MAML 的 τ 更小。
域泛化 Domain Generalization
训练于多个源域,泛化到未见目标域。Robust Meta-Learning 最小化跨域最坏情况损失。调整域偏移强度,观察泛化间隙与鲁棒策略的效果。
跨域迁移
ERM(经验风险最小化)仅最小化源域平均损失,对域偏移敏感。DRO / Robust Meta-Learning 最小化最坏源域损失,提升对目标域的鲁棒性。域不变特征学习(DANN 等)通过对抗训练对齐源域特征分布。