主页 topics 少样本学习 什么是小样本学习?
深入了解我们的 AI 平台 订阅 AI 最新消息
包含云朵、饼图、图形的组合拼贴插图
什么是小样本学习?

小样本学习是一种机器学习框架,在该框架中,AI 模型通过使用极少量的标记示例进行训练来学习作出准确的预测。它通常用于在缺乏合适的训练数据时训练分类任务的模型。

小样本学习 (FSL) 是更一般地被称作 n 样本学习的一个子集;n 样本学习是人工智能的一类,其中还包括单样本学习(每个要学习的类只有一个标记示例)和零样本学习(根本没有标记示例)。虽然单样本学习本质上只是 FSL 的一种具有挑战性的变体,但零样本学习是一个独特的学习问题,需要自己独特的方法。

原则上,FSL 的目标是模仿人类从少量实例中学习的能力。这与传统的监督学习形成鲜明对比;传统的监督学习通常在多轮训练中使用数百(或数千)个带标签的数据点来教导 AI 模型识别数据类别。但功能强大的监督学习在某些现实环境中并不切实际:由于成本高昂、正确注释数据需要特定领域的专业知识,或者(对于独特笔迹、罕见疾病或濒危和新发现物种的情形)现有样本极为稀缺,这使得获得标记的示例通常很困难。

虽然某些特定算法和神经网络架构在 FSL 任务中取得了显著的成功,但小样本学习是由学习问题的性质,而不是由任何特定方法或模型结构定义的。小样本学习方法的范围很广,从在类似任务中使用预先训练好的模型,到使用生成式模型创建新样本,再到使用元学习方法训练模型,使其能够很好地推广到新的分类问题和不同类别的数据中;它不是执行某种特定任务的专门方法。

为什么 AI 治理是扩展企业 AI 的当务之急

了解采用 AI 的障碍,特别是缺乏 AI 治理和风险管理解决方案。

相关内容

注册以获取有关基础模型的指南

小样本分类如何进行?

尽管小样本学习可以利用各种算法或神经网络架构,但大多数方法都是围绕迁移学习元学习(或两者的组合)构建的。

虽然小样本学习也可以应用于回归任务(甚至强化学习),但大多数 FSL 文献都侧重于分类用例。一些 FSL 方法可以与其他解决方案一起使用,以应对标记数据的稀缺性:例如,在半监督学习方法中,该方法将来自大量未标记数据的信息与使用有限标记样本的小样本学习得到的信息相结合。1

迁移学习

基于迁移学习的方法侧重于调整预训练模型,以学习新任务或以前未见过的数据类别。

当可用的标记样本很少时,使用监督学习从头开始训练模型 - 尤其是具有大量参数的模型,例如卷积神经网络 (CNN)计算机视觉中常用)或自然语言处理 (NLP) 中使用的基于转换器的网络 - 通常会导致过度拟合:模型可能在测试数据上表现良好,但使用真实世界的数据时则很差。但是收集足够多的数据以避免过度拟合通常是模型训练的瓶颈。

迁移学习提供了一个实用的解决方案:利用经过训练的模型已经学习的有用特征和表示。一种简单的方法是对分类模型进行微调,通过对少量标注示例的监督学习,为新类别执行相同的任务。更复杂的方法通过设计相关的下游任务(通常是元学习任务)来教授模型新技能,而这些模型是通过自我监督的假托任务预先训练过的:这在 NLP 中越来越普遍,特别是在基础模型的背景下。

更复杂的迁移学习方法通过改变网络架构来调整训练好的神经网络:例如,替换或重新训练执行最终分类的神经网络外层,同时保留进行特征提取的内层。冻结(或以其他方式规范化更改)除最外层之外的所有层的模型权重,可以确保后续更新不会导致已经学到的知识发生“灾难性遗忘”。这样可以在小样本环境中大大加快学习速度。

当模型的初始训练与新任务相关时,迁移学习最为成功。例如,使用某些种的鸟进行训练的模型在仅使用几个标记样本进行微调后,可以很好地推广到没见过的鸟类,因为 CNN 用于卷积的过滤器的学习权重已经过优化,可以捕获与鸟分类相关的特征(如羽毛、喙、翅膀大小等)。但是,使用小样本学习来教授同一模型识别车辆的结果则不太令人满意。

数据级方法

有限标记数据样本问题的另一种解决方案是生成额外的训练样本。当给定类别数据的现实示例极其稀缺时,这尤其有用,例如在处理罕见疾病或外来物种时可能会出现这种情况。

