Paper Diary-2023-A Comprehensive Survey of Few-shot Learning@Evolution, Applications, Challenges, and Opportunities (2023)

A Comprehensive Survey of Few-shot Learning: Evolution, Applications, Challenges, and Opportunities

这周主要是看的有关 Few-shot learning 和 Meta-Learning 有关的文章,对《A Comprehensive Survey of Few-shot Learning: Evolution, Applications, Challenges, and Opportunities》做一下总结。

Few-shot Learning

把包括大量样本的类别称作 seen classes,记作 \(\mathcal{Y}_s\),把仅包括少量 few-shot 样本的类别称作 unseen classes,记作 \(\mathcal{Y}_u\)

给定一个训练集 \(\mathcal{D}_{tr}=\{(x,y)|x \in \mathcal{X}_s, y \in \mathcal{Y}_s \}\),其中 \(\mathcal{X}_s\)\(\mathcal{Y}_s\) 分别是训练样本的输入和类别,一个 few-shot 样本集 \(\mathcal{D}_{few}=\{(x,y)|x \in \mathcal{X}_{few}, y \in \mathcal{Y}_u \}\), 其中 \(\mathcal{Y}_u \bigcap \mathcal{Y}_s = \emptyset\),在 \(\mathcal{Y}_s\) 中的每一个类别在 \(\mathcal{D}_{tr}\) 中都有大量的样本,每一个在 \(\mathcal{Y}_{u}\) 的类别仅在 \(\mathcal{D}_{few}\) 有少量样本。 FSL 用 \(\mathcal{D}_{tr}\)\(\mathcal{D}_{few}\) 训练分类器 \(f\) 预测在测试集 \(\mathcal{D}_{te}=\{(x,y)|x \in \mathcal{X}_{u}, y \in \mathcal{Y}_u \}\) 中的样本,其中 \(\mathcal{X}_u \bigcap \mathcal{X}_{few} = \emptyset\)

image-20231110154140824

image-20231110154237671

FSL 任务通常用 N-way-K-shot 表示。分为 Meta-training 和 Meta-testing 两个过程。每类的样本数量对模型性能有显着影响。

image-20231110160920290

先在 Testing data 中选择几个类,每个类别都包括很多样本,然后从选择的每个类中选出 K+X 个样本,其中 K 个样本用作 support set,X 个样本被用作 query set,这样就得到了 Meta-testing 过程中需要用到的两个数据集。N-way k-shot 中的 N 和 k 是由 Testing data决定的,与 Training data 无关。同理,可得到 Meta-training 过程中的两个数据集 S 和 Q,但从每个类中也不必非要选 k 个样本作为 Support set,现在可以选任意个 。接下来依据该数据集划分进行训练,计算损失,更新参数。在 Meta-training 的过程中,Support set + Query set 就是一个 mini-batch。因此,一个 episode 的训练过程实际上就是一个 batch 的训练过程。而这种基于 episode 的训练方法即被称为 Episodic Training。

与 Transfer Learning 的关系

与 Transfer Learning 相比,有限的训练数据、领域变化和任务修改使得 FSL 更具挑战性。 FSL 有很多变体,包括 One-shot Learning(OSL)、Zero-shot Learning(ZSL)和 Cross-domain Few-shot Learning。这些变体在样本大小和领域学习方面被认为是迁移学习的特殊情况。

  • One-shot Learning:One-shot Learning 在 support datasets 中每个类都有一个可用样本。模型只需要根据 support set 回答是或否。事实上,One-shot Learning 并没有专门对数据进行分类,只是简单地做一个聚类来学习相似度度量函数。

  • Zero-shot Learning:Zero-shot Learning 考虑了扩展 FSL 的更极端情况。在没有任何 support 样本的情况下,Zero-shot Learning 完全依赖语义特征作为桥梁来推断未见过的样本。零样本学习使用高维语义特征而不是低维像素特征来表示原始数据。 One-shot Learning 和 FSL 可以看作是一种特殊的 Zero-shot Learning。

  • Cross-domain Few-shot Learning:Cross-domain Few-shot Learning 结合了 Transfer Learning 和 FSL 的挑战。由于域 gap 的存在,源域和目标域中的类的交集为空。此外,目标域的样本数量极其稀缺。

