提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
论文分享(4)---- OPTIMIZATION AS A MODEL FOR FEW-SHOT LEARNING
摘要
尽管深度学习在数据量充足的领域已经取得了很大的成功,但是它们很难在数据量匮乏的情况下发挥。这是因为现有的优化策略都是基于梯度进行更新,由于参数量的缘由,这种梯度更新的方式需要更多的step才能达到收敛。针对这一问题,作者提出了基于元学习的LSTM来训练目标模型的参数。Goal model的参数会伴随meta-lstm的更新进行优化。
一、问题定义
重点meta-lstm和goal model: 对于goal model来说,数据集D定义为Dtrain,Dtest。参数为θ。 对于meta-lstm来说,数据集D定义为Dtrain,Dtest。而在每个Dtrain和Dtest中又分别划分为Meta_train,Meta_val,Meta_test三个部分。
二、Model
1. 模型定义
单考虑单个数据集D,D∈Dtrain,goal model的参数为θ,则按照梯度更新的方式,更新公式如下: 类比LSTM中cell state的更新,更新公式如下: 参考上述,作者提出了meta-lstm更新目标模型的参数。但是如果直接替换,ft和it都变为固定参数,与lstm的动态更新相违背,作者在考究两个参数的实际意义之后,做出动态更新的决定。其中ft在lstm是遗忘门,范围[0,1],考虑的是上一状态保留多少的问题。故定义为: 而it是对应学习率,是一个动态更新的参数,在lstm是更新门,即考虑当前输入保留多少的问题,所以定义为:
2. 模型参数共享和预处理
由于目标模型的参数数量难以估计,如果每个参数都有自己独特的meta-lstm,会造成元学习器参数灾难的问题,作者此处简化meta,使目标模型共享一个meta-lstm。 同时由于梯度大小的不同会使得元学习器训练起来困难,作者在此预处理梯度,使得每个步长下的梯度变化可接受。
3. 梯度更新简化
如上图所示,元学习梯度更新过程有两条路线联合更新,一个是lstm的cell直接更新,还有就是(?θt?1,Lt)。作者为了简化更新,将后者更新路线截断。在不降低更新效果的前提下,最大限度简化任务规模,提高训练速度。
三. 实验结果分析
如上表所示,作者提出基于元学习的meta-lstm不仅在优化效率还是优化效果都取得了那会最好的结果。
总结
本文是针对深度学习在小样本上学习困难的一种解法。诸如文章中提到的迁移学习结合预训练的方式都可以辅助解决小样本问题,但是当预训练任务和目标任务不一致时,效果并不理想,而作者提出的方法可以避免这样的问题。文章中提到的基于元学习的meta-lstm通过类比lstm的cell的更新方式,更新梯度,同时作者采用很多方法诸如参数共享,梯度削减等来简化更新。总体来言,本文是元学习一次很有意义的尝试。
|