通过生成对抗网络 (GAN) 或变分自编码器 (VAE) 等生成模型生成数据,可能会产生足够多的样本,类似于原始标记样本,以执行传统的监督学习,前提是原始样本具有足够的多样性以避免过度拟合。

数据增强是通过对原始样本应用不同的转换来创建新样本的过程,可以与其他方法结合使用:例如,它可用于创建匹配样本,用于度量元学习,其过程类似于对比自监督学习

元学习

与监督学习或微调不同,元学习采用的是一种更广泛、更间接的方法。在监督学习或微调中,分类器是根据其将用于的确切任务进行训练的,训练集包含模型将用来测试的相同类别。基于迁移学习的方法可以适应预先训练的模型,而元学习方法通常从头开始端到端地训练系统。

根据 Santoro 等人的说法,“元学习”是指使用多个任务在短期和长期水平上训练模型的情形。在每项任务中,模型会快速学习,以作出与该特定任务的有限领域相关的预测。在跨不同任务时,该模型通过捕获模式和任务结构在目标领域之间的变化方式逐渐积累知识。这种两层式过程通常被描述为模型“学会学习”。2

例如,许多著名的元学习方法的目标是在多个训练轮次中训练模型函数,以输出对来自任何类(包括模型尚未看到的类)的数据点之间的相似程度的预测,然后使用从该过程中学到的知识来解决下游任务(例如专门定义的分类问题)。

一些元学习方法在更抽象的层面上运作,通过训练模型使之易于训练。在传统的监督学习中,模型的参数(如权重和偏差)是“学到的”,而模型的参数(例如学习率或参数的初始化方式)是在训练之前配置的,不是学习过程的一部分。元学习可以通过学习理想的起点(参数初始化或其他超参数选择,这些选择可以在极少的训练步骤中很好地推广到不同的数据集)来接近迁移学习的益处。

N-way-K-shot 分类

尽管可以使用各种各样的机器学习模型架构进行小样本学习,但 FSL 训练和评估的结构通常遵循 N-way-K-shot 框架,其中 N 表示类数,K 表示为每个类提供的示例数(或“样本”)。

在 N-way-K-shot 分类法中,模型需要经过多轮训练。每个训练轮次由一个或多个训练任务组成。模型通过测试任务进行评估,其结构与训练任务相同。每个训练任务(和测试任务)包括两种数据集:

  • 支持集包含 N 类中每类的 K 个标记训练样本。该模型使用这些支持示例来学习每个类的广义表示形式。例如,3-way-2-shot 分类任务的数据集包含 3 类图像,每类图像提供 2 个示例。当 K = 1 时,任务是单样本学习。当 K = 0 时,问题是零样本学习,通常需要独特的解决方案
  • 查询集包含 N 类中每类的一个或多个新示例。使用从支持集学习到的表示,该模型可以预测查询集中的每个示例的分类。损失函数衡量模型预测与“正确”预测之间的偏差("损失");每轮训练后,都会对模型参数进行调整和优化,以尽量减少损失。

由于元学习的目标是训练模型以很好地推广到没见过的数据,而不是识别任何特定的数据类别,因此每个训练任务通常包含与任何先前训练任务中使用的数据类别不同的数据类别。

为了测试模型对迄今为止未见过的类进行准确的相似性预测的能力,用于测试的支持集和查询集必须包含模型在训练任务中尚未接触过的全新数据类别。

基于度量的元学习

基于度量的元学习算法的运行原理类似于 K 最近邻:基于度量的方法不是通过直接对类之间的决策边界进行建模来预测分类,而是生成一个连续值(如向量嵌入)来表示给定的数据样本,并通过学习测量某个距离度量(表示此值与要与之比较的不同样本或类的值之间的相似性)的函数进行推断。

基于度量的 FSL 算法
孪生网络

孪生网络是基于度量的算法的相对早期发展,它通过使用对比学习来解决二元分类问题:显示两个样本,孪生网络预测它是正(匹配)对还是负(非匹配)对。该模型的损失函数用于最小化正对的向量嵌入之间的距离,并最大化负对的嵌入之间的距离。三重损失模型非常相似:给定一个“锚”样本和另外两个样本,一个匹配,一个不匹配,模型会预测哪个是正匹配,哪个是负匹配。

