Zagreus

V1

2023/03/30阅读:24主题:默认主题

MAML

Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks

之前看到一篇图异常检测的论文(Few-shot Network Anomaly Detection via Cross-network Meta-learning. "Ding et al. 2021")用到了MAML这个算法。点进去一看7000+引用,就拜读了这篇论文。

考虑到大家(比如刚看到这篇论文的我)可能对这块没有那么熟悉,先大致介绍一下MAML这篇论文在机器学习社区中的定位。泛化是机器学习永恒的追求,Multi-Task Learning(多任务学习)和Meta-Learning(元学习)均不满足于数据集或数据分布层级的泛化,前者追求任务层级的泛化,后者追求学习方式层级的泛化。这两个目标是上个世纪末一些野心勃勃的研究者提出的,要真正实现它们实在太难了。因此现在关于这两个话题的研究往往是一些用于提升泛化能力或学习效率的技术,比如few-shot learning(少样本学习)。MAML打的是Meta-Learning的旗号,但干的事其实是few-shot multi-task learning。

问题定义

下面具体地介绍一下MAML文中所指的Meta-Learning究竟是什么问题:

给定来自任务 的数据,Meta-Learning旨在更高效地解决新任务

(通常把训练任务集 称为support set,测试任务集 称为query set)这里有一个重要的假设,即这些任务服从某个分布:

可以看到,这里所作的无非是把一个大的数据集用“任务”划分成了很多个小数据集。因此,我们可以将这里的Meta-Learning问题视为我们熟知的机器学习问题,只不过每个数据点是一个小数据集而已。

MAML算法

既然在数据集层级加了一个嵌套,那自然要在优化过程上加一个嵌套,因为机器学习无非是一个优化过程。这个问题因此就是一个两阶段的优化问题。第一个阶段针对着整个任务分布 进行优化,旨在提取不同任务的共性,得到模型参数 ;第二个阶段针对特定任务 进行优化,旨在提取该任务中不同样本的共性,得到模型参数 。这看起来好像和fine tuning没什么区别了。但这里的问题是,我们并不知道我们将要遇到的那个新任务 的具体情况,它正是要被用来检验算法的泛化能力的。因此,这里的Meta-Learning并不能进行第二个阶段的优化,它只能对第一个优化过程做文章,使其看起来仿佛已经经历过了第二个优化过程一样。

实线表示第一个优化,虚线表示第二个优化
实线表示第一个优化,虚线表示第二个优化

如何达成这一点呢?最懒的方法就是直接拿一个MLP(RNN.etc.)模拟第一个优化过程。这个MLP输入整个训练任务集,输出一个能表示任务分布的新的MLP。后者则输入 输出 。这类方法被称为Black-Box Adaptation,就是黑盒方法。那另一个想法就是要自己设计第一个优化过程,这被称为基于优化的方法。

MAML的设计思路来源于其目标,few-shot learning,那就是要让第一个优化过程的结果 能够快速地转到新任务 的一个较优值,比如通过一次由少数几个样本提供的梯度下降:

这个目标通过学习来完成:

其算法如下:

MAML伪代码
MAML伪代码

可以看到,在理解了MAML要达成的目标后,其算法其实是相当简单的。

实验

MAML是一个相当通用的算法,只要能计算梯度原则上都可以用。作者在原文中也设计了三大实验,囊括回归、分类和强化学习。

回归

回归任务设计了一个让MAML学习正弦函数的实验。这里的任务就是不同的频率和相位。这里的 就是每个任务的样本数。实验表明,MAML不仅比先用大数据集训练,再用小数据集训练的方法(图中的pretrained)性能好,而且可以通过少数的这几个样本推测出函数的性质。

MAML通过大概10个样本和10次梯度更新就能达到不错的效果
MAML通过大概10个样本和10次梯度更新就能达到不错的效果
梯度更新次数的影响
梯度更新次数的影响

分类

分类实验用的是few-shot learning的两个benchmark,Omniglot和MiniImagenet。都是图片分类的任务。实验过程也是按照few-shot learning的N-way,K-shot的思路走的,也就是训练一个分类器来区分N个以前未见过的图片,每张图片仅有K个样例。其结果如下:

考虑到关心强化学习的读者应该是极少数,这里不再占用篇幅。有兴趣的读者可以移步原论文。

结语

Meta-Learning及其相关的Multi-Task Learning,Transfer Learning都是相互定义并且很绕的概念。本文当然没办法彻底地将它们说清楚,这或多或少会对MAML的理解产生影响。但作为一篇引用7000+的论文,MAML的确传达出了作者们对机器学习的独特见解,其设计的算法也被证明是确实有效的。这篇推文旨在抛砖引玉,希望为读者清楚地陈述出它的内容,并尝试提供一些洞见。如有不足之处,敬请指正。

分类:

人工智能

标签:

人工智能

作者介绍

Zagreus
V1