小样本学习(few-shot-learning)

什么是小样本学习?

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

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

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

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

小样本分类如何进行?

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

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

迁移学习

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

当可用的标记样本很少时,使用监督学习从头开始训练模型 - 尤其是具有大量参数的模型,例如卷积神经网络 (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” - This link opens in a new tab
匹配网络
孪生网络只能解决二元分类任务,而匹配网络则可以执行多类区分。因此,它被认为是首批专用的小样本学习之一。

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

阅读论文:“Matching Networks for One Shot Learning” - This link opens in a new tab
原型网络
原型网络计算每个类的所有可用样本的平均特征,以便计算每个类的原型。然后,根据给定数据点与每个类别原型的相对接近程度来确定给定数据点的分类。与匹配网络不同,原型网络使用欧几里得距离而不是余弦距离。

已经提出了对这种方法的许多改进:例如,Zhu 和 Koniusz 提议使用 标签传播来改进原型制作过程。3
阅读论文:“Prototypical Networks for Few-shot Learning” - This link opens in a new tab
关系网络
关系网络 (RN) 以与匹配网络和原型网络相同的一般原则运作。RN 也使用嵌入模块来学习计算输入图像和类原型的嵌入,但与预定义用于比较嵌入的距离函数的这两种算法不同,RN 添加了一个关系模块,用于学习最适合当前特定分类问题的非线性距离函数。

阅读论文:“Learning to Compare: Relation Network for Few-Shot Learning” - This link opens in a new tab

参考文章

https://www.ibm.com/cn-zh/topics/few-shot-learning

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,295评论 6 512
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,928评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,682评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,209评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,237评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,965评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,586评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,487评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,016评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,136评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,271评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,948评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,619评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,139评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,252评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,598评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,267评论 2 358

推荐阅读更多精彩内容