与 Meta Learning 的关系

Few-shot learning 是 meta learning 的一种。

Few-shot learning 更加关注如何利用已有的信息来完成新任务的学习,而 Meta learning更加关注如何设计一种可以快速适应新任务的算法或模型。

两者之间的关系十分混杂,暂时这样理解。

Meta Learning 是提供 episodic training 的通用范例。它的重点是在先验知识的帮助下提高未见过的任务的泛化能力。如果使用先验知识来辅助模型学习特定任务,那么元学习可以被视为 FSL 的变体。Meta Learning 并不等同于 FSL。 FSL 更多的是一个最终目标,旨在在不依赖大规模数据集的情况下实现稳健的表示。通过数据和任务空间的双重采样,Meta Learning 能够构建大量与未见过的任务相关的辅助任务。即使有些工作不涉及 Meta Learning,如果可以考虑 episodic training,也可能会提高性能,例如元强化学习、元视频检测等。

元学习有其自身的局限性:当训练和测试任务存在明显的领域差距时,元学习很少初始化参数权重。此外,元学习高度依赖于网络结构,需要针对广泛不同的任务进行重新设计。尽管如此,元学习仍然是解决 FSL 问题最有效的方法之一。

数据集

Few-shot Learning 分类

Few-shot learning(FSL)已成为一种有效的学习方法,并显示出巨大的潜力。尽管最近在处理 FSL 任务方面取得了创造性的成果,但从少量甚至零样本中快速学习有效信息仍然是一个严峻的挑战。作者调研了 200+ FSL 的文章,根据对先验知识的抽象层面将 FSL 的工作分为数据级(data level),特征级(feature level),任务级(task level)和多模态级(multimodal level)。

  • 数据级
    • 定义:数据级别主要通过增加特征或样本的数量来评估真实的数据分布。最直接的方法是基于语义空间生成附加数据或标记类似的辅助标记数据集。对于半监督数据集,对比学习和潜在增强是有效的表示框架;
    • 数据分布评估不准确挑战:在FSL中,由于成本、伦理、法律或其他原因,很难对大量半监督数据集进行标记。仅依赖少数样本可能会在估计真实数据分布时产生偏差,这对某些任务是有害的。在数据层面,最大限度地探索稀缺信息的数据分布是最重大的挑战。
  • 特征级
    • 定义:特征级别主要用于构建从支持集到查询集的数据到标签的映射。良好的特征嵌入对于提取判别性表示至关重要。大多数预训练和微调工作需要通过有效的正则化来应用。另外,如果最大化保留预训练模型的参数,那么提示调优通过给模型一些手动提示,很大程度上打破了数据的约束;
    • 特征重用敏感性挑战:通过积累大规模数据标签领域知识,迁移学习可以利用预训练的模型轻松获得特征级先验知识。然而,就跨域FSL而言,预训练的特征提取器没有足够的泛化性,这导致了对未见过的任务的误导。
  • 任务级
    • 定义:任务级主要用于细化任务空间中的参数,包括模型参数和元学习参数。与多任务学习不同,元学习试图从相关任务中学习先验知识,而不扩展学习参数或牺牲推理效率。元学习、度量学习和图神经网络是此处理过程中的主要方法;
    • 未来任务的通用性挑战:以元学习和情景训练为代表,任务级方法可以对数据和任务进行双重采样,并尽快从已见的任务映射到未见的任务。然而,最近的研究表明,只有当训练和测试任务足够相似时,元学习才有效。此外,元学习高度依赖于现实世界各个领域下的网络结构。
  • 多模态级
    • 定义:多模态级别使文本、视觉效果和其他消息能够以最小的损失嵌入到同一空间中。在语言模型的帮助下,图像也可以以补丁的形式嵌入。多模态学习包含丰富的知识,导致FSL进入多模态大模型+小样本领域;
    • 多模态信息融合的有效性挑战:多模态学习可以实现与图像、文本和音频等环境的交互。它结合了图像嵌入和文本向量,表现出了很强的通用性。参数化多模态预训练模型可以轻松解决各种下游任务。然而,如何以最小的损失将文本、图像和其他消息嵌入到同一空间中仍然是多模态 FSL 的核心挑战。

