1.本文作者提出了什么问题?
当前基于梯度的元学习方法(MAML, Reptile)虽然针对模型学习到了可以泛化到不同task的初始化参数,但作者指出学习到的初始化参数并不是针对各个task都可以很好地泛化,对与training task相似的task可以快速泛化且perform well,但对一个与training task相似度较低的new task并不一定能很好地泛化。总而言之学到的初始化参数模型是一个有偏(biased)的模型。
2.针对上述问题,作者提出的解决思路?
1.outer-loop设计一个正则化项元学习一个无偏的初始化模型以避免模型在一些task上over-performed。
2.outer-loop设计一个正则化项在学习初始化参数的同时降低模型在各个task上的性能度量的不平等性。
总的目的是对未知task都具有很好地泛化性(unbiased)。
3.作者针对自己的思路设计的正则化项以及给出的具体算法?
1.在使用MAML或Reptile学习初始化参数的同时outer-loop的loss function中加入正则化项,这个正则项使得模型向着最大化具体任务中每个样本分类的熵的方向进行初始化参数的学习。
假设是5-way的小样本学习,学习初始化参数时使初始化参数不仅沿着loss的方向更新,还沿着(初始化参数)对task中的样本输出的概率分布趋向于平均(eg: 0.2, 0.2, 0,2, 0.2, 0.2)的方向更新。
如上图,算法在原MAML方法的基础之上加了正则化项,这个正则化项的作用是使得初始化参数沿着未进行adaption时对task的query set每个样本的分类置信度低、进行adaption后对task的query set每个样本的分类置信度高的方向上更新。
2.在使用MAML和Reptile学习初始化参数时加入正则项使初始化参数同时平衡loss的方向和a batch of task的loss不平等性最小化的方向。
与MAML的不同地方是增加了正则化(
I
ε
(
L
T
i
(
f
(
θ
)
)
I_\varepsilon({L_{T_i}}(f(\theta))
Iε(LTi(f(θ))),这一项的意义是衡量几个task的loss的不平等性,值越小说明初始化参数在各个task adaption后越无偏。
文中给出了一些常用的不平等性衡量的计算方法。各有优劣: