MAML与其说是一个深度学习模型,倒不如说是一个框架,提供一个meta-learner用于训练base-learner。这里的meta-learner即MAML的精髓所在,用于learning to learn;而base-learner则是在目标数据集上被训练,并实际用于预测任务的真正的数学模型。绝大多数深度学习模型都可以作为base-learner无缝嵌入MAML中,而MAML甚至可以用于...
Base learner简写为 b,是一个函数或神经网络。通过任务损失 loss_{\operatorname{task}} 估计主要任务目标。它的参数由慢权值 W 和example-level的快权值 W^{*} 构成 动态表征函数 u,对样本学习到一个嵌入。参数由慢权值 Q 和example-level快权值 Q^{*} 组成 Meta learner由快速权值生成函数 m 和d 组成,...
少样本学习(few-shot learning):ML学界将其视为一个元学习问题,目标是学习方法对少量样本的不同学习任务都能够最小化泛化误差。这些方法典型地由嵌入模型构成,即先将输入域映射到特征空间,再用基学习器(base learner)从特征空间映射到某任务;元学习的目标是学习一个嵌入模型以使得基学习器能够在不同任务上泛化的很...
元学习(meta-learning)是目前广泛使用的处理小样本学习问题的方法,它的目的是在学习不同任务的过程中积累经验,从而使得模型能够快速适应新任务。比如在MAML(Model-Agnostic Meta- Learning)中,通过搜寻最优初始化状态,使得base-learner能够快速适应新任务。但是这一类元学习方法具有两个缺点: 1. 需要大量相似的任务以进...
MAML与其说是一个深度学习模型,倒不如说是一个框架,提供一个meta-learner用于训练base-learner。这里的meta-learner即MAML的精髓所在,用于learning tolearn;而base-learner则是在目标数据集上被训练,并实际用于预测任务的真正的数学模型。绝大多数深度学习模型都可以作为base-learner无缝嵌入MAML中,而MAML甚至可以用于...
本质是一种“learning to learn”的学习过程,不同于常用的深度学习模型(依据数据集去学习如何预测或者分类),meta-learning是学习“如何更快学习一个模型”的过程 MAML算法:Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks 模型无关框架,定义一种架构,使用meta-learning去训练base-learner。
在一些最早的元学习中,Naik[1992]使用以前训练运行的结果来修改反向传播的下降方向,但这种更新策略在某种程度上是临时的,而且不是直接学到的。Santoro[2016]等人的工作采用了和我们类似的方法,将多任务学习转化为泛化,但他们训练了一个base learner,而不是更高级别的训练算法。
传统的基于梯度的元学习在学习过程当中分为外循环和内循环. 内循环更新方式大部分都是卡死的例如采取SGD更新base learner, 不会针对不同任务做出调整. 另外有针对任务做出调整的, 但是采取的是直接输出更新后模型参数的方法(也就是Model-based meta-learning). 那么这篇论文就是取道中间采取一种按传统梯度更新公式...
一、Meta Learning Meta Learnig,元学习,就是能够让机器学习如何去学习(Learning to Learning),Meta学习算法能够依据自己表现的反馈信号及时地不断的调整其结构和参数空间, 使得模型能够在新环境中通过累计经验提升表现性能,举个例子就是,机器之前学习了100个task,之后机器学习第101个task的时候,会因为之前学习的100个...
super(MetaLearner, self).__init__() self.base_model = base_model self.num_tasks = num_tasks self.lr_inner = lr_inner self.lr_outer = lr_outer self.optimizer_outer = optim.Adam(self.parameters(), lr=lr_outer) def forward(self, task_data): # task_data是一个包含训练和测试数据的元...