在这两种方法中,重要的是训练样本必须相对难以区分,否则,模型就不会被迫学习能产生更有效嵌入的参数。当匹配样本稀缺时,通常使用数据增强。

阅读论文:“Siamese Neural Networks for One-shot Image Recognition”
匹配网络

孪生网络只能解决二元分类任务,而匹配网络则可以执行多类区分。因此,它被认为是首批专用的小样本学习之一。

匹配网络使用适当的神经网络(例如用于图像任务的 CNN 或用于自然语言任务的 LLM)为支持和查询集中的每个样本输出嵌入,并通过测量查询样本的嵌入与可用支持样本的嵌入之间的余弦距离来预测分类。

阅读论文:“Matching Networks for One Shot Learning”
原型网络

原型网络计算每个类的所有可用样本的平均特征,以便计算每个类的原型。然后,根据给定数据点与每个类别原型的相对接近程度来确定给定数据点的分类。与匹配网络不同,原型网络使用欧几里得距离而不是余弦距离。

已经提出了对这种方法的许多改进:例如,Zhu 和 Koniusz 提议使用 标签传播来改进原型制作过程。3

阅读论文:“Prototypical Networks for Few-shot Learning”
关系网络

关系网络 (RN) 以与匹配网络和原型网络相同的一般原则运作。RN 也使用嵌入模块来学习计算输入图像和类原型的嵌入,但与预定义用于比较嵌入的距离函数的这两种算法不同,RN 添加了一个关系模块,用于学习最适合当前特定分类问题的非线性距离函数。

阅读论文:“Learning to Compare: Relation Network for Few-Shot Learning”
基于优化的元学习

传统上,深度学习需要通过反向传播和梯度下降对模型参数进行多次迭代更新,这反过来又依赖于大量带标签的示例来填充训练批次。为了从头开始有效地训练神经网络以进行小样本学习,需要一种只需几个更新步骤即可优化模型权重的方法。

基于优化的 FSL 方法

基于优化的元学习方法,也称为基于梯度的元学习 (GMBL),旨在学习神经网络的初始模型参数或超参数,以便针对相关任务进行有效微调。它们通过优化梯度下降过程来实现,也就是说,通过对优化过程本身进行元优化

模型无关元学习 (MAML)

MAML 是最著名的基于优化的方法之一,并且是从其核心方法派生的许多方法的基础。顾名思义,与模型无关的元学习并不专注于特定的任务或 AI 模型架构:它可以用于任何通过梯度下降学习的模型。

MAML 需要在一组不同的 FSL 训练任务 p(T) 中更新两个不同级别的参数。在每个训练轮次中,从 p(T) 中随机抽取一个新任务 Ti;梯度下降以 α 大小的 K 步长执行,用于在每个训练任务后优化特定于任务的模型参数 (θ’i) 的向量。在多个训练轮次中,通过对这些特定于任务的参数 θ’i 应用梯度下降(以 β 大小的元步长)来优化一组元参数θ)。换句话说,普通梯度下降法计算导数是为了优化特定任务的模型参数,而 MAML 则计算导数的导数(或“二阶导数”)以优化模型的初始参数,以便进行后续的特定于任务的优化。

根据原始论文,其目标是“找到对任务变化敏感的模型参数,这样参数的微小变化就会对从 p(T) 得出的任何任务损失函数产生很大的改进。”这产生了与迁移学习相似的好处,同时免除了对大量标记数据进行预训练的需求。

对 MAML 的拟议改编包括:

  • 一阶 MAML (FOMAML):MAML 依赖二阶导数,计算成本高,需要大量内存。FOMAML 通过一系列假设简化了这一过程,只需使用一阶导数即可实现元优化。

  • Reptile:Reptile 介于 MAML 的复杂和 FOMAML 的简单之间:它使用一阶导数,但在参数更新方式上实施独特的规则。4

  • 优化步长:Meta-SGD5 和 Alpha MAML6 等变体增加了为 αβ 优化步长和方向的能力。类似地,MAML++7 引入了许多修改,以提高稳定性和计算效率。

阅读论文:“Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks”
LTSM 元学习器

元学习方法可以利用基于 RNN 的长短期记忆 (LSTM) 网络来训练元学习者模型,以捕获每项训练任务中的短期知识和各项任务共同的长期知识。然后,这个元学习器被用来训练神经网络分类器。

阅读论文:“Optimization as a Model for Few-Shot Learning”
潜在嵌入优化 (LEO)