数据级

FSL 旨在每类仅使用少量甚至零样本来学习新类别。在现实世界的 FSL 任务中,由于隐私、收集和标签成本的原因,用于训练的样本数量始终受到限制。为了解决数据稀缺的问题,一个直接的方法是增加可用样本的数量。根据先验知识级别的抽象,将数据增强细分为数据扩展(Data expansion)和特征增强(Feature Augmentation)。

数据扩展

数据扩展主要是在原始训练数据集中添加新的可用数据,或者作为基于未标记数据生成的伪标记数据或对原始数据集进行变换。

其中应用最广泛的方法是对图像进行各种规则变换,涉及翻转、高斯模糊、裁剪、缩放等。然而,像素信息对 FSL 的改进有限。一些工作尝试叠加语义信息、补充擦除区域以及转换类间或类内变化。早期的工作是在类似的类别中使用 Hausdorff 距离度量。后来,使用自动编码器来捕获类属性的线性或非线性变化,例如空间和外观。就自然语言处理而言,数据扩展主要包括简单的回译、单词替换、释义和信念状态注释。无论图像还是文本,相应的标签都会分配原始标签。最近,反转标签也可以发现在特殊任务上的性能会得到提高。

与在原始数据集上生成更多样的样本相比,更好的方向是引入大量未标记的数据集。在手势识别方面,在一个大型的未标记手势库中共同训练相似的手势。在许多其他情况下,模型无法立即完成对未标记数据的选择。整个过程需要不断的训练、推理、增加。然而,如果未标记数据和标记数据之间存在域转移,则生成的伪标签可能会带来来自目标类的噪声。许多工作被用来生成更好的伪标签,包括融合数据分布、对比学习和嵌入增强。

除了未标记的数据集之外,query sets 也可以在 FSL 中一起训练,这被称为直推式少样本学习(transductive few-shot learning)。通过在训练阶段添加测试数据,可以获得更具辨别力的全局表示特征。STARTUP 提出在未标记的 query datasets 上训练具有对比损失函数的模型,并将模型结果的聚类作为这些未标记的查询数据集的标签。如果域间差异很大,那么使用固定的预训练模型可能不是最佳选择。Islam 等人放弃对比度损失函数并使用动态蒸馏来学习目标域的更好表示。目前,基于转导学习的FSL与元学习任务紧密结合。

特征增强

特征增强是更高级别的数据增强,专注于一系列特征转换。在特征增强中,样本通过特征提取器,有效特征被进一步压缩为纹理、位置或属性。Laso 是一个早期且具有代表性的工作。由于每个样本具有多个标签,通过定义特征空间的交集和差集,可以在 hidden 空间中生成更多相关样本。PFEMed 将预训练的一般特征与特定特征连接起来,以进一步增强 FSL 特征的语义信息。Chen 等人建议添加一组参考图像,其中包含许多同一类别的图像对。在嵌入空间中减去或添加参考对的特征。它不仅丰富了多样性,还引入了参考特征。此外,AFHN 探索使用条件生成对抗网络来产生更多种类的识别特征。最近,提出了一个假设,当基类和新类在语义上相似时,均值和方差可以在很大程度上共享。基类的均值和方差可以校正新类的数据分布。此外,Xu 等人提出了一种分解数据集中方差的框架,其中一个表示类内方差,其他表示判别信息的嵌入。通过重复采样,可以将类内方差添加到判别性特征中。这样就可以最大程度地学习到特征,同时保持较大的类内方差。

特征级

深度学习模型表征特征的能力远远超出了人类,拥有大规模的数据集和强大的计算能力。 FSL利用特征知识来不同程度地共享预训练参数并重新定义下游任务。在本节中,按照先验知识的方向,将相关工作总结为迁移学习(transfer learning)和多任务学习(multitask learning)。

Transfer Learning

从迁移学习的角度来看,FSL可以被视为跨领域的学习任务。FSL 中的标准迁移学习也可以分为两个阶段:在源任务上学习和在目标任务上迁移。

Pre-training

