Meta-Learning(0)

小白刚刚接触Meta-Learning,在网上搜索了相关资料进行了整理,今后还会进行更深入的学习。
什么是元学习?
元学习是机器学习的一个子领域,是将自动学习算法应用于机器学习实验的元数据上。现在的 AI 系统可以通过大量时间和经验从头学习一项复杂技能。但是,我们如果想使智能体掌握多种技能、适应多种环境,则不应该从头开始在每一个环境中训练每一项技能,而是需要智能体通过对以往经验的再利用来学习如何学习多项新任务,因此我们不应该独立地训练每一个新任务。这种学习如何学习的方法,又叫元学习(meta-learning),是通往可持续学习多项新任务的多面智能体的必经之路。
近一段时间来,元学习(Meta-Learning)在深度学习领域获得了广泛的关注。与大部分其他的机器学习算法相比,元学习最突出的特点是“Learning to Learn”,它解决的是学习如何学习的问题。,即用机器学习的方法去学习训练方法。
Meta-Learning已经成为继Reinforcement Learning(增强学习)之后又一个重要的研究分支。对于人工智能的理论研究,呈现出了Artificial Intelligence–> Machine Learning --> Deep Learning --> Deep Reinforcement Learning–> Deep Meta Learning
传统的机器学习研究模式是:获取特定任务的大型数据集,然后用这个数据集从头开始训练模型。很明显,这和人类利用以往经验,仅仅通过少量样本就迅速完成学习的情况相差甚远。要想实现足够聪明的人工智能,算法必须学会如何学习。很多研究者们曾对此提出过不同的解决方案,其中包括 UC Berkeley(伯克利加州大学)的研究人员提出的与模型无关的元学习(MAML)方法。
与模型无关的元学习
MAML(Model-Agnostic Meta-learning,与模型无关的元学习)算法提出的初衷是因为目前深度学习所需要的样本量大,而且学习速度慢,在某一个特定的任务训练好参数以后,面对一个新的任务,即使这个任务跟之前的任务具有相关性,但它的鲁棒性也不好,需要重新训练。所以伯克利分校提出了这样一种算法:通过少量的任务集样本去训练好网络,然后在面对一个新的任务时,能够很快的训练好参数,完成学习过程。这个过程就像人类面对新的任务时也是由之前的经验来应对新的场景,具有先验知识。
元学习的一个重要用途,就是通过学习的方法去学习一个对多个任务来说合适的初始参数,使得对这些训练任务和其代表的更多未来任务来说,从这个初始参数开始,对模型进行更新,都可以更快和更好地得到新的模型。这里更快的意思就是只需要少量的训练样本和少数的几次梯度下降,我们就可以期望得到合适的新任务的模型。这里,针对的就是所谓的Few-Shot Learning问题,即给定非常少量的样本(比如只有一个样本),我们通过一步迭代就可以得到对一个新类别、新物体的分类模型。另一方面,在得到下降梯度后,如何有效的确定一个合适的更新步长,也是一个非常棘手的问题。利用元学习方法,我们也可以通过在多个任务上,使用机器学习的方法去确定合适的步长。甚至,可以直接把梯度做为输入,用一个递归神经网络去学习合适、最优的模型更新方向。

参考文献

猜你喜欢

转载自blog.csdn.net/ML_amateur/article/details/84192776