元学习概述

元学习(Meta-Learning),又称”学会学习”(Learning to Learn),是机器学习中一个重要的研究范式,旨在让模型能够从少量样本中快速学习新任务1

核心思想

传统机器学习:

给定大量训练数据 → 学习单一任务

元学习:

从多个相关任务中学习 → 快速适应新任务(少量样本)

为什么需要元学习?

  1. 数据效率:人类可以从少量示例中学习新概念,但传统深度学习需要大量数据
  2. 任务适应:快速适应用户个性化需求
  3. 系统设计:自动化机器学习流程(AutoML的核心理念)

问题定义

形式化表述

为任务分布,元学习的目标是:

其中 是由 参数化的模型。

训练-测试范式

┌─────────────────────────────────────────────────────────────────┐
│                        元学习流程                                 │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   元训练阶段 (Meta-Training)                                    │
│   ───────────────────────────                                   │
│   任务1: Support + Query → 损失 → 梯度 → 更新 θ                  │
│   任务2: Support + Query → 损失 → 梯度 → 更新 θ                  │
│   任务3: Support + Query → 损失 → 梯度 → 更新 θ                  │
│   ...                                                           │
│                         ↓                                       │
│                      得到 θ*                                     │
│                         ↓                                       │
│   元测试阶段 (Meta-Testing)                                      │
│   ───────────────────────────                                   │
│   新任务: Few-shot samples → 快速适应 → 预测                      │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

关键术语

术语含义
Task(任务)一个分类/回归问题
Support Set(支持集)用于快速适应的少量样本
Query Set(查询集)用于评估的样本
Episode(情节)一次训练迭代包含多个任务
N-way K-shotN类,每类K个样本

少样本学习

N-way K-shot 问题

  • N-way:测试时需要区分的类别数(通常 N ∈ {5, 20})
  • K-shot:每个类别提供的样本数(K 通常很小,如 1, 5)
5-way 1-shot 示例:
┌─────────────────────────────────────────┐
│          Support Set (5个类,每类1个)     │
├─────────────────────────────────────────┤
│  类别1: 🐱 (1张图片)                      │
│  类别2: 🐕 (1张图片)                      │
│  类别3: 🐦 (1张图片)                      │
│  类别4: 🚗 (1张图片)                      │
│  类别5: ✈️ (1张图片)                      │
├─────────────────────────────────────────┤
│          Query Set (每个类多个样本)       │
│  预测这些图片属于哪个类别                  │
└─────────────────────────────────────────┘

基类 vs 新类

  • 基类(Base Classes):训练时有大量样本的类别
  • 新类(Novel Classes):测试时只有少量样本的新类别

元学习的目标是:从基类学习泛化能力,快速迁移到新类。


三大学习方法

1. 基于度量(Metric-Based)

核心思想:学习一个距离函数,同类样本在嵌入空间中距离近,异类距离远。

Query样本 → 编码器 → 嵌入向量
                          ↓
                    与Support集计算距离
                          ↓
                       分类决策
方法特点
Siamese Network双胞胎网络,学习相似度
Prototypical Networks每类计算原型中心
Matching Networks注意力加权匹配
Relation Network学习关系模块

详见:原型网络

2. 基于模型(Model-Based)

核心思想:设计一个特殊网络结构,能够快速适应新任务。

特点:
- 网络包含记忆组件(LSTM、Memory)
- 允许快速修改参数或隐藏状态
- 典型方法:Memory-Augmented Neural Networks
方法特点
LSTM Meta-Learner用LSTM学习优化器
MANN记忆增强神经网络
Meta-Network快速权重重置

3. 基于优化(Optimization-Based)

核心思想:学习一个好的初始化参数,使得少量梯度步就能适应新任务。

核心公式:
θ' = θ - α ∇_θ L_support(θ)     # 内层:任务适应
θ  = θ - β ∇_θ L_query(θ')      # 外层:元更新
方法特点
MAML模型无关,学习初始参数
ReptileMAML简化版本
L2L学习优化器

详见:MAML详解


与相关概念的区别

元学习 vs 迁移学习

方面迁移学习元学习
目标知识迁移到目标域学会学习新任务
训练数据源域大量,目标域少量多任务,少样本
适应方式微调显式优化或快速参数更新
泛化范围单个目标域任务分布

元学习 vs 多任务学习

方面多任务学习元学习
目标所有任务同时优化快速适应新任务
测试训练过的任务新任务
任务数量固定可扩展

元学习 vs 神经架构搜索(NAS)

两者都是AutoML的核心技术:

方面NAS元学习
搜索对象网络架构学习算法/初始化
目标最优架构最优学习策略

评估基准

少样本图像分类

数据集描述
Mini-ImageNet100类,每类600张,64/16/20分割
Tiered-ImageNet分层结构的ImageNet子集
CUB-200200类鸟类,细粒度分类
FC-100Fewshot-CIFAR100

Few-shot 回归

  • Omniglot:手写字符(1623类,每类20样本)
  • Few-shot回归基准:Sinusoid、MULTI-FASHION

应用场景

1. 计算机视觉

  • 细粒度图像分类
  • 目标检测
  • 图像生成

2. 自然语言处理

  • 文本分类(小样本)
  • 机器翻译
  • 对话系统冷启动

3. 强化学习

  • 元强化学习
  • 机器人控制
  • 游戏AI

4. 推荐系统

  • 冷启动问题
  • 用户兴趣适应

参考文献

相关文章

Footnotes

  1. Hospedales, T., et al. (2022). “Meta-Learning in Neural Networks: A Survey”. IEEE Transactions on Pattern Analysis and Machine Intelligence.