FSL 利用预训练模型的特征表示能力来很大程度上减少类内 variation,这使模型专注于更具辨别力的区域。实验证明,监督训练方法会扭曲不同类的实例并忽略语义信息。相反,无监督训练侧重于调整下游任务的特征。

Fine-tuning

经验表明,仅仅重新随机化顶层参数和相同架构知识的自蒸馏也对 FSL 有利。最近,许多作品探索了有用的技巧,包括自监督学习、注意力模块和掩模生成模块。显然,P > M > F 总结了预训练、元学习和微调的训练过程。它在多个基准数据集上达到了 FSL 的最先进水平。其中,特征提取 backbone 是 FSL 性能的主导因素。

同样,在自然语言处理中,预训练和微调也大大加速了 FSL 的发展。其中,BERT 主要用于语言理解,GPT 用于文本生成。语言模型在大型语料库上训练不同的任务,因此它具有理解甚至生成目标文本的能力。Zhang等人探索微调 BERT 的主要技巧,包括纠错、权重初始化、L2 正则化和冻结。然而,Lee 等人微调 GPT-2 并在 automatic patent assertion 任务上实现最先进的技术。除了性能之外,微调的最大优点是不需要任务级模型结构设计。

Prompt Learning

根据 prompt 的位置,Prompt Learning 可分为前缀提示(prefix prompt)和完形填空式提示(cloze-style prompt),具体来说,前缀提示表示后续文本与不同任务对应的前缀词组合。完形提示是指在句子的空白处填入合适的单词。不同的任务可以有不同的空白位置来测试模型是否学习了相应的语义知识。

手动提示模板的一个显着问题是 prompt 的质量直接影响模型的性能。Jiang等人在大量文本预期中收集一些转换作为模板。新的任务可以在海量的经验中寻找模板。另一种方法是 prompt paraphrasing。在 seed prompt 的基础上,通过回译和关键词替换将其扩展到更多的提示。最具代表性的工作是 AutoPrompt ,它屏蔽模板中的单词,自动用其他合适的单词替换它们,以最大化标记的概率。Gao 等人使用 T5 模型进行训练和比较,生成空白的每个位置。整个过程的计算量相对较大。

更进一步,一种更抽象的提示类型是提示隐藏空间。输入可以是嵌入向量,输出不再是具体的单词。最有代表性的方法是 PT,它在正常输入的前面添加了几个前缀 ID。除初始化参数外,其他参数只有在调整前缀时才会被冻结和更新。受这个想法的启发,CP-Tuning 使用连续的提示嵌入来代替提示模板的端到端手动设计。随后,一些作品开始探索如何在隐藏空间中初始化提示。 PPT指出,通过在预训练阶段添加软提示可以获得更好的初始化。另一种方法是使用提示作为初始状态,并在微调过程中找到更合适的潜在提示。

Multitask Learning

与 Transfer Learning 相比,Multitask Learning 需要多个损失函数来优化模型。扩展任务倾向于在嵌入空间中向不同方向进行更新,这在一定程度上抵消了一些噪声。在FSL多任务工作中,参数更新可以分为硬参数共享和软参数共享。

据我们所知,FSL Multitask Learning 最初应用于视频事件检测任务。在特征表示中,通过控制参数更新的位置,多任务学习可以最大程度地混淆共享层参数。这种分离特征的操作最大化了通用特征和判别特征的学习之间的平衡。通过添加几个判别性属性、消除与属性无关的特征以及使用与属性相关的特征进行指控预测。多任务学习也可用于数据增强。 FGVC 提出在预训练任务中添加样本选择任务。每个训练分类器共享一个基础网络以获得更好的结果。

遵循这个过程,FSL Multitask Learning 很长一段时间都与自监督学习联系在一起。具体来说,BF3S 将 FSL 分类任务与预测图像的旋转角度相结合。同样,预任务也用于对图像进行着色并预测每个补丁的相对位置,局部 Fisher 判别式。大量实验表明,预测图像块的旋转角度和相对位置是 FSL 更有效的方法。 PSST 进一步结合了 FSL 分类、图像位置预测和角度预测以实现最先进的技术。直觉上,通过解决这些任务,backbone 网络提取更多语义特征,而不仅仅是相关标签。由于 Meta Learning 与精心设计的 Multitask Learning 相结合,可以获得有竞争力的结果并将训练时间减少 10 倍。