潜在嵌入优化不是显式实例化和更新一组唯一的模型元参数 θ,而是以类似于变分自编码器 (VAE) 的方式学习特定于任务的模型参数的生成分布,其目的相同。然后,可以在学习的低维嵌入空间内执行梯度优化。

阅读论文:“Meta-Learning with Latent Embedding Optimization”
小样本学习用例

小样本学习技术具有广泛的应用,因为许多行业和研究领域都可以因为从相对较少的例子中快速有效地学习而获益。

计算机视觉

虽然许多著名的 FSL 算法最初是为图像分类任务开发的(或使用此类任务验证的),但 FSL 也可用于更复杂的计算机视觉问题。

尽管物体检测是一个比图像分类复杂得多的问题(因为物体不仅需要分类还需要准确定位),但通常会以图像分类为先决条件。因此,许多用于分类的思想可以用于小样本物体检测。8  

同样,已经提出了许多模型架构用于小样本语义分割9

机器人

FSL 可以通过小样本分类任务10 和强化学习11 使机器人能够快速适应新环境和新任务。

自然语言处理

FSL 在自然语言处理 (NLP) 方面取得了可喜的成果,特别是通过迁移学习:它是一种直观的方法,可以将使用大量无标签数据预训练的大型语言模型 (LLM) 应用于可能需要特定上下文理解的文本分类和情感分析等特定任务。

医疗保健

FSL 具有快速使模型适应稀少和前所未见的数据类别的潜力,这在医学领域尤其有前途,在此等领域中,某些病况的罕见性或准确注释医学数据(如 MRI 或超声心动图)所需的专业知识可能使大量标记样本的获取极为困难。

相关解决方案
AI 咨询服务

重新构想如何使用 AI:我们的多元化全球团队由超过 20,000 名 AI 专家组成,可以帮助您快速而自信地设计和扩展整个企业的 AI 和自动化,利用我们自己的 IBM watsonx 技术和开放式合作伙伴生态系统,遵守道德,互相信任,在任何云端交付所需 AI 模型。

深入了解 IBM AI 咨询服务
IBM watsonx Assistant

通过会话式 AI,在所有渠道和接触点提供协同一致且智能的客户服务。

探索 IBM watsonx Assistant

IBM watsonx.ai

轻松训练、验证、调整和部署生成式 AI、基础模型和机器学习功能,并在短时间内使用少量数据构建 AI 应用程序。

深入了解 watsonx.ai
小样本学习资源 小样本学习和生成式 AI

进一步了解生成式 AI 的崛起和未来,以及小样本学习在未来的作用和地位。

具有多种语义的小样本学习

基于使用附加语义信息进行小样本学习的最新进展,我们证明通过结合多个更丰富的语义(类别标签、属性和自然语言描述)可以实现进一步改进。

编写基础模型提示的技巧

基础模型的小样本和单样本提示工程技巧概览。

采取后续步骤

使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短的时间内构建 AI 应用程序。

深入了解 watsonx.ai 预约实时演示
脚注

所有链接均为 ibm.com 外部链接

1 “An Embarrassingly Simple Approach to Semi-Supervised Few-Shot Learning”,arXiv,2022 年 9 月 28 日
2 “Meta-Learning with Memory-Augmented Neural Networks”,第 33 届国际机器学习会议论文集,2016 年 6 月 19 日
3 “Transductive Few-shot Learning with Prototype-based Label Propagation by Iterative Graph Refinement”,计算机视觉基金会,2023 年 4 月 23 日
4 “Reptile: A scalable meta-learning algorithm”,OpenAI,2018 年 3 月 7 日
5 “Meta-SGD: Learning to Learn Quickly for Few-Shot Learning”,arXiv,2017 年 9 月 28 日
6 “Alpha MAML: Adaptive Model-Agnostic Meta-Learning”,arXiv,2019 年 5 月 17 日
7 “How to train your MAML”,arXiv,2019 年 3 月 5 日
8 “Few-Shot Object Detection: A Comprehensive Survey”,arXiv,2022 年 9 月 15 日
9 “Leaderboard: Few-Shot Semantic Segmentation on PASCAL-5i (1-Shot)”,PapersWithCode,2024 年 1 月 3 日访问
10 “Few-Shot Continual Active Learning by a Robot”,arXiv,2022 年 10 月 12 日
11 “Few-Shot Preference Learning for Human-in-the-Loop RL”第 6 届机器人学习会议论文集,2023