论文阅读笔记《TADAM: Task dependent adaptive metric for improved few-shot learning》

小样本学习&元学习经典论文整理||持续更新

核心思想

  本文在基于度量学习的小样本算法的基础上提出了几点改进方案:度量放缩(Metric Scaling),任务条件(Task Conditioning)以及辅助任务合作训练(Auxiliary task co-training)。首先,对于度量函数 d ( z , c k ) d(z,c_k) d(z,ck)增加一个放缩系数 α \alpha α,使得分类概率 p ( y = k ∣ x ) = s o f t m a x ( − α d ( z , c k ) ) p(y=k|x)=softmax(-\alpha d(z,c_k)) p(y=kx)=softmax(αd(z,ck))。作者通过数学的方式证明了, α \alpha α的值越大就能更加直接的降低分类误差,但是如果 α \alpha α的值比较大,随着训练的逐步进行,正确分类样本越来越多,错误分类样本越来越少,训练过程对于模型效果的提升能力也越来越弱(梯度逐渐趋近于0)。因此作者认为应该存在一个最优的 α \alpha α能够平衡这一关系,就通过训练的方式去学习这一参数。然后作者对特征提取器 f θ ( x ) f_{\theta}(x) fθ(x)进行了改进,作者认为应该引入一个与任务相关的参数 Γ \Gamma Γ,得到一个与任务相关的动态特征提取器 f θ ( x , Γ ) f_{\theta}(x,\Gamma) fθ(x,Γ)。于是作者引入了任务嵌入网络(Task Embedding Network,TEN),通过对原有的特征图进行放缩和平移的方式引入任务信息,TEN结构如下图所示
在这里插入图片描述
  图中Task encoding就表示需要嵌入的任务信息,本文选择原型网络Prototypical Network中的每个类别原型的平均值 c ˉ = 1 K ∑ k c k \bar{c}=\frac{1}{K}\sum_kc_k cˉ=K1kck作为任务信息,然后分别用两个带有残差结构的全连接网络 g θ g_{\theta} gθ h φ h_{\varphi} hφ c ˉ \bar{c} cˉ进行处理,再与对应的L2惩罚项 γ 0 \gamma _0 γ0 β 0 \beta_0 β0相乘,得到放缩系数 γ = γ 0 g θ ( c ˉ ) + 1 \gamma =\gamma_0g_{\theta}(\bar{c})+1 γ=γ0gθ(cˉ)+1和平移系数 β = β 0 h φ ( c ˉ ) \beta =\beta_0h_{\varphi}(\bar{c}) β=β0hφ(cˉ),最后将卷积层输出的特征图 h l h_l hl进行放缩和平移得到 h l + 1 = γ ⊙ h l + β h_{l+1}=\gamma \odot h_l +\beta hl+1=γhl+β。作者文中并未说明 γ 0 \gamma _0 γ0 β 0 \beta_0 β0的来源,根据代码分析可知是两个初始值为0的可学习的参数。
  作者发现引入TEN结构给网络增加了额外的复杂度,使得网络训练变得困难。因此作者提出了利用辅助任务进行合作训练的方法,其实就是在原网络的基础上增加一个64类的分类器,然后在训练过程中会随机的从64类的miniImageNet数据集中抽取样本,用于训练该分类器。这与预训练的方式略有不同,两个训练过程共用一个特征提取网络,一起进行合作训练,且从辅助任务数据集中抽取样本的概率会随着训练次数的增加而呈指数下降。这就接近于课程学习(curriculum learning)的概念,一开始训练时会引入较多的简单分类任务,引导特征提取网络训练;随着训练次数不断增加,网络的能力也在不断增强,以此逐渐降低简单任务所占的比重,而增加真正需要学习的任务(小样本分类)比重。整个网络的流程如下图所示
在这里插入图片描述
  支持集图片 x i x_i xi分别利用两个权重共享的特征提取器进行处理,上方的 f ϕ ( x , Γ ) f_{\phi}(x,\Gamma) fϕ(x,Γ)是用于获取类别表征信息,而下方的 f ϕ ( x , 0 ) f_{\phi}(x,0) fϕ(x,0)则是用于获取任务表征信息,并通过TEN结构得到放缩和平移系数,用于改进 f ϕ ( x , Γ ) f_{\phi}(x,\Gamma) fϕ(x,Γ)。查询集图片 x ∗ x^* x同样经过 f ϕ ( x , Γ ) f_{\phi}(x,\Gamma) fϕ(x,Γ)的处理得到对应的表征信息,并与支持集图片对应的表征信息进行相似性度量。最后将得到的相似性得分乘以放缩系数 α \alpha α,在经过softmax函数得到每个类别的预测概率。

实现过程

网络结构

  特征提取器采用ResNet-12作为主干网络,TEN网络的结构如上文所示,普通的卷积块和残差块与TEN的结合方式如下图所示
在这里插入图片描述

损失函数

  交叉熵损失函数

训练策略

  主要的增加了辅助任务合作训练的内容,如上文所述

创新点

  • 为度量函数增加了放缩系数,并通过数学方法和实验方法证明其有效性
  • 设计了TEN结构,将任务相关信息引入到特征提取网络之中
  • 采用了辅助任务合作训练的方式,降低了网络训练的难度

算法评价

  本文提出的对度量函数进行放缩的观点是本文的核心内容,他看起来非常简单,只是增加一个可学习的放缩参数,但在实验过程中却能有效提升分类的准确率。对于特征图进行平移和放缩在之前解读的文章《Meta-Transfer Learning for Few-Shot Learning》中也有过类似的操作,只不过是对甚至网络中的权重值进行平移和放缩,起到元学习的效果。最后本文采用的合作训练算法,在之前的文章中没有看到过,而且实验表明该方法的提升作用明显,可以进行尝试。

如果大家对于深度学习与计算机视觉领域感兴趣,希望获得更多的知识分享与最新的论文解读,欢迎关注我的个人公众号“深视”。在这里插入图片描述

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深视

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值