Few-Shot Learning/zh

    From Marovi AI
    This page is a translated version of the page Few-Shot Learning and the translation is 100% complete.
    Other languages:
    Article
    Topic area Machine Learning
    Prerequisites Supervised Learning, Transfer Learning, Meta-Learning


    概述

    小样本学习是机器学习中的一种范式,模型必须在仅有少量带标签样本(通常在一个到几十个之间)的情况下泛化到新任务或新类别。它与传统的监督学习范式形成对比,后者假定每个类别有数千或数百万个带标签样本;其动机既来自带标签数据的实际稀缺,也来自对模仿人类在有限接触后识别新概念能力的追求。小样本学习处于迁移学习元学习表示学习的交汇处,已成为基础模型大语言模型的核心评估场景,在这一语境下该术语通常特指在推理时通过提示提供的上下文示例。

    小样本任务通常被描述为 N 路 K 样本:学习器必须在每类 K 个带标签样本的条件下区分 N 个类别,其中 K 通常在一到二十之间。这 K 个样本构成支持集,待分类的未标注查询样本构成查询集。目标是在严格的样本预算下取得较高的查询准确率,进展通过专门设计的基准来衡量,这些基准会惩罚那些只是对固定分类体系过拟合的模型。

    问题设定

    形式上,记 $ \mathcal{D}_{\text{train}} $ 为任务的大规模元训练分布,$ \mathcal{D}_{\text{test}} $ 为保留的新任务分布,其类别在训练阶段未曾出现。每个任务 $ \tau $ 采样一个支持集 $ S = \{(x_i, y_i)\}_{i=1}^{N \cdot K} $ 和一个查询集 $ Q = \{(x_j^*, y_j^*)\} $。目标是学习一个过程 $ f_\theta $,使得在给定 $ S $ 时,它能为每个 $ x_j^* $ 预测 $ y_j^* $

    $ {\displaystyle \theta^* = \arg\min_\theta \; \mathbb{E}_{\tau \sim \mathcal{D}_{\text{train}}} \; \mathbb{E}_{(S, Q) \sim \tau} \; \sum_{(x^*, y^*) \in Q} \mathcal{L}\bigl(f_\theta(x^*; S), y^*\bigr).} $

    两种边界情形拥有各自的名称。单样本学习$ K = 1 $ 固定,要求每类只有一个带标签样本。零样本学习$ K = 0 $,转而依赖辅助信息,如类别名称、文本描述或属性向量,来识别新类别。广义小样本学习在基础类别与新类别的混合上进行评估,由此暴露出激进适应通常伴随的灾难性遗忘问题。

    方法族

    小样本方法通常被归为四个族,每个族都对有用的归纳偏置所在之处下了不同的赌注。

    基于度量的方法学习一个嵌入空间,使简单的几何规则足以完成分类。Matching Networks 在查询嵌入与支持嵌入之间计算注意力权重[1] Prototypical Networks[2] 为每个类别计算一个原型 $ c_n = \tfrac{1}{K}\sum_{(x,y) \in S, y=n} f_\phi(x) $,并按平方欧氏距离或余弦距离将查询分配给最近的原型:

    $ {\displaystyle p(y = n \mid x) = \frac{\exp(-d(f_\phi(x), c_n))}{\sum_{n'} \exp(-d(f_\phi(x), c_{n'}))}.} $

    Relation Networks 将固定的距离函数替换为可学习的比较器。这一族方法的共同特点是在测试时不进行任何任务相关的梯度更新。

    基于优化的方法通过少量梯度步对每个任务调整模型参数。模型无关的元学习(MAML[3] 学习一个初始化 $ \theta $,使得在支持集上进行一次或少量梯度下降更新即可得到表现强劲的任务专属参数:

    $ {\displaystyle \theta^* = \arg\min_\theta \sum_\tau \mathcal{L}_\tau\bigl(\theta - \alpha \nabla_\theta \mathcal{L}_\tau(\theta; S)\bigr).} $

    Reptile、一阶 MAML 和隐式 MAML 降低了对内层循环求导的成本;ANIL 等方法则表明,适应过程往往只需调整最末端的分类器。

    基于模型的方法设计的架构在其前向传播中即实现快速适应。带有外部存储的网络将支持样本保存在外部槽式记忆中;条件神经过程则将支持集作为输入,送入一个对排列不变的编码器,由其条件化预测分布。

    上下文学习已成为大语言模型最主要的小样本接口。模型在其提示中看到带标签的示例,并在不更新任何参数的情况下对新输入进行预测。[4] 性能高度依赖示例的顺序、标签分布以及提示格式,近期研究表明,主导信号往往来自输入分布与标签空间,而非输入与标签之间的具体对应关系。

    训练与评估

    由 Matching Networks 推广的回合式训练在每个训练步都采样一个新的 N 路 K 样本任务,使元损失与测试目标一致。在标准图像基准上被证明同样具有竞争力的另一种做法是:用普通分类在整个元训练集合上预训练一个强大的特征提取器,然后在测试时附加一个简单的逻辑回归或最近质心头。该基线可以匹敌甚至超越许多回合式方法,并将该领域的部分研究重心从元目标转向了表示质量。

    标准图像基准包括 miniImageNet、tieredImageNet、CIFAR-FS、FC100 以及 Meta-Dataset,其中后者刻意采样路数、样本数和图像域各异的任务,以暴露方法的脆弱性。NLP 基准包括 CrossFit、FLEX 以及 GLUESuperGLUE 的小样本赛道。所报告的数字通常对数百到数千个采样回合取平均,并附以 95% 的置信区间,因为单个回合之间的方差较大。

    与相关范式的比较

    小样本学习经常与解决不同问题的邻近范式相混淆。

    迁移学习在带有充足标注数据的下游任务上复用预训练模型,而小样本学习显式假定下游标注预算极小。元学习是一个严格的更大范畴,既包括小样本学习,也包括强化学习中的快速适应以及持续学习半监督学习假定有大量未标注样本与少量带标签样本并存;其预算不对称性与小样本设定相反,在小样本设定下未标注数据可能同样稀缺。自监督预训练可与小样本适应相结合,事实上大多数强力的小样本系统都以自监督或大规模监督初始化作为起点。

    局限性

    若干反复出现的失败模式使小样本学习的部署变得复杂。性能对元训练分布与元测试分布之间的差异十分敏感,那些在 miniImageNet 上表现优异的方法在 Meta-Dataset 上常常退化,因为后者存在显式的领域偏移。在支持集极小时,置信度的校准通常较差,选择性预测也并不可靠。大语言模型中的上下文学习对示例的选择与顺序十分敏感,仅仅重排示例就足以使准确率波动数十个百分点。广义小样本评估表明,激进的适应往往会削弱对基础类别的性能,这是一种灾难性遗忘。最后,所谓的强力小样本性能可能只是元训练与元测试类别层级之间存在泄漏的产物,这也促使 Meta-Dataset 等基准强制实施显式的领域划分。

    参见

    参考文献

    1. Vinyals et al., Matching Networks for One Shot Learning, 2016.
    2. Template:Cite arxiv
    3. Template:Cite arxiv
    4. Template:Cite arxiv