Meta-Learning in Neural Networks: A Survey
Citation: 236 (2021-08-29)
1. Motivation
一个典型的机器学习算法包含这样一些元素:
(1)从头训练(trained from scratch);
(2)针对一个特定的任务(for a specific task);
(3)使用一个固定的学习算法(using a fixed learning alogirthm);
(4)人工设计(designed by hand)。
深度学习在一些领域取得了巨大的成功:
(1)拥有丰富的数据;
(2)有巨大的算力资源。
元学习(Meta Learning)提供了一个新的学习范式:
机器学习模型从多个学习episodes(经历、片段?)中获取经验,这些episodes往往覆盖一些相近任务(related task)的分布,然后用这个经验来提升未来的学习效果。
近些年深度学习的成功可以看做是特征、模型的联合学习,而元学习可以看做是特征、模型与算法的联合学习。
2. Background
2.1 Formalizing Meta-Learning
2.1.1 Conventional Machine Learning
给定训练数据,要学习一个预测模型,是要学习的模型的参数。
优化目标:
是损失函数,用来衡量真实值与预测值之间的差异。
denotes the dependence of this solution on assumptions about 'how to learn'。不太好翻译,表示当前解法的一些假设,比如参数的优化方法的选择(哪种优化器)或者模型的选择等。
模型的泛化能力在一个有标签的测试数据上进行验证。
一般来说,传统的假设是对于每个问题,优化是从头开始学习的;也是预先决定的。
就是这个预先决定,使得模型的效果以及泛化能力受到影响。因此,元学习从改变传统机器学习的第一假设开始,不使用确定的预先决定的假设,而是从一些任务的分布中来学习。
2.1.2 Meta Learning: Task-Distribution View
考虑任务,learning to learn变成,
考虑个source tasks,
,每一个task都有训练集与验证集,训练集叫support set,验证集叫query set。
"Learning how to learn"的meta-training环节(学习meta-knowledge )表示为,
Meta-testing环节,。根据学习到的meta-knowledge 在之前未见过的任务上训练baseline模型,
2.1.3 Meta-Learning: Bilevel Optimization View
Meta-training提到的优化目标:
求解方式是将meta-training当成一个bilevel optimization problem,即一个优化问题包含另一个优化问题当约束。
s.t.
是外部优化目标(outer objective),是内部(inner)优化目标。
优化内部目标时,不改变外部目标的优化对象。
2.1.4 Meta-Learning: Feed-Forward Model View
以一个线性回归示例,
总的来说,希望训练得到的在从中采样出来的未知任务,以及未知数据上有好的效果。
通过训练,将一个训练集映射到一个weight vector上,从而让为从中采样的未知任务提供一个好的solution。
References
[1] Hospedales, Timothy, et al. "Meta-learning in neural networks: A survey." arXiv preprint arXiv:2004.05439 (2020).