任务级

任务级别与数据级别和特征级别不同,它对数据和任务进行双重采样以提取元知识。Meta-knowledge 独立于具体问题,在任务空间中搜索最优参数。从广义上讲,任务级别学习优化参数、生成度量函数并总结知识迁移。其中,学习优化参数还包括优化元学习参数和优化现有模型参数;生成度量算法包括特征嵌入、基于外部 memory、度量学习、图神经网络和其他基于相似性的算法。

Learning Optimization Meta-learned Parameters

学习元学习参数的关键思想是搜索对未见过的任务通用的全局初始化状态。传统的初始化方法,如均匀分布、正态分布等,很容易陷入局部最优。考虑到FSL的特殊性,MAML(模型无关元学习)提出了一种基于 episodic training 的新方法。 MAML 是典型的两阶段参数模型。第一阶段是更新每个任务,即本地更新。第二次更新是每批次任务查询损失的平均值,即全局更新。计算量是最大的问题。为此,大量工作旨在改进 MAML,包括 simplifying、动量更新,甚至忽略二阶导数,使用进化算法来避免反向传播以在 CPU 并考虑梯度更新方向和学习率。

另外,相关的初始化参数也可以由其他模型生成。 AWGIM 基于低维引入互信息和注意力,生成包含更多 query 信息的权重。此外,MAML 与概率分布相结合,得出 LLAMA、PLATIPUS、贝叶斯 MAML、DKT 和 ABML。在扩大参数空间方面,MT-NET 添加了变换矩阵和二值掩码矩阵; TAML 引入正则化条件; OOD-MAML 利用虚拟样本; ARML 构建元知识图; WGD-MAML 在学习层之间放置非线性激活函数。最近,METADOCK 通过动态选择内核来压缩元模型。它可以轻松部署在边缘设备上。

除了优化初始化参数之外,另一个重要方向是 model-based 机制。它需要外部 memory 以 key-value 对的形式存储先验知识。key 存储模型嵌入的输出,value 存储各种标签。据我们所知,MANN 是最早使用外部 memory 来显式存储每个 episode 特征嵌入的工作。Kaiser 等人扩展 key-value 存储模块使用三元组进行保存。额外的向量用于选择一个长时间没有更新的向量。 APL 进一步将基于模型的知识总结为概率分布。与应用静态内存矩阵的现有工作不同,DMIN 使用动态内存路由来学习动态内存模块。在一些极端跨域的场景中,memory 模块中的 key 不能简单地推广到语义,而应该是多层的。

受 MAML 和 Reptile 的启发,网络架构搜索也可以在几轮更新中实现快速收敛。共享或随机选择的 surpernet 权重是早期工作被称为 one-shot NAS。但 one-shot NAS 的性能仍然相对落后于传统 NAS。随后,Zhao 等人提出了 few-shot NAS。其核心思想是将 surper-networks 划分为多个 sub-supernets 来搜索待搜索空间的不同区域。由于 surpernets 数量略有增加,few-shot NAS 的准确率得到了大幅提升。 MetaNAS 是第一个将元学习和传统 NAS 完全结合的方法。它取代了 DARTS 的加权求和以减少不同的操作。经验表明,MetaNAS 更适合下游学习任务。

Learning Metric Algorithm

学习度量算法旨在学习计算 support-query 对之间的抽象距离的映射。一般来说,度量学习也可以被视为整合了学习学习思想的相似性度量的学习。

孪生神经网络(Siamese neural network) 是比较早期的模型。输入由一组正对或负对组成,输出只是一个二元分类问题。基于孪生神经网络,更多的工作考虑添加锚样本,甚至更多样本,并选择硬样本。孪生神经网络是一个通用框架。当 backbone 模型不共享权重时,孪生神经网络将成为伪孪生神经网络。

与孪生神经网络相比,基于特征平均的原型网络(Prototype network)实现了真正意义上的分类。但简单地平均特征很容易受到噪声的干扰。一些工作提出了相似类别和不相似类别之间不同类型的自适应边界距离。除此之外,选择图像的特定部分来强制高阶语义特征的交互可以指导模型学习新度量空间中的原型表示。 APLCNE 是最具代表性的工作,它用胶囊网络(Capsule network)代替 CNN 来编码空间位置信息。原型是使用加权求和来计算的。如果样本更加稀疏,那么可以使用正则化来约束不同模态的原型长度,并引入注意力来重建原型表示。

