机器学习35:元学习的应用
摘要本文介绍了元学习在多个方面的具体应用。首先通过MAML等方法学习最优的初始化参数使模型能够快速适应新任务。其次元学习可用于学习优化器自动调整更新策略。此外网络架构搜索NAS利用元学习自动设计网络结构。最后文章还提及了元学习在数据处理、样本重加权等领域的延伸应用展现了元学习在自动化机器学习中的广泛潜力。AbstractThis article introduces specific applications of meta-learning in various aspects. First, methods such as MAML learn optimal initialization parameters, enabling models to quickly adapt to new tasks. Second, meta-learning can be used to learn optimizers that automatically adjust update strategies. Additionally, Neural Architecture Search (NAS) leverages meta-learning to automatically design network structures. Finally, the article also mentions extensions of meta-learning in areas such as data processing and sample reweighting, demonstrating its broad potential in automated machine learning.一初始化参数上周了解了元学习的基本概念下面通过一些实例来了解在元学习中什么东西是可以被学习的。一般我们最常用的学习算法就是梯度下降在梯度下降中需要有一个网络架构接着初始化参数接着从训练资料中抽样一些资料出来计算其梯度接着通过这个梯度更新参数得到接着重新计算梯度再更新参数这样反复下去直到次数足够多后将最终训练得到的参数将其输出。在执行梯度下降过程中可以进行训练的首先就是初始化的参数因为一般是通过随机初始化得到的也就是从某一个固定的分布中抽取出来的。我们也知道对最后的结果往往有一定程度的影响好的初始化参数与不好的最后的结果过程中的运算量是有着巨大的差别。所以我们能否通过一些训练任务找出一个对总训练特别有帮助的初始化参数呢是有的比如模型无关元学习MAML以及MAML方法的变形元学习爬虫算法Reptile。这两个方法的核心目标都是寻找一组最优的模型初始化参数使得模型在面对一个新任务时仅需少量梯度下降步骤通常为一步或几步就能在该任务上取得优异的性能。前面也提到做元学习时也需要对超参数进行选择。所以在做MAML时虽然要去学习一个初始化参数但是在学习这个参数的过程中也有很多超参数需要自己决定。有篇文献提到了如何训练MAML在这个过程中训练了三次MAML使用了不同的超参数发现有时候训练得好有时候训练不起来。因此作者在该文献中提出了新的方法MAML希望MAML能够训练得更好。谈到MAML找到一个好的初始化参数就让我们想起前面学习的预训练中的自监督学习。在这个知识点中我们也提到过好的初始化参数这个问题。在MAML中每个训练任务包含训练资料与测试资料其根据这些训练任务找到一个好的初始化参数然后用在测试任务上。但是在自监督学习中是通过一大堆没有标签的资料这些没有标记的任务通过预文本任务进行训练如在BERT中通过填空题来训练模型最后预训练的结果就是好的初始化参数。而在预训练还没有自监督学习时有另外一个想法是多任务训练Multi-Task Training同样有好几个任务的资料然后将这些资料放在一起将其当作一个任务进行训练这样同样也可以找到好的初始化参数。并且在当前做有关元学习研究时通常会将多任务训练的方法当作元学习的基准线。这是因为这两个方法使用的资料都是一样的只是MAML会将不同的任务分开而多任务训练是将资料放在一起。MAML的优点对于MAML能够有好的效果是有两个不同的假设的。有一个假设就是MAML找出来的初始化参数可以使如梯度下降这种学习算法快速找到其任务中好的参数。另外一个假设认为这个初始化参数跟每一个任务上最终好的参数非常接近。在一篇《Rapid Learning or Feature Reuse》中得到的结论就是Feature Reuse才是主要原因。二优化器除了可以学习初始化参数元学习还可以学习优化器。如在更新参数时需要决定学习率相关超参数这时就可以运用元学习进行学习。像这样的想法在很早之前就有了如2016年就有一篇《Learning to Learn by Gradient Descent by Gradient Descent》中就直接学习了这个优化器。其中ADAM、RMSprop等是人工设计的优化器而该论文作者的优化器LSTM中的参数是根据训练任务自动学习出来的结果如上。三网络架构除了训练初始化的参数以及优化器还可以训练网络架构。而针对训练网络架构这一系列的研究就叫做网络架构搜索Network Architecture SearchNAS。在NAS中我们是将网络架构当作同时意味着我们要找一个去最小化Loss所以其做微分就是有问题了。这时就要用到我们前面说到的没有办法微分时采用强化学习硬做是可以解决的。如何通过强化学习硬做我们可以将当作agent的参数然后强化学习中这个agent的输出就是网络架构的相关超参数所以接下来就是要去训练agent让其使最大化奖励-L()。我们可以通过下面这张图更清楚地知道典型的NAS是在做什么。这里将agent当作周期性网络其每次都会输出一个跟网络架构有关的参数有了这些参数就可以建出一个神经网络建完这个网络后就去训练接下来就进行强化学习。但实际上若硬要改下网络架构使其变得可以微分也是可以的这个经典的做法叫做可微分架构搜索DARTS。四其他小点1.数据处理除了上面提到的数据处理也是可能可以学习的。我们都知道在训练网络时可能会做数据增强所以我们可以去训练机器去自动寻找数据增强。2.样本重加权在训练过程中有时需要给不同的样本不同的加权但是如何给每一个数据不同的加权就会有不同的策略。对于这个策略是可以通过学习学出来的让机器学习到更具数据的特性自动决定说样本的权重要如何设计。除了上面提到的元学习可以在语音、自然语言处理上进行运用。就如下图展现的在前几年元学习就运用在多方面上。总结文系统阐述了元学习在初始化参数、优化器、网络架构等方面的实际应用。通过MAML等技术元学习能够从多个任务中学习到高效的初始化策略通过学习优化器实现了梯度下降过程的自动化NAS则将元学习引入网络结构设计提升了模型的自适应能力。此外元学习在数据增强与样本加权中的探索进一步拓展了其应用边界为自动化机器学习提供了有力支撑。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2440021.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!