Task-Agnostic Meta-Learning for Few-shot Learning 论文笔记

前言

最近越来越多的工作使用元学习来处理小样本学习问题。一般来说,元学习模型包括两部分:初始模型和更新策略,其中初始模型是在大量任务上进行训练得到的,更新策略是为了使初始模型能够适应一个只有少量样本的新任务。所以元学习的目标就是,能够自动学习初始模型和更新策略的最优参数,从而使得模型能够泛化到各种其它任务上。

然而,现有的元学习方法存在一个普遍问题,就是初始模型在训练时可能对某些任务有偏差,即更偏向于某些任务,尤其是在元训练阶段的任务。如果一个新任务只含有少量样本,并且与元训练中的任务差别很大,那么这样一个有偏差的初始模型就不能在该新任务上得到很好的性能。因此本文提出Task-Agnostic Meta-Learning (TAML)算法,它的中心思想是训练一个无偏的初始模型,方法是要么阻止初始模型过于偏向于某些任务,要么直接对不同任务上性能的不平等度量进行最小化。

那么具体如何实现这种任务无关呢? 本文提出了TAML算法的两种形式:

  • 基于熵的TAML,对于一个分类任务,可以直接最大化初始模型预测的不同类别标签的熵,来实现对任务的无偏性。
  • 基于不平等最小化度量的TAML,方法就是在元训练初始模型时,直接最小化初始模型在不同任务上的损失的不平等度量,这将使得元学习器(meta-learner)能够学习到一个无偏的初始模型。

基于熵的TAML

将模型定义为由θ\theta参数化的函数fθf_{\theta},在元训练过程中,从任务分布p(T)p(T)中采样一个batch,batch中的每个任务都是KK-shot NN-way问题,其中KK是训练样本的数量,NN是类别的数量。模型的初始参数为θ\theta,当在任务TiT_i上训练该模型时,根据更新规则将参数从θ\theta更新为θi\theta_i。比如,对于KK-shot分类问题来说,使用SGD来更新模型参数:θiθαΔθLTi(fθ)\theta_i \to \theta- \alpha \Delta_{\theta}L_{T_i}(f_{\theta}),其中LTi(fθ)L_{T_i}(f_{\theta})是交叉熵损失,通过更新参数,来最小化有KK个样本的分类任务TiT_i的交叉熵损失。

为了避免初始模型fθf_{\theta}在某些任务上有偏差,作者希望初始模型以相等的概率对预测的标签进行随机猜测,以实现对任务的无偏性。这可以解释为,θ\theta更新之前使熵最大化,从而使得初始模型应该比任务TiT_i的样本上的预测标签拥有更大的熵。任务TiT_i的熵是通过在NN个预测标签上从PTi(x)P_{T_i}(x)的输出概率yi,ny_{i,n}中采样xix_i来计算的:
在这里插入图片描述
其中[yi,1,...,yi,N]=fθ(xi)[y_{i,1},...,y_{i,N}]=f_{\theta}(x_i)fθf_{\theta}的预测值,在分类任务中就是softmax层的输出。

除了在更新初始模型的参数之前最大化熵,也可以在更新参数后对熵进行最小化处理,也就是对每个任务TiT_i对熵的减少进行最大化HTi(fθ)HTi(fθi)H_{T_i}(f_{\theta})-H_{T_i}(f_{\theta_i}),其中HTi(fθi)H_{T_i}(f_{\theta_i})的最小化意味着在更新参数θ\thetaθi\theta_i之后,模型对于具有更高置信度的标签更有确定性。这个熵可以和典型元训练的目标结合起来,作为一种正则化以找到最优的θ\theta
在这里插入图片描述
其中λ\lambda是正平衡系数,第一项是更新后的模型fθif_{\theta_i}的预期损失,熵减少的算法如下:
在这里插入图片描述
基于熵的TAML有一个限制,就是它只适合于对分类任务输出的离散标签来计算熵。 一些其它的学习问题,比如回归和强化学习,它们并不会得到一种特定的输出形式,比如离散的标签,因此基于熵的TAML就不能适用于这些学习问题。