匹配网络(Matching Network)结合了参数和非参数算法来对距离分布进行建模。最常用的度量包括欧几里德距离、曼哈顿距离和余弦相似度。最近,DEEPEMD 首次提出了一种与 Earth’s Mover 距离的交叉引用机制。它使用节点特征与另一个结构中的平均节点特征的点积来生成相关性分数作为权重值。 DEEPEMD 可以应用于遥感场景。深布朗距离协方差(Deep Brownian Distance Covariance)是另一种较低计算方法,它通过测量嵌入特征的联合分布与边缘分布的乘积之间的差异来学习图像表示。实验表明,布朗距离协方差在 FSL 度量学习中具有巨大的潜力和广泛的应用。

关系网络(Relation network)与上述模型的不同之处在于,其相似度是使用余弦相似度、注意力模块和图神经网络相结合的神经网络来计算的。其中,图神经网络被用来解决一大类 FSL 问题。最早的工作之一是 GNN-FSL,它将样本的向量表示输入到图神经网络中。在此基础上,通过设计不同的嵌入节点和标签传播机制,图神经网络可以很好地对 support-query 对之间的关系进行建模。

多模态级

尽管一些工作为 FSL 的特定任务提供了出色的结果,但 FSL 仍然很难利用更广义的先验知识取得重大突破,例如 BSCDFSL。如今,由于前缀 tuning 和提示 tuning 的有效性,FSL 在 Zero-shot learning 中表现得令人惊讶。

CLIP 给出了多模态训练的基本思想:文本 backbone 和视觉 backbone 的联合训练。基于 CLIP,CADA-VAE 使用 VAE 作为主干,将图像特征和标签文本映射到相同的潜在空间。Wang 等人将图像分解为原始图像、前景图像和背景图像,通过 CNN backbone 获得融合的视觉特征。Li 等人应用无监督聚类来获取层级语义信息,Schwartz 等人使用多个 MLP 层通过文本 backbone 提取带有标签向量的语义原型。Peng 等人利用 GCN 将类别的语义信息生成相应的分类权重,并利用视觉分类权重结合语义生成权重完成 FSL 分类器。Xing 等人将文本向量与视觉特征一起添加到原型网络中以训练自适应分类。Pahde 等人使用语义生成来辅助视觉特征。 CCAM 通过对上下文原型进行编码来替换真实标签,并通过比较各个原型之间的距离来对它们进行分类。使用各个领域的 backbone 网络嵌入训练起来很简单,但是良好的语言模型和视觉模型共同训练会在很大程度上损害语言模型的性能。

Multimodal prompt learning 允许视觉嵌入通过提示或添加前缀来一致地适应语言模型,这在很大程度上保留了语言模型强大的特征表示能力。 MCNLG 的提示非常直观,它将多模态序列作为前缀提示放置在输入序列之前,然后依次解码共享的多模态信息。视觉 backbone 是 ResNet-152,文本 backbone 是嵌入网络。 ActionCLIP 是 CLIP 在动作识别场景中的应用。整个训练过程可以表述为预训练、提示学习和微调,其中提示用于保留更多多模态预训练模型的稳健表征性能。具体来说,文本提示包括前缀提示、完形填空提示和后缀提示。 ALPRO 遵循 CLIP 手动模板,其主要贡献是使用对比学习来进一步调整嵌入空间中的各个模态。 CPT 是一种颜色提示调优,通过构造相应的提示模板,使用不同的颜色模块来区分实体。 CoOp 与之前的手动提示模板不同。标签嵌入可以选择放置在生成的自动化虚拟模板的中间、前面和后面。最近的一项里程碑式的工作帮助语言模型理解图像,其核心思想是将视觉特征与文本特征对齐。语言模型参数在训练阶段完全冻结,仅在反向传播期间在视觉编码器中更新。冻结的语言模型可以看作是前缀提示。

FSL的未来方向和机遇

更好地评估数据分布

