Meta-Learning in Neural Networks: A Survey | IEEE Journals & Magazine | IEEE Xplore
Meta-Learning in Neural Networks: A Survey
摘要:
介绍
现代机器学习模型通常使用手工设计的固定学习算法从头开始针对特定任务进行训练。基于深度学习的方法在各个领域都取得了巨大的成功[1]、[2]、[3]。然而,存在明显的局限性[4]。例如,成功主要集中在可以收集或模拟大量数据以及可以获得大量计算资源的领域。这排除了许多数据本质上稀有或昂贵的应用程序[5]或计算资源不可用[6]。
元学习是提炼多个学习片段的经验(通常涵盖相关任务的分布)并利用这些经验来提高未来学习绩效的过程。这种“学习到学习” [7]可以带来多种好处,例如提高数据和计算效率,并且它与人类和动物学习更好地结合起来[8],其中学习策略可以改善终生和进化。时间尺度[8]、[9]、[10]。
从历史上看,机器学习的成功是由先进的手工设计功能推动的[11],[12]。深度学习实现了特征表示学习的前景[13] ,与之前手工设计的特征相比,为许多任务[1]、[3]提供了性能上的巨大改进。神经网络中的元学习旨在提供集成联合特征、模型和算法学习的下一步;也就是说,它的目标是用学习的学习算法取代先前手工设计的学习器[7]、[14]、[15]、[16]。
神经网络元学习有着悠久的历史[7],[17],[18]。然而,它作为推动当代深度学习行业前沿的驱动力的潜力导致了最近研究的爆炸式增长。特别是元学习有潜力缓解当代深度学习的许多主要批评[4],例如通过提高数据效率、知识转移和无监督学习。元学习已被证明在多任务场景中非常有用,在多任务场景中,从一系列任务中提取与任务无关的知识,并用于改进该系列中新任务的学习[7]、[19]; 以及单任务场景,其中单个问题在多个阶段中被重复解决和改进 [15],[20],[21],[22]。成功的应用已在少样本图像识别[19]、[23]、无监督学习[16]、数据高效[24]、[25]和自我导向[26]强化学习 (RL)、超参数等领域得到证实。优化[20]和神经架构搜索 (NAS) [21]、[27]、[28]。
关于元学习的许多观点可以在文献中找到,部分原因是不同的社区对该术语的使用不同。Thrun [7]在操作上将学习定义为当学习者解决给定任务族中的任务的表现相对于所看到的任务数量有所提高时发生。(参见,随着来自单个任务的更多数据被看到,传统的机器学习性能会提高)。这种观点[29]、[30]、[31]将元学习视为管理“没有免费午餐”定理的工具[32]并通过搜索最适合给定问题或问题族的算法(归纳偏差)来提高泛化能力。然而,这个定义可以包括迁移、多任务、特征选择和模型集成学习,这些目前通常不被视为元学习。元学习[33]的另一种用法是根据数据集特征进行算法选择,并且很难与自动化机器学习(AutoML)[34]区分开来。
在本文中,我们重点关注当代神经网络元学习。我们将其视为[29]、[30]中的算法学习,但特别关注通过明确定义的目标函数(例如交叉熵损失)的端到端学习来实现的情况。此外,我们考虑单任务元学习,并讨论更广泛的(元)目标,例如鲁棒性和计算效率。
本文对快速增长的神经网络元学习领域进行了独特、及时且最新的调查。相比之下,以前的调查相当过时和/或侧重于数据挖掘的算法选择[29]、[33]、[35]、[36]、 AutoML [34]或元学习的特定应用,例如少样本学习[37]或 NAS [38]。
我们讨论元学习方法和应用(图 1、表 1)。我们首先通过高级问题形式化引入元学习,可用于理解和定位该领域的工作。然后,我们在元表示、元目标和元优化器方面提供了一个新的分类法。该框架为开发新的元学习方法并为不同的应用程序定制它们提供了一个设计空间。我们调查了几个流行的和新兴的应用领域,包括小样本、强化学习和架构搜索;并将元学习定位于迁移和多任务学习等相关主题。最后,我们讨论了突出的挑战和未来研究的领域。
背景
元学习很难定义,即使在当代神经网络文献中也以各种不一致的方式使用。在本节中,我们介绍我们的定义和关键术语,然后根据相关主题定位元学习。
元学习最常被理解为学会学习;通过多个学习片段改进学习算法的过程。相比之下,传统的机器学习改进了对多个数据实例的模型预测。在基础学习期间,内部(或较低/基础)学习算法解决由数据集和目标定义的图像分类[13]等任务。在元学习期间,外部(或上层/元)算法更新内部学习算法,使其学习的模型改进外部目标。例如,这个目标可以是内部算法的泛化性能或学习速度。
如上所述,许多传统算法(例如通过交叉验证随机搜索超参数)可能属于元学习的定义范围。当代神经网络元学习的显着特征是明确定义的元级目标,以及针对该目标的内部算法的端到端优化。通常,元学习是对从任务族中采样的学习事件进行的,从而产生一种在从该族中采样的新任务上表现良好的基础学习算法。然而,在有限的情况下,所有训练片段都可以从单个任务中采样。在下一节中,我们将更正式地介绍这些概念。
2.1 形式化元学习
传统机器学习。
![](https://i-blog.csdnimg.cn/blog_migrate/a3d38ba326f3470f95b9168fc5a22524.png)
传统的假设是,这种优化是针对每个问题从头开始执行的D; 然后ω是预先指定的。然而,规范ω可以极大地影响准确性或数据效率等性能指标。元学习试图通过学习学习算法本身来改进这些措施,而不是假设它是预先指定和固定的。这通常是通过重新审视上面的第一个假设并从任务分布中学习而不是从头开始来实现的。请注意,虽然为了简单起见,以下元学习的形式化采用了监督视角,但所有想法都直接推广到强化学习设置,如第5.2 节中讨论的那样。
元学习:任务分布视图。元学习的一个常见观点是学习一种通用学习算法,该算法可以跨任务泛化,并且理想情况下使每个新任务都比上一个任务学得更好。
![](https://i-blog.csdnimg.cn/blog_migrate/25ecf7c18aba3b1330bce833e0cfe7e6.png)
这种设置导致了传统欠拟合和过拟合的类比:元欠拟合和元过拟合。特别是,元过拟合是一个问题,即在源任务上学习的元知识不能推广到目标任务。这是比较常见的,特别是在只有少量源任务可用的情况下。可以看作是学习归纳偏差ω限制了假设空间θ过于紧密地围绕源任务的解决方案。
元学习:双层优化视图。前面的讨论概述了多任务场景中元学习的常见流程,但没有具体说明如何解决式(1)中的元训练步骤。(3) . 这通常是通过将元训练步骤转换为双层优化问题来完成的。虽然这张图对于基于优化器的方法来说是最准确的(参见第 3.1 节),但它有助于更普遍地可视化元学习的机制。双层优化[40]是指分层优化问题,其中一个优化包含另一个优化作为约束[20]、[41]。使用这种表示法,元训练可以形式化如下:
![](https://i-blog.csdnimg.cn/blog_migrate/2a69405c276ea00feeb1dc1f483eeb96.png)
元学习:前馈模型视图。正如我们将看到的,有许多元学习方法以前馈方式合成模型,而不是通过等式 1 中的显式迭代优化。5 - 6以上。虽然它们的复杂程度各不相同,但通过实例化等式中的抽象目标来理解这一系列方法是有启发性的。(2)定义元训练线性回归的玩具示例[43]。
![](https://i-blog.csdnimg.cn/blog_migrate/68b11bd246e05bbbaf5d08a3abac67cd.png)
2.2 元学习的历史背景
元学习和学习学习最早出现在 1987 年的文献中[17]。J. Schmidhuber 介绍了一系列可以通过自我参照学习来学习如何学习的方法。自参考学习涉及训练神经网络,该神经网络可以接收自己的权重作为输入并预测所述权重的更新。Schmidhuber 建议使用进化算法来学习模型本身。
元学习随后扩展到多个领域。本吉奥等人。[46]、[47]提出元学习生物学上合理的学习规则。施米德胡贝尔等人。继续探索自我参照系统和元学习[48],[49]。S.特伦等人。在[7]中注意更清晰地定义“学习学习”一词,并介绍了初步的理论依据和实际实施。使用梯度下降和反向传播训练元学习系统的提议首次于 1991 年提出[50],随后在 2001 年进行了更多扩展[51],[52],[29]对当时的文献进行了概述。元学习于 1995 年被用于强化学习[53],随后进行了各种扩展[54]、[55]。
2.3 相关领域
在这里,我们将元学习与相关领域进行定位,这些领域与元学习的关系经常引起混乱。
迁移学习(TL)。TL [35]、[56]使用源任务的过去经验来提高目标任务的学习(速度、数据效率、准确性)。TL 指的是这个问题领域和解决方案系列,最常见的是参数传输加上可选的微调[57](尽管还有许多其他方法[35])。
相比之下,元学习指的是一种可用于改进 TL 以及其他问题的范式。在 TL 中,先验是通过源任务上的普通学习来提取的,而不使用元目标。在元学习中,相应的先验将由外部优化来定义,该优化在学习新任务时评估先验的好处,如 MAML [19]所示。更一般地说,元学习处理的元表示范围比单纯的模型参数要广泛得多(第 4.1 节)。
领域适应(DA)和领域泛化(DG)。域转移是指源问题和目标问题共享相同目标的情况,但目标任务的输入分布相对于源任务发生了变化[35],[58],从而降低了模型性能。DA 是迁移学习的一种变体,它试图通过使用来自目标的稀疏或未标记数据来调整源训练模型来缓解此问题。DG 是指训练源模型使其对这种域转移具有鲁棒性而无需进一步适应的方法。许多知识转移方法已经被研究[35],[58]提高目标域性能。然而,对于 TL,普通 DA 和 DG 不使用元目标来优化跨领域的“如何学习”。同时,元学习方法可用于执行 DA [59]和 DG [42](参见第 5.8 节)。
持续学习(CL)。持续学习或终身学习[60]、[61]是指对从潜在非平稳分布中提取的一系列任务进行学习的能力,特别是在加速学习新任务且不忘记旧任务的同时寻求这样做。与元学习类似,考虑任务分布,目标部分是加速目标任务的学习。然而,大多数持续学习方法都不是元学习方法,因为这个元目标没有明确解决。尽管如此,元学习提供了一个推进持续学习的潜在框架,最近的一些研究已经开始通过开发编码持续学习表现的元目标来实现这一目标[62],[63],[64]。
多任务学习(MTL)旨在联合学习多个相关任务,从参数共享和由此产生的共享表示的多样性的正则化中受益[65],[66],以及计算/内存节省。与 TL、DA 和 CL 一样,传统 MTL 是没有元目标的单级优化。此外,MTL 的目标是解决固定数量的已知任务,而元学习的重点往往是解决未来看不见的任务。尽管如此,可以引入元学习来使 MTL 受益,例如,通过学习任务之间的相关性[67],或者如何在多个任务之间确定优先级[68]。
超参数优化(HO)属于元学习的范围,因为学习率或正则化强度等超参数描述了“如何学习”。在这里,我们包括定义元目标的 HO 任务,该元目标通过神经网络进行端到端训练,例如基于梯度的超参数学习[67]、[69]和神经架构搜索[21]。但我们排除了其他方法,例如随机搜索[70]和贝叶斯超参数优化[71],这些方法很少被认为是元学习。
![](https://i-blog.csdnimg.cn/blog_migrate/4dae69d3040f8b0fad5785cfbc270d53.png)
贝叶斯分层模型通过提供建模而不是算法框架来理解元学习过程,为元学习提供了一个有价值的观点。在实践中,HBM 的先前工作通常侧重于学习简单的易处理模型θ而大多数元学习工作考虑复杂的内循环学习过程,涉及许多迭代。尽管如此,一些元学习方法,如 MAML [19],可以通过 HBM 的视角来理解[74]。
自动机器学习。AutoML [33]、[34]是一个相当广泛的方法,旨在自动化机器学习过程中通常需要手动完成的部分,例如数据准备、算法选择、超参数调整和架构搜索。AutoML 通常使用此处定义的元学习范围之外的大量启发式方法,并专注于数据清理等对元学习不太重要的任务。然而,AutoML 有时会利用元目标的端到端优化,因此元学习可以被视为 AutoML 的专业化。
分类
3.1 以前的分类法
先前的[75]、[76]元学习方法的分类倾向于产生跨基于优化的方法、基于模型(或黑盒)方法和基于度量(或非参数)方法的三向分类法。
优化。基于优化的方法包括将内层任务(方程(6))作为优化问题逐字解决的方法,并侧重于提取元知识ω需要提高优化性能。一个著名的例子是 MAML [19],它的目的是学习初始化ω =θ0,这样少量的内部步骤就可以生成在验证数据上表现良好的分类器。这也是通过梯度下降来执行的,通过基础模型的更新来区分。更精细的替代方案还学习步长[77]、[78]或训练循环网络以根据梯度预测步数[14]、[15]、[79]。通过长期内部优化的梯度进行元优化会带来一些计算和内存挑战,这将在第 6 节中讨论。已经提出了基于梯度的元学习的统一视图,将许多现有方法表示为广义内循环元学习框架的特例[80]。
基于黑盒/模型。在基于模型(或黑盒)的方法中,内部学习步骤(方程(6)、方程(4))包含在单个模型的前馈传递中,如方程(1)所示。(7) . 该模型嵌入当前数据集D进入激活状态,并根据该状态对测试数据进行预测。典型的架构包括循环网络[14]、[51]、卷积网络[39]或超网络[81]、[82],它们嵌入给定任务的训练实例和标签来定义测试样本的预测器。在这种情况下,所有内层学习都包含在模型的激活状态中,并且完全是前馈的。外层学习是通过ω包含 CNN、RNN 或超网络参数。外层和内层优化紧密耦合,如下所示ω和D直接指定θ。记忆增强神经网络[83]使用显式存储缓冲区,可以看作是基于模型的算法[84]、[85]。与基于优化的方法相比,这些方法具有更简单的优化,不需要二阶梯度。然而,据观察,与基于优化的方法相比,基于模型的方法通常不太能够泛化到分布外任务[86]。此外,虽然它们通常非常擅长数据高效的小样本学习,但由于它们难以将大型训练集嵌入到丰富的基础模型中,因此它们被批评为渐近较弱[86] 。
度量学习。迄今为止,度量学习或非参数算法在很大程度上仅限于元学习的流行但特定的少数应用(第 5.1.1 节)。这个想法是通过简单地将验证点与训练点进行比较并预测匹配训练点的标签来在内部(任务)级别执行非参数“学习”。按时间顺序,这是通过暹罗[87]、匹配[88]、原型[23]、关系[89]和图[90]神经网络实现的。这里外层学习对应于度量学习(找到一个特征提取器ω代表适合比较的数据)。像之前一样ω在源任务上学习,并用于目标任务。
讨论。上面回顾的常见细分并没有暴露所有感兴趣的方面,也不足以理解当今可用的各种元学习框架之间的联系。因此,我们在下一节中提出了一种新的分类法。
![](https://i-blog.csdnimg.cn/blog_migrate/de40993e3249e1eafb19e17d5c3996da.png)
这些可以一起定制用于不同目的的元学习,例如样本高效的少样本学习[19],[39],快速多样本优化[91],[92],域转移的鲁棒性[42],[93 ]、标签噪声[94]和对抗性攻击[95]。
4. 调查:方法论
在本节中,我们根据我们提出的新方法分类法对现有文献进行分类。
4.1 元表示
元学习方法对元知识做出不同的选择ω应该是,即应该学习学习策略的哪些方面;以及(通过排除)哪些方面应被视为固定。
![](https://i-blog.csdnimg.cn/blog_migrate/8d1a19717ccd9945e2023b61529ba92f.png)
其中元表示ω是一个网络qω( · )近似难以处理的参数贝叶斯推理θ用训练数据解决任务Dt _,积分可以精确计算[107],也可以通过采样[45]或点估计来近似计算[108]。该模型ω然后进行训练,以最大限度地减少训练任务分布上的验证损失。等式。(7) .
最后,记忆增强神经网络具有记住旧数据并快速吸收新数据的能力,通常也属于 FFM 类别[84]、[85]。
嵌入函数(度量学习)。这里元优化过程学习嵌入网络ω通过查询和支持实例之间的简单相似性比较将原始输入转换为适合识别的表示形式[23]、[81]、[88]、[114](例如,具有余弦相似度或欧几里得距离)。这些方法在传统分类学中被归类为度量学习(第 3.1 节),但也可以被视为上述前馈黑盒模型的特例。对于基于支持图像和查询图像嵌入的内积生成逻辑的方法,可以很容易地看出这一点Xs和Xq,即G时间ω(Xq)Gω(Xs) [81]、[114]。这里,支持图像生成“权重”来解释查询示例,使其成为 FFM 的特殊情况,其中“超网络”为查询集生成线性分类器。通过使嵌入任务条件化[99]、[115]、学习更精细的比较度量[89]、[90]或与基于梯度的元学习相结合来训练其他方法,该家族中的普通方法得到了进一步增强。超参数,例如随机正则化器[116]。
损失和辅助任务。这些方法学习内在的任务损失L任务_ _ _ω对于基本模型(与L元a _ _,这是固定的)。损失学习方法通常定义一个函数,该函数输入相关量(例如,预测、标签或模型参数)并输出一个标量,由内部(任务)优化器将其视为损失。这可能导致学习损失比标准替代方案更容易优化(更少的局部最小值)[22],[25],[117],通过改进的泛化提供更快的学习[43],[118],[119],[120],对标签噪声的鲁棒性[121],或者其最小值对应于对域移位更鲁棒的模型[42]。损失学习方法也被用来从未标记的实例中学习[99]、[122],或者学习L任务_ _ _ω作为真正的不可微分的可微近似L元a _ _感兴趣的,例如精确召回曲线下的面积[123]。
损失学习也出现在自我监督[124]或辅助任务[125]学习的概括中。在这些问题中,定义和优化了无监督预测任务(例如视觉中的像素着色[124],或简单地改变强化学习中的像素[125]),目的是改进主要任务的表示。在这种情况下,要使用的最佳辅助任务(损失)可能很难提前预测,因此可以使用元学习根据辅助损失对改善主要任务学习的影响在几个辅助损失中进行选择。IE,ω是每个辅助任务的权重[68]。更一般地说,我们可以元学习一种辅助任务生成器,它用辅助标签来注释示例[126]。
架构。架构发现一直是神经网络中的一个重要领域[38]、[127],并且不适合简单的穷举搜索。元学习可以通过学习架构来自动化这个非常昂贵的过程。早期尝试使用进化算法来学习 LSTM 单元的拓扑结构[128],而后来的方法则利用 RL 来生成良好 CNN 架构的描述[28]。进化算法[27]可以学习建模为图的架构中的块,这些块可以通过编辑图来改变。基于梯度的架构表示也以 DARTS 的形式被访问[21]其中训练期间的前向传递包含给定块中所有可能层的输出的 softmax,这些输出由要元学习的系数加权(即,ω)。在元测试期间,通过仅保留与最高系数对应的层来离散化架构。最近改进 DARTS 的努力主要集中在更有效的可微近似[129]、增强离散化步骤[130]、学习易于适应的初始化[131]或架构先验[132]。更多详细信息,请参见第 5.3 节。
注意模块。已被用作基于度量的元学习器中的比较器[133],以防止小样本连续学习中的灾难性遗忘[134]并总结文本分类任务的分布[135]。
模块。模块化元学习[136],[137]假设任务不可知的知识ω定义了一组模块,这些模块以特定于任务的方式重新组合θ以解决每一个遇到的任务。这些策略可以被视为知识共享的典型结构方法的元学习概括,这些方法在多任务和迁移学习中得到了充分研究[66],[138],并且可能最终支持组合学习[139]。
超参数。这里ω表示基础学习器的超参数,例如正则化强度[20]、[69]、每参数正则化[93]、多任务学习中的任务相关性[67]或数据清理中的稀疏强度[67]。诸如步长[69]、[77]、[78]之类的超参数可以被视为优化器的一部分,导致超参数和优化器学习类别之间的重叠。
数据增强和噪声。在监督学习中,通常通过对现有数据进行标签保留变换来合成更多训练数据来提高泛化能力[13]。数据增强操作包含在内部问题(方程(6))中,并且通常是手工设计的。然而,当ω定义了数据增强策略,可以通过式(1)中的外部优化来学习。(5)为了最大化验证性能[140]。由于增强操作通常是不可微的,这需要强化学习[140]、离散梯度估计器[141]或进化[142]方法。最近尝试使用元梯度来学习基于混合的增强中的混合比例[143]。对于内部利用噪声的随机神经网络[116],ω可以定义可学习的噪声分布。
小批量选择、实例权重和课程学习。当基本算法是基于小批量的随机梯度下降时,学习策略的设计参数是批量选择过程。存在各种手工设计的方法[144]来改进随机采样的小批量。元学习方法可以定义ω作为实例选择概率[145]或选择实例[146]以包含在小批量中的神经网络。与小批量选择策略相关的是学习或推断训练集中每个样本的每个实例损失权重的方法[147],[148]。例如,将基本损失定义为L =Σ我ω我ℓ ( f(X我) ,y我)。这可以用于通过折扣噪声样本[147]、[148]、折扣离群值[67]或纠正类不平衡[147]来在标签噪声下学习。
更一般地说,课程 [149]指的是要学习的数据或概念序列,它比随机顺序学习项目产生更好的性能。例如,通过专注于正确难度的实例,同时拒绝太难或太简单(已经学过)的实例。元学习不是手动定义课程[150] ,而是可以通过将教学策略定义为元知识并对其进行训练来优化学生的进步,从而使过程自动化并选择正确难度的示例[146],[151]。
数据集、标签和环境。另一个元表示是支持数据集本身。这与我们最初的元学习形式化不同,元学习认为源数据集是固定的(第 2.1 节,方程(2)和(3))。然而,从方程的双层视图中可以很容易地理解它。(5)和(6)。如果上层优化中的验证集是真实且固定的,并且下层优化中的训练集参数化为ω,可以通过元学习调整训练数据集以优化验证性能。
在数据集蒸馏[152]、[153]、[154]中,支持图像本身是被学习的,这样对它们的几个步骤就可以对真实查询图像进行良好的泛化。这可用于将大型数据集汇总为少量图像,这对于无法存储流数据集的持续学习中的重播非常有用。
而不是学习输入图像X用于固定标签y,还可以学习输入标签y对于固定图像X。这可以用于蒸馏核心集[155],如数据集蒸馏;或半监督学习,例如直接学习未标记集的标签以优化验证集性能[156],[157]。
在计算机视觉或强化学习中的 sim2real 学习[158]中,人们使用环境模拟器来生成训练数据。在这种情况下,如第 5.10 节所述,人们还可以训练图形引擎[159]或模拟器[160],以便在对环境模拟器生成的数据进行训练后优化下游模型的真实数据(验证)性能。
讨论:转导表示和方法。大多数代表ω上面讨论的是处理或生成数据的函数的参数向量。然而,提到的一些表示是转导式的,因为ω从字面上对应于数据点[152]、标签[156]或每个实例权重[67]、[148]。因此参数的数量ω将元学习尺度作为数据集的大小。虽然这些方法的成功证明了当代元学习的能力[154],但这一特性可能最终会限制它们的可扩展性。
与转导式表示不同的是,转导式方法在查询实例以及支持实例上进行操作[99]、[126]。
讨论:可解释的符号表示。可以在上面讨论的许多元表示中进行横切区分,即不可解释(子符号)表示和人类可解释(符号)表示之间的区别。子符号表示,例如当ω参数化神经网络[15]更常见,并且构成了上面引用的大多数研究。然而,具有符号表示的元学习也是可能的,其中ω表示人类可读的符号函数,例如优化程序代码[91]。可以训练符号损失,而不是神经损失函数[42]ω由类似于交叉熵[119]、[121]的表达式定义。人们还可以元学习新的符号激活[161],其性能优于 ReLU 等标准。由于这些元表示是非平滑的,元目标是不可微的并且更难优化(参见第 4.2 节)。所以上层优化为ω通常使用强化学习[91]或进化算法[119]。然而,符号表示在跨任务族泛化能力方面可能具有优势[91]、[119]、[161] 。即,跨越更广泛的分布p ( T)与单个ω在元训练期间,或者学习ω概括为元测试期间的分布外任务(参见第 6 节)。
讨论:摊销。联系所讨论的一些表示的一种方法是根据所涉及的学习摊销程度[45]。也就是说,在元测试期间执行了多少特定于任务的优化,以及在元训练期间分摊了多少学习。从头开始训练,或传统的微调[57]在元测试中执行完整的特定于任务的优化,没有摊销。MAML [19]通过拟合初始条件提供有限摊销,以便通过几步微调来学习新任务。纯FFM [23] , [88] , [108]完全摊销,没有特定于任务的优化,从而能够最快地学习新任务。同时,一些混合方法[98]、[99]、[109]、[162]通过在单个框架中利用前馈和基于优化的元学习来实现半摊销学习。
4.2 元优化器
考虑到要优化学习策略的哪个方面,元学习器设计的下一个轴是用于训练的实际外部(元)优化策略ω。
梯度。
![](https://i-blog.csdnimg.cn/blog_migrate/e8ae6dc2e5ef64524f1b65cfc0f65364.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5ecc326cdf78bcf8b8dd79e44ad7af19.png)
进化。优化元目标的另一种方法是进化算法(EA)[17]、[127]、[193]。许多进化算法与强化学习算法有很强的联系[194]。然而,它们的性能并不像 RL 那样取决于内部优化的长度和奖励稀疏性。
EA 具有吸引力有几个原因[193]:(i)它们可以优化任何基础模型和元目标,没有可微性约束。(ii)不依赖反向传播避免了梯度退化问题和传统基于梯度的方法的高阶梯度计算的成本。(iii) 它们具有高度并行性以实现可扩展性。(iv) 通过维持多样化的解决方案,他们可以避免困扰基于梯度的方法的局部最小值[127]。然而,它们有许多缺点:(i)所需的群体规模随着要学习的参数数量而迅速增加。(ii) 它们可能对突变策略敏感,并且可能需要仔细的超参数优化。(iii) 它们的拟合能力通常不如基于梯度的方法,特别是对于 CNN 等大型模型。
EA 在 RL 应用中相对更常见[25]、[169](其中模型通常较小,内部优化很长且不可微分)。然而,它们也被应用于监督学习中的学习规则[195]、优化器[196]、架构[27]、[127]和数据增强策略[142] 。它们对于学习人类可解释的符号元表示也特别重要[119]。
讨论。这三个优化器也都用在常规学习中。然而,元学习相对更常采用强化学习和进化,例如L元a _ _就表示而言通常是不可微的ω。
4.3 元目标和情节设计
最后一部分是通过选择元目标来定义元学习目标L元a _ _,以及内部循环片段和外部优化之间的关联数据流。大多数方法在更新任务模型后,使用在验证集上计算的性能指标来定义元目标ω。这符合超参数和模型选择的经典验证集方法。然而,在这个框架内,有几个设计选项:
多镜头情节设计与少镜头情节设计。根据目标是提高少样本还是多样本性能,内循环学习片段可以用每个任务的许多[67]、[91]、[92]或很少[14]、[19]个示例来定义。
快速适应与渐近性能。当在内部学习阶段结束时计算验证损失时,元训练会鼓励基本任务更好的最终表现。当它被计算为每个内部优化步骤后验证损失的总和时,元训练还鼓励在基本任务中更快地学习[78]、[91]、[92]。大多数强化学习应用程序也使用后一种设置。
多任务与单任务当目标是调整学习器以更好地解决从给定系列中抽取的任何任务时,内循环学习片段对应于随机抽取的任务p ( T) [19]、[23]、[42]。当目标是调整学习器以更好地解决一项特定任务时,内循环学习片段都从同一基础任务中提取数据[15]、[67]、[173]、[180]、[181]、[197] .
值得注意的是,这两个元目标往往有不同的假设和价值主张。多任务目标显然需要一个任务族p ( T)一起工作,而单任务则不然。同时,对于多任务,元训练的数据和计算成本可以通过在元测试期间潜在地提高多个目标任务的性能来摊销;但单任务——没有新的摊销任务——需要改进当前任务的最终解决方案或渐近性能,或者元学习速度足够快才能在线。
在线与离线。虽然经典的元学习管道将元优化定义为内部基础学习器的外循环[15]、[19],但一些研究尝试在单个基础学习片段中在线执行元优化[42],[180]、[197]、[198]。在这种情况下,基本模型θ和学习者ω在单个情节中共同进化。由于现在没有一组源任务可供摊销,因此与基础模型学习相比,元学习需要更快,才能提高样本或计算效率。
其他情节设计因素。其他算子可以插入到情节生成管道中,为特定应用程序定制元学习。例如,可以模拟训练和验证之间的域转移,以在域转移[42]、[59]、[93]下进行元优化以获得良好的性能;模拟网络压缩,例如训练和验证之间的量化[199],以对网络可压缩性进行元优化;在元训练期间提供噪声标签以优化标签噪声鲁棒性[94],或生成对抗性验证集以对对抗性防御进行元优化[95]。下一节将更详细地探讨这些机会。
应用领域
在本节中,我们将简要回顾元学习在计算机视觉、强化学习、架构搜索等领域的应用方式。
5.1 计算机视觉和图形
计算机视觉是元学习技术的主要消费领域,特别是因为它对小样本学习的影响,这有望应对视觉中识别的长尾概念带来的挑战。
5.1.1 小样本学习方法
少样本学习(FSL)极具挑战性,特别是对于大型神经网络[1],[13],其中数据量通常是性能的主导因素[200],并且使用小数据集训练大型模型会导致过度拟合或非拟合-收敛。基于元学习的方法越来越能够在许多视觉问题的小数据集上训练强大的 CNN。我们提供非详尽的代表性摘要如下。
分类。元学习最常见的应用是少样本多类图像识别,其中内部和外部损失函数通常分别是训练和验证数据的交叉熵 [14] 、 [23] 、 [ 75 ] 、 [ 77 ]、[78]、[88]、[90]、[98]、[99]、[102]、[105]、[201]、[202]、[203]、[204]。以优化器为中心[19],黑盒[39],[81]度量学习[88]、[89]、[90]模型都已被考虑。
与早期方法相比,这一工作导致了性能的稳步提高[19]、[87]、[88]。然而,性能仍然远远落后于完全监督的方法,因此还有更多的工作要做。当前的研究问题包括改进跨域泛化[116]、由元训练和元测试类定义的联合标签空间内的识别[82]以及增量添加新的少镜头类[134]、[175]。
物体检测。基于少样本分类的进展,少样本目标检测 [175]、[205]已经得到证明,通常使用基于前馈超网络的方法来嵌入支持集图像并在基础模型中合成最终层分类权重。
地标预测。旨在定位图像中关键点的骨架,例如人类或机器人的关节。这通常被表述为图像条件回归。例如,基于 MAML 的模型被证明可用于人体姿势估计[206],模块化元学习已成功应用于机器人技术[136],而基于超网络的模型则应用于新颖的少镜头服装试穿。时尚单品[175]。
少镜头对象分割。由于获取逐像素标记图像的成本,这一点很重要。基于超网络的元学习器已应用于一次性机制[207],并且后来通过适应原型网络[208]提高了性能。其他模型处理分割密度低的情况[209]。
行动。除了静态图像之外,元学习还被应用于使用FFM [210]和基于优化的 [211]、[ 212 ]方法的少镜头动作识别 [210] 、[211]和预测[212] 。
图像和视频生成。在[45]中,摊销概率元学习器用于从单个图像生成对象的多个视图,生成查询网络[213]从新颖的视图渲染场景,并且通过学习初始化从少量数据生成会说话的面孔。快速适应的对抗模型[214]。在视频领域,[215]元学习了一个权重生成器,该权重生成器在给定少量示例图像作为提示的情况下合成视频。元学习还通过学习 FFM 来解决相应的优化问题来加速风格迁移[216]。
生成模型和密度估计。能够生成图像的密度估计器通常需要许多参数,因此在少样本情况下会过度拟合。PixelCNN 生成器基于梯度的元学习被证明可以实现少样本学习[217]。
5.1.2少样本学习基准
人工智能和机器学习的进展通常是通过精心设计的基准来衡量和刺激的[218]。传统的机器学习基准定义了一个任务和数据集,模型应将其从可见的实例推广到未见过的实例。在元学习中,基准设计更加复杂,因为我们经常面对一个应该从见过的任务概括到看不见的任务的学习者。因此,基准设计需要定义可以从中提取元训练和元测试任务的任务系列。已建立的 FSL 基准包括 miniImageNet [14]、[88]、Tiered-ImageNet [219]、SlimageNet [220]、Omniglot [88]和 Meta-Dataset [109]。
数据集多样性、偏差和泛化。标准基准提供了培训和评估任务,但缺乏多样性(狭窄p ( T));这些基准测试的性能并不反映现实世界中少数镜头任务的性能。例如,在 miniImageNet 中切换不同种类的动物照片并不是对泛化能力的强测试。理想情况下,基准测试将涵盖更多样化的图像类别和类型(卫星、医疗、农业、水下等),甚至测试元训练和元测试任务之间的域转换。
这里仍然有工作要做,因为即使在多镜头设置中,将深度模型拟合到非常广泛的数据分布本身也很重要[221],就像推广到样本外数据一样[42] ],[93]。类似地,当在源任务分布和目标任务分布之间引入域转移时,元学习器的性能通常会急剧下降[114]。这激发了最近的元数据集[109]和CVPR跨域few-shot挑战[222]。元数据集聚合了许多单独的识别基准,以提供更广泛的任务分布p ( T)评估适应广泛任务分布和跨领域转移泛化的能力。与此同时,[222]对从日常 ImageNet 图像推广到医学、卫星和农业图像的方法提出了挑战。最近的工作已经开始尝试通过域转移鲁棒性和样本效率的元训练来解决这些问题[116]。将模型应用于代表性不足的国家的数据时也会出现泛化问题[223]。
5.2 元强化学习和机器人技术
强化学习通常涉及学习控制策略,使代理能够在环境中执行顺序动作任务后获得高奖励。由于奖励稀疏、探索的需要以及优化算法的高方差[224],强化学习通常会遇到样本效率极低的问题。然而,应用程序通常自然地需要元学习可以利用的任务系列——例如移动到或到达不同的位置[185]、在不同的环境中导航[39]、穿越不同的地形[64]、驾驶不同的汽车[184] ],与不同的竞争对手代理竞争[62],并处理不同的障碍,例如单个机器人肢体的故障[64]。因此,强化学习提供了一个肥沃的应用领域,其中任务分布的元学习在提高样本效率方面比标准强化学习算法取得了显着的成功。人们可以直观地了解这些方法的功效。例如,迷宫布局的元知识可转移到需要在迷宫内导航的所有任务。
![](https://i-blog.csdnimg.cn/blog_migrate/e0add4c7a8f907bde6dea2d9b608df31.png)
5.2.1 方法
先前讨论的几种元表示已经在强化学习中进行了探索,包括学习初始条件[19]、[170]、超参数[170]、[174]、步长方向[77]和步长[172]。这些使得基于梯度的神经策略学习能够减少环境交互,并训练快速卷积[39]或循环[24]、[113]黑盒模型,以通过嵌入环境经验来合成策略。最近的工作开发了改进的元优化算法[167]、[168]、[169]为这些任务提供了元强化学习的理论保证[225]。
探索。强化学习的一个相当独特的元表示是探索策略。强化学习的复杂性在于,数据分布不是固定的,而是根据智能体的行为而变化。此外,稀疏的奖励可能意味着代理必须采取许多行动才能获得可用于指导学习的奖励。因此,如何探索和获取用于学习的数据是任何 RL 算法的关键因素。传统上,探索是基于采样随机动作[226]或手工启发式[227]。一些元强化学习研究明确将探索策略或好奇心功能视为元知识ω; 并将其习得建模为元学习问题[26]、[183] 、[184]、[228] ——通过“学习如何探索”来提高样本效率。
优化。强化学习是一个困难的优化问题,其中学习的策略通常远非最优,即使在“训练集”阶段也是如此。这意味着,与元 SL 相比,元强化学习方法更常用于提高渐近性能[25]、[174]、[180]以及样本效率,并且总体上可以带来更好的解决方案。许多元强化学习框架的元目标是代理在整个事件中的净回报,因此样本高效和渐近性能学习都会得到奖励。优化难度也意味着在学习损失(或奖励)方面做了相对较多的工作[22]、[120]、[180]、[229]强化学习代理应该优化它,而不是传统的稀疏奖励目标,或者除了传统的稀疏奖励目标之外。与真实目标相比,这种学习损失可能更容易优化(更密集、更平滑)[25]、[229]。这也与作为奖励学习的探索相关联,并且可以被视为实例化学习内在动机的元学习[181]。
在线元强化学习 元强化学习的很大一部分研究涉及单任务设置,其中元知识例如损失[22]、[180]、奖励[174]、[181]、超参数[172]、[ 173],或探索策略[182]在学习单个任务时与基本策略一起在线训练。因此,这些方法不需要任务族,并且可以直接改进各自的基础学习器的表现。
On-Policy 与 Off-Policy Meta-RL。传统强化学习中的一个主要分歧是在策略学习和离策略学习之间,例如 PPO [226]与 SAC [230]。离策略方法通常具有更高的样本效率。然而,离策略方法很难扩展到元强化学习,导致更多元强化学习方法建立在同策略强化学习方法之上,从而限制了元强化学习的绝对性能。离策略元强化学习方法的早期工作已经取得了很好的成果[22]、[111]、[166]、[229]。离策略学习还提高了元训练阶段的效率[111],这在元强化学习中可能会很昂贵。它还提供了通过重放元训练中的缓冲区样本来加速元测试的新机会[166]。
其他趋势和挑战。[64]值得注意的是在现实世界的物理机器人上展示了成功的元强化学习。机器人技术中的知识转移通常最好从组合角度进行研究 [231]。例如,行走、导航和物体拾取/放置可以是房间清洁机器人的子程序。然而,开发具有有效组合知识迁移的元学习器是一个悬而未决的问题,模块化元学习[137]是一种选择。无监督元强化学习变体旨在在没有手动指定奖励的情况下执行元训练[232],或者在元测试中适应变化的环境但没有新的奖励[233]。持续适应为智能体提供了适应一个元测试片段中的一系列任务的能力[62],[63],[64],类似于持续学习。最后,元学习也被应用于模仿[112]和逆强化学习[234]。
5.2.2 基准测试
强化学习的元学习基准通常会定义一个要解决的族,以便训练和评估学习如何学习的代理。这些可以是要实现的任务(奖励功能),也可以是域(不同的环境或 MDP)。
离散控制 RL。视觉驱动控制的早期元强化学习基准是街机学习环境(ALE)[235],它定义了一组经典的 Atari 游戏,分为元训练和元测试。这里的协议是在元测试环境中评估固定数量的时间步后的返回。一个挑战是巨大的多样性(广泛p ( T))跨游戏,这使得成功的元训练变得困难,并导致知识转移的收益有限[235]。另一个基准[236]基于将 Sonic-hedgehog 级别分为元训练/元测试。这里的任务分布更窄,有益的元学习相对更容易实现。科布等人。[237]提出了两种专门设计的视频游戏来对元强化学习进行基准测试。CoinRun游戏[237]提供232程序生成的不同难度和视觉外观的级别。他们表明,需要大约 10,000 个级别的元训练经验才能可靠地推广到新级别。CoinRun的主要目的是测试直接泛化而不是快速适应,并且可以被视为提供在MDP环境上的分布来测试泛化而不是在任务上测试适应。为了更好地测试更广泛的任务分布中的快速学习,ProcGen [237]提供了一组 16 个程序生成的游戏,包括 CoinRun。
连续控制 RL。虽然gym [238]等常见基准极大地有益于强化学习研究,但元强化学习基准的共识较少,使得现有工作难以比较。大多数连续控制元强化学习研究都提出了自制基准,这些基准是特定任务的低维参数变体,例如导航到不同位置或速度[19]、[111]或穿越不同地形[64]。最近提出了几个多 MDP 基准[239]、[240] ,但这些主要测试跨不同环境扰动而不是不同任务的泛化。Meta-World 基准[241]提供了一套包含 50 个基于状态驱动的连续控制任务,包括拉杆和开门等简单参数变量。该基准应该能够进行更具可比性的评估,并调查任务分布内和任务分布之间的泛化情况。元世界评估[241]表明现有的元强化学习方法很难泛化广泛的任务分布和元训练/元测试转变。这可能是因为我们的元强化学习模型在数量和覆盖任务方面太弱和/或基准太小,无法有效地学习。另一个最近适合元强化学习的基准是 PHYRE [242]它提供了一组 50 个基于视觉的物理任务模板,可以通过简单的操作来解决,但可能需要基于模型的推理才能有效解决。这些还提供模板内和跨模板泛化测试。
讨论。视觉驱动元强化学习的一个复杂问题是,将视觉泛化(如计算机视觉)与更普遍的控制策略的快速学习分开。例如,CoinRun [237]评估显示标准视觉技术(例如批量归一化)带来了巨大的好处,表明感知是一个主要瓶颈。
5.3 神经架构搜索(NAS)
架构搜索[21]、[27]、[28]、[38]、[127]可以看作是一种超参数优化,其中ω指定神经网络的架构。内部优化训练具有指定架构的网络,外部优化搜索具有良好验证性能的架构。NAS 方法已根据“搜索空间”、“搜索策略”和“性能估计策略”进行了分析[38] 。这些对应于假设空间ω、元优化策略和元目标。NAS 特别具有挑战性,因为:(i) 全面评估内部循环的成本很高,因为它需要训练一个多次训练的神经网络才能完成。这导致了近似,例如对训练集进行二次采样、内循环的提前终止以及两者的交错下降ω和θ [21]如在线元学习。(ii.) 搜索空间很难定义和优化。这是因为大多数搜索空间都很宽泛,并且架构空间不是微分的。这导致对限制搜索空间的单元级搜索[21]、[28] 、RL [28]、离散梯度估计器[129]和进化[27]、[127]的依赖。
热点问题。虽然 NAS 本身可以被视为超参数或假设类元学习的实例,但它也可以与其他形式的元学习交互。由于 NAS 成本高昂,一个热门问题是发现的架构是否可以推广到新问题[243]。跨多个数据集的元训练可能会改进架构的跨任务泛化[132]。最后,我们还可以定义 NAS 元目标来训练一种适合少样本学习的架构[244]。与快速适应初始条件元学习方法(例如 MAML [19])类似,我们可以训练良好的初始架构[131]或架构先验[132]易于适应特定任务。
基准测试NAS 通常在 CIFAR-10 上进行评估,但执行成本高昂,并且由于超参数调整等混杂因素,结果难以重现。为了支持可重复和可访问的研究,NASbenches [245]为大量网络架构提供了预先计算的性能测量。
5.4 超参数优化
元学习解决超参数优化时考虑的问题ω指定超参数,例如正则化强度或学习率。有两种主要设置:我们可以学习超参数,以改善对任务分布(仅单个任务)的训练。前一种情况通常与小样本应用相关,特别是在基于优化的方法中。例如,可以通过学习每步每层的学习率来改进 MAML [78]。我们希望学习单个任务的超参数的情况通常与多镜头应用程序[69]、[154]更相关,其中可以从训练数据集中提取一些验证数据,如第 2.1 节中所述。与经典方法(如_ _通过网格或随机[70]搜索或贝叶斯优化[71]进行交叉验证,这些方法通常只有在使用数十个超参数时才能成功。
5.5 贝叶斯元学习
贝叶斯元学习方法通过贝叶斯分层建模将元学习形式化,并使用贝叶斯推理进行学习而不是直接优化参数。在元学习背景下,贝叶斯学习通常很棘手,因此使用随机变分推理或采样等近似方法。
贝叶斯元学习重要的是为以下方面提供了不确定性测量:ω参数,以及预测不确定性的测量,这对于安全关键应用、强化学习探索和主动学习非常重要。
许多作者探索了贝叶斯方法来元学习复杂的神经网络模型,并取得了有竞争力的结果。例如,将变分自动编码器扩展为明确地建模任务变量[73]。神经过程[176]定义了一个受高斯过程启发但用神经网络实现的前馈贝叶斯元学习器。深度核学习也是一个活跃的研究领域,它已适应元学习设置[246],并且通常与高斯过程结合使用[247]。在[74]中,基于梯度的元学习被改写为分层经验贝叶斯推理问题(即先验学习),它对特定任务参数的不确定性进行建模θ。贝叶斯 MAML [248]通过使用贝叶斯集成方法改进了该模型,该方法允许非高斯后验θ,后来的工作消除了对昂贵的集成的需要[45],[249]。在概率MAML [96]中,它是元知识中的不确定性ω这是建模的,而 MAP 估计则用于θ。这些贝叶斯方法越来越多地被证明可以解决模糊任务、主动学习和强化学习问题。
与上述不同,元学习也被提出来帮助贝叶斯推理过程本身,如[250]中作者采用贝叶斯采样器来提供有效的自适应采样方法。
5.6 无监督和半监督元学习
无监督学习可以通过多种不同的方式与元学习交互,具体取决于无监督学习是在内循环还是外循环中执行,以及在元训练与元测试期间执行。
监督学习者的无监督学习。这里的目的是学习监督学习算法(例如,通过 MAML [19]样式初始条件进行监督微调),但这样做不需要大量源任务来进行元训练[251],[ 252]、[253]。为此,通过聚类或类保留数据增强在没有监督的情况下构建合成源任务,并用于定义元训练的元目标。
无监督学习者的监督学习。这一系列方法旨在对无监督学习者进行元训练。例如,通过训练无监督算法,使其适用于下游监督学习任务。人们可以训练无监督学习规则[16]或损失[99],[122],以便优化下游监督学习性能——在监督任务中重新使用无监督表示[16],或根据无标签数据进行调整后[99] ]、[122]。或者,当聚类等无监督任务存在于一个族中而不是孤立存在时,那么在多个源任务上学习“如何聚类”可以为该族中的新聚类任务提供更好的性能[177 ]、[178]、[179]、[254]、[255]。该组中使用前馈模型的方法通常称为摊销聚类 [178]、[179],因为它们将聚类算法的典型迭代计算分摊到训练单个推理模型的成本中,该推理模型随后使用单个前馈传递执行聚类。总的来说,这些方法通过将无监督学习问题转化为具有明确监督(元)目标的问题,有助于解决无监督学习问题的不确定性。
半监督学习(SSL)。这一系列方法的目的是训练一个基础学习器,在从标记和未标记的训练示例的混合中学习后,能够在验证数据上表现良好。在few-shot机制中,方法包括度量学习器[219]的SSL扩展,以及置信度[256]或实例权重[157]的元学习度量,以确保在自我训练中使用可靠标记的实例。在多镜头机制中,方法包括标签的直接转导训练[156],或训练教师网络为学生生成标签[257]。
5.7 持续、在线和适应性学习
持续学习。指学习按顺序呈现的任务的类似人类的能力。理想情况下,这是在利用前向传输的同时完成的,因此根据过去的经验可以更好地学习新任务,而不会忘记以前学习的任务,也不需要存储过去的数据[61]。深度神经网络很难满足这些标准,特别是因为它们往往会忘记在早期任务中看到的信息——这种现象被称为灾难性遗忘。元学习可以将持续学习的要求纳入元目标,例如通过定义一系列学习片段,其中支持集包含一个新任务,但查询集包含从迄今为止看到的所有任务中提取的示例[ 105 ] ,[171] . 可以学习各种元表示来提高持续学习性能,例如权重先验[134]、梯度下降预处理矩阵[105]或 RNN 学习优化器[171]或特征表示[258]。一个相关的想法是支持本地编辑更新的元训练表示[259],以实现不受干扰的改进。
在线和自适应学习还考虑到达流中的任务,但更关心有效适应流中当前任务的能力,而不是记住旧任务。为此,提出了 MAML 的在线扩展[97],以在任务序列期间在线执行 MAML 样式的元训练。同时,其他人[62]、[63]、[64]考虑了在对一系列目标任务进行元测试适应能力之前提前对源任务执行元训练的设置。
基准。许多持续学习的基准与标准深度学习方法配合得很好。然而,大多数人无法轻易使用元学习方法,因为他们的样本生成例程不提供大量显式学习集和显式评估集。[97]、[171]、[258]中为定义元学习就绪连续基准采取了一些早期步骤,主要由 Omniglot 和 MNIST 的扰动版本组成。然而,其中大多数只是为了演示方法而构建的任务。更明确的基准工作可以在[220]中找到,它是为元学习方法和非元学习方法构建的。
5.8 领域适应和领域泛化
域转移是指部署中遇到的数据统计与训练中使用的数据不同。人们已经研究了许多领域适应和泛化算法来在监督、无监督和半监督设置中解决这个问题[58]。
领域概括。域泛化旨在训练模型,使其对训练-测试域转移具有更强的鲁棒性[260],通常是通过利用训练域上的分布。使用相对于训练域[261]移动的验证域,可以(元)学习不同类型的元知识,例如正则化器[93]、损失[42]和噪声增强[116],以最大化学习模型对训练测试域转移的鲁棒性。
域适应。为了改进传统的领域适应[58],元学习可用于定义元目标,以优化基本无监督 DA 算法的性能[59]。
基准。DA 和 DG 的流行基准考虑跨多个领域的图像识别,例如照片/素描/卡通。PACS [262]提供了一个很好的入门基准,Visual Decathlon [42]、[221]和元数据集[109]提供了更大规模的替代方案。
5.9 语言和言语
语言建模。小样本语言建模越来越多地展示了元学习器的多功能性。早期的匹配网络在填写缺失单词等一次性任务上表现出了令人印象深刻的性能[88]。此后还解决了更多任务,包括文本分类[135]、神经程序归纳[263]和合成[264]、英语到SQL程序合成[265]、基于文本的关系图提取器[266]、机器翻译[267] ],并快速适应对话中的新角色[268]。
语音识别。深度学习现在是最先进的自动语音识别(ASR)的主导范例。元学习开始应用于解决 ASR 中出现的许多小样本适应问题,包括学习如何训练低资源语言[269]、跨口音适应[270]以及针对单个说话者的优化模型[271] ]。
5.10 新兴话题
环境学习和 Sim2Real。在 Sim2Real 中,我们感兴趣的是在模拟中训练一个能够推广到现实世界的模型。经典的域随机化方法模拟域/MDP 上的广泛分布,目的是训练一个足够鲁棒的模型以在现实世界中取得成功,并且在视觉 [272] 和RL [ 158]方面都取得了成功。尽管如此,调整模拟分布仍然是一个挑战。这导致了元学习设置,其中内层优化在模拟中学习模型,外层优化学习模型。L元a _ _评估模型在现实世界中的性能以及元表示ω对应模拟环境的参数。这种范式已用于 RL [160]以及视觉[159]、[273]中。在这种情况下,用于元训练任务的源任务不是预先提供的数据分布,而是由 omega 参数化,D来源_ _ _ _ _( ω )。然而,在通过内部任务学习步骤的长图进行昂贵的反向传播方面仍然存在挑战;以及最大限度地减少现实世界的数量L元a _ _Sim2Real 情况下的评估。
元学习造福社会。元学习有助于应对人工智能在社会公益应用中出现的挑战,例如医学图像分类和药物发现,而这些领域的数据往往是稀缺的。鉴于全球病理学家短缺,医学领域的进展尤其重要[274]。在[5]中,LSTM 与图神经网络相结合来预测一次性数据体系中的分子行为(例如毒性)。在[275]中,MAML适用于弱监督的乳腺癌检测任务,并且任务的顺序根据课程选择。MAML还与去噪自动编码器相结合来进行医学视觉问答[276],同时学习权衡支持样本[219]适用于具有噪声标签的皮肤病变分割任务的像素加权[277]。
非反向传播和生物学上合理的学习器。大多数对基本模型使用显式(非前馈/黑盒)优化的元学习工作都是基于反向传播的梯度下降。元学习可以定义函数类ω从而发现无监督的新学习规则[16]或生物学上合理的[46]、[278]、[279],利用当代深度学习中不太常用的思想,例如 Hebbian 更新[278]和神经调节[279]。
网络压缩。现代 CNN 需要大量内存,这对于嵌入式设备来说可能是令人望而却步的。因此,量化和剪枝等各种形式的网络压缩是热门研究领域[280]。元学习也开始应用于这一目标,例如训练梯度生成器元网络,允许训练量化网络[199],以及权重生成器元网络,允许使用梯度训练量化网络[281] ]。
通讯。系统越来越受到深度学习的影响。例如,通过学习超越手工设计的实际通道代码的编码系统[282]。少样本元学习可用于提供代码快速适应不断变化的信道特性的能力[283]。
主动学习(AL)。方法包装监督学习,并定义选择性数据注释的策略——通常在可以顺序获取注释的环境中。AL 的目标是找到要注释的最佳数据子集,以便用最少的注释最大化下游监督学习的性能。AL 是一个经过深入研究的问题,有大量手工设计的算法[284]。元学习可以通过以下方式将主动学习算法设计映射到学习任务中:(i)将内层优化定义为迄今为止带注释数据集上的传统监督学习,(ii)定义ω成为选择最佳未标记数据点进行注释的查询策略,(iii)将元目标定义为根据查询策略迭代学习和注释后的验证性能,(iv)执行外层优化以训练最佳注释查询策略[187]、[188]、[189]。然而,如果使用标签来训练 AL 算法,它们需要跨任务进行泛化以分摊其训练成本[189]。
使用标签噪声学习。当通过网络抓取或众包收集大型数据集时,通常会出现这种情况。虽然有许多针对这种情况手工设计的算法,但最近的元学习方法已经解决了标签噪声问题。例如,通过传导学习样本加权来降低噪声样本的权重[147],或者学习对噪声标签训练稳健的初始条件[94]。
对抗性攻击和防御。通过向数据中添加精心设计的人类看不见的扰动,深度神经网络可能会被欺骗,对本应易于识别的数据点进行错误分类[285]。近年来,已经发布了许多攻击和防御方法,防御策略通常包括精心设计的架构或训练算法。与域转移的情况类似,我们可以通过定义对抗性攻击下性能的元损失来训练学习算法的鲁棒性[95],[286]。
推荐系统。是商业领域机器学习的成熟消费者。然而,为历史交互数据很少的新用户或新推荐项目进行引导推荐仍然是一个挑战,称为冷启动问题。元学习将黑盒模型应用于项目冷启动[287],将基于梯度的方法应用于用户冷启动[288]。
挑战和悬而未决的问题
多样化和多模态的任务分布将元学习器适应任务分布的难度p ( T)可以取决于它的宽度。元学习的许多巨大成功都是在狭窄的任务族中取得的,而不同任务分布的学习可以挑战现有的方法[109]、[221]、[241]。这可能部分是由于任务之间的梯度冲突[289]。
许多元学习框架[19]隐含地假设任务的分布p ( T)是单模态的,并且是单一的学习策略ω为大家提供了一个很好的解决方案。然而,任务分配通常是多模式的;例如计算机视觉中的医疗与卫星与日常图像,或者机器人技术中的将钉子插入孔中与开门[241]。分布中的不同任务可能需要不同的学习策略,这用今天的方法很难实现。在普通的多任务学习中,这种现象得到了相对充分的研究,例如将任务分组为簇[290]或子空间[291]的方法。然而,这在元学习中才刚刚开始探索[292]。
元概括。元学习对跨任务提出了新的泛化挑战,类似于传统机器学习中跨实例泛化的挑战。有两个子挑战:(i)第一个是将元训练推广到来自以下内容的新颖元测试任务:p ( T)。这种情况会更加严重,因为可用于元训练的任务数量通常很少(远少于传统监督学习中可用的实例数量),从而难以泛化。在记忆 [201]的幌子下,已经很好地研究了少样本学习中泛化的一种失败模式,当每个元训练任务可以直接解决而无需基于支持集执行任何特定于任务的适应时,就会发生这种失败模式。在这种情况下,模型无法在元测试和特定正则化器中泛化[201]已经有人提出来防止这种元过度拟合。(ii) 第二个挑战是推广到与训练任务不同的分布中提取的元测试任务。这在元学习的许多潜在实际应用中是不可避免的,例如将小样本视觉学习从 ImageNet 的日常训练图像推广到医学图像等专业领域[222]。从学习者的角度来看,这是领域转移问题的元级概括,正如在监督学习中观察到的那样。通过正则化、迁移学习、领域适应和领域泛化的元泛化来解决这些问题是新兴方向[116]。此外,我们尚未了解哪种元表示在某些类型的域转移下往往能更好地泛化。
任务族。许多现有的元学习框架,特别是对于小样本学习,需要任务族进行元训练。虽然这确实反映了人类的终生学习,但在某些应用程序中,此类任务系列的数据可能无法获得。无监督元学习[251]、[252]、[253]和单任务元学习方法[42]、[173]、[180]、[181]、[197]可以帮助缓解这一要求;正如上面讨论的元泛化的改进一样。
计算成本和多次射击。如第 2.1 节所示,双层优化的简单实现在时间(因为每个外部步骤需要多个内部步骤)和内存(因为反向模式微分需要存储中间内部状态)方面都很昂贵。出于这个原因,大部分元学习都集中在少样本机制[19]上,其中内部梯度步骤(也称为地平线)的数量很小。然而,人们越来越关注寻求将基于优化的元学习扩展到多镜头机制的方法,在这种情况下,长期视野是不可避免的。流行的解决方案包括隐式微分ω [154],[163],[293],前向模式微分ω [67]、[69]、[294]、梯度预处理[105]、进化策略[295]、求解贪婪版本ω通过交替内部优化的内部和外部步骤[21]、[42]、[198]、截断[296]、快捷方式[297]或反转[190]在线进行。长视野元学习也可以通过学习最小化任务流形上的梯度下降轨迹长度的初始化来实现[298]。最后,另一类方法通过内循环中的封闭式求解器加速元训练[164]、[165]。
这些策略中的每一种都在以下轴上提供了不同的权衡:元测试时的准确性、计算和内存成本(作为大小)ω随着范围变长,计算和内存成本也会增加。隐式梯度扩展到高维ω; 但只为其提供近似梯度,并要求内部任务损失是以下函数ω。前向模式微分是精确的并且没有这样的限制,但是与维度的扩展性很差ω。在线方法在内存和计算方面都很便宜,但存在短期偏差[299],因此元测试精度较低。同样的情况也适用于廉价但存在截断偏差的截断方法[300]。梯度退化也是多镜头机制中的一个挑战,解决方案包括扭曲层[105]或梯度平均[69]。
就元测试阶段解决新任务的成本而言,FFM 比基于优化的元学习器具有显着优势,这使得它们对于涉及在智能手机等移动设备上部署学习算法的应用具有吸引力 [6 ],例如实现个性化。尤其如此,因为当代深度学习软件框架的嵌入式设备版本通常缺乏对基于反向传播的训练的支持,而 FFM 不需要这种支持。
结论
元学习领域的兴趣迅速增长。关于它如何与邻近领域相关、它可以应用于什么以及如何对其进行基准测试,这带来了一定程度的混乱。在这项调查中,我们试图通过从方法论的角度彻底调查该领域来澄清这些问题——我们将其分解为元表示、元优化器和元目标的分类法;并且从应用的角度来看。我们希望这项调查能够帮助新人和从业者在这个不断发展的领域中定位自己的发展和利用,并突出未来研究的机会。