基于不平等最小化度量的TAML

将初始模型在每个任务TiT_i上的损失看作是该任务的"收入",然后就可以基于经济学中的度量收入不平等的方法来刻画元学习器(meta-learner)在不同任务上的偏差。对于TAML模型来说,就是最小化不同任务上的损失的不平等,实现对任务的无偏性,即实现任务无关。

通过最小化batch中不同任务的损失的不平等,初始模型特定于某些任务的偏差也在元训练过程中被最小化了,这样就得到了一个无偏初始模型,该模型能够更好的适应一个新任务。

这两种TAML的不同之处如下:

  • 在基于熵的TAML中,在某一时刻只考虑一个任务,计算该任务输出的离散标签的熵,也就是说,基于熵的TAML依赖的是输出函数的特定形式,比如softmax层输出的离散的类别标签;
  • 在基于不平等最小化度量的TAML中,这种不平等只取决于损失,只需最小化损失的不平等,就能实现无偏性,因此适用性更普遍。

考虑一个采样的任务的batch {Ti}\lbrace T_i \rbrace,由初始模型得到的损失为{LTi(fθ)}\lbrace L_{T_i}(f_{\theta}) \rbrace,那么不平等度量就可以计算为Iε({LTi(fθ)})I_{\varepsilon}(\lbrace L_{T_i}(f_{\theta}) \rbrace),通过对下式进行最小化,就可以对初始模型的参数θ\theta进行元学习:
在这里插入图片描述
第一项是在参数更新后的模型fθif_{\theta_i}的预期损失,第二项是在参数更新之前的初始模型fθf_{\theta}的损失的不平等度量。这两项都是初始参数θ\theta的函数。算法如下:
在这里插入图片描述


不平等度量

这部分说一下不平等度量的几种形式。一般来说,不平等度量用于计算一些经济不平等,包括财富,收入,或健康相关指标。在元学习中,使用li=LTi(fθ)l_i=L_{T_i}(f_{\theta})表示任务TiT_i的损失,l\frac{}{l}是采样的任务的平均损失,MM是单个batch中任务的数量,在TAML中使用的不平等度量可以有以下几种形式:

Theil Index

这种不平等度量是从信息论中的冗余中得到的,冗余被定义为数据的最大熵与观测到的熵之间的差。假设共有MM个损失{lii=1,...,M}\lbrace l_i | i=1,...,M \rbrace,那么Theil Index被定义为:
在这里插入图片描述

Generalized Entropy Index

Generalized Entropy Index是用来度量收入的不平等,它并不是一个单独的不平等度量,而是包括了一系列的不平等度量,其中就有Theil Index,Thiel L等等:
在这里插入图片描述
α\alpha为0时,被称为平均对数偏差Thiel L;当α\alpha为1时,实际上就是Thiel Index。α\alpha的值越大,这个index对分布上部的差异越敏感;而α\alpha值越小,对分布底部的差异更敏感。

Atkinson Index

这是另一种用于收入不平等的度量,可用于确定分布的哪一端对观察到的不平等影响最大,它被定义为:
在这里插入图片描述
其中ϵ\epsilon被称为inequality aversion parameter,当ϵ=0\epsilon=0时,该index对分布上端的变化更敏感,当ϵ=1\epsilon=1时,该Index对分布下端的变化更敏感。

Gini-Coefficient

它通常被定义为相对绝对均值差的一半,在元学习中,如果在一个batch中有MM个任务,用lil_i来表示任务TiT_i的损失,那么Gini-Coefficient被定义为:
在这里插入图片描述
Gini-Coefficient对分布中间的偏差,比分布的上部或下部更敏感。

Variance of Logarithms

这是另一种常用的不平等度量:
在这里插入图片描述
其中g(l)g(l)ll的几何均值,它更关注分布的下部的损失。

发布了43 篇原创文章 · 获赞 2 · 访问量 1622
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 深蓝海洋 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览