机器学习很难从极少数的样本中训练出具有优异泛化能力的模型。如果算法是在带有偏差的数据上进行训练的,那么它将破坏模型的泛化能力。Yang 等人在这个方向上做出了第一次有意义的尝试。它假设基类数据和新类数据都服从正态分布。通过计算基类的均值和方差,可以将值转移到新类。如果这个假设足够准确,那么它可以在一定程度上弥合 FSL 和传统机器学习之间的差距。然而,这仍然是对数据分布的一个相对严格的假设。如果基类和新类之间存在较大差距,则需要使用关系网络等辅助模块来探索足够复杂的校正规则。未来,这是一个令人兴奋的方向,考虑放宽假设并探索更多的泛化方法。

另一个问题是主流的FSL基准数据集或多或少存在一些问题。例如,mini-ImageNet 数据集获得了一些对于模型评估来说太困难的不合适的样本,例如实体遮挡和多个对象。然而,其他简单的数据集,例如 Omniglot、cifar10、cifar100 等,已经得到了很大程度的解决。 FSL 需要更具挑战性的数据集,例如 BSCD-FSL。同样,自然语言处理和多模态领域也需要更多像 FEWCLUE、FEWGlue 这样与研究和应用热点紧密结合的基准数据集。但到目前为止,还没有基准数据集来评估模型在细粒度和全场景级别的泛化能力。

提高数据到标签映射的稳健性

BSCD-FSL 基准的出现给 FSL 带来了新的挑战。它探索并揭示了当前 FSL 对于跨领域学习的局限性。最近的研究已经产生了精心设计的模型、更复杂的超参数调整、额外的辅助数据集以及对 FSL 有效的与领域无关的特征的提取。目前,微调在迁移学习和元学习的交叉点上已经表现得非常强劲。预训练可以看作是学习多类任务;这是单任务学习。然而,元学习是一种多任务学习方法。是否有更好的模型能够将元学习和微调结合起来,最大限度地提高模型的性能,同时降低元学习过程中的计算复杂度,值得探索。

如今,特征层面对于参数空间优化仍然具有很大的潜力。 P > M > F 探索了这个简单的流程,包括预训练、元学习和微调。它在 mini-ImageNet 上实现了最先进的 FSL 分类任务。后续工作继续尝试替换预训练的 backbone,在微调中添加各种技巧,或者引入多任务以充分利用微调和元学习的性能。

从历史任务中更有效地学习元知识

元学习是一个非常普遍的概念。元学习与其他方法结合使用可以进一步提高 FSL 任务的性能。然而,元学习仅限于定义的网络结构下的特定任务空间。对于分类任务,目前只考虑相关的分类任务。是否存在一个同时考虑分类、检测、预测和生成的框架?这将使元学习在某种程度上与任务概念分离。最近的工作正在尝试对每个批次进行整体优化。在这种情况下,如何优化内循环将是一个重要的方向。未来,元学习和微调的结合将成为解决FSL的主流算法。

请注意,元学习仍在探索任务之间的相关性。目前尚未出现相关理论来解释元学习背后的因果关系。未来,随着因果理论框架的发展,元学习可能会成为一个更通用的框架。

多模态信息全面融合

多模态学习是目前解决FSL问题的新兴方法,它自动从没有监督标签的边缘场景中学习异构数据,并快速转移到不同的下游任务。多模态学习被广泛认为是从有限领域的弱人工智能到通用人工智能的探索。多模态FSL的出现,让FSL进入了预训练多模态模型+小样本微调的时代。从技术上讲,具有足够数量参数的预训练多模态模型可以解决促销方面的任何下游任务。现阶段,鼓励研究人员尝试更多模态融合学习,例如语音和视频。另一个方向是如何在多种信息融合的情况下量化每类信息的重要性,以便在训练阶段获得不同的权重。


Paper Diary-2023-A Comprehensive Survey of Few-shot Learning@Evolution, Applications, Challenges, and Opportunities (2023)
https://blog.lfd.world/2023/11/08/paper-diary-2023-a-comprehensive-survey-of-few-shot-learning-evolution-applications-challenges-and-opportunities-2023/
作者
培根请加蛋
发布于
2023年11月8日
许可协议