Fork me on GitHub

【笔记】论文阅读 | Prototypical networks for few-shot learning

  • 论文信息:Snell J, Swersky K, Zemel R. Prototypical networks for few-shot learning[C]//Advances in Neural Information Processing Systems. 2017: 4077-4087.
  • 博文作者:Veagau
  • 编辑时间:2020年01月07日

本文是2017年NIPS的会议论文,作者来自多伦多大学以及Twitter公司。在论文中作者提出了一种新的基于度量(Metric-based)的少样本学习模型——原型网络(Prototypical Networks)。原型网络首先利用支持集中每个类别提供的少量样本,计算它们的嵌入的中心,作为每一类样本的原型(Prototype),接着基于这些原型学习一个度量空间,使得新的样本通过计算自身嵌入与这些原型的距离实现最终的分类,思想与聚类算法十分接近,但出发点有着很大的差异。除此之外,作者在文章中还尝试将原型网络应用于零样本学习(Zero-shot learning)问题上,通过数据集携带的属性向量形成元数据(meta-data),基于这些元数据构建原型,从而实现零样本分类。

原型网络在少样本分类与零样本分类任务上的示意图如下所示。

样本数据的嵌入操作采用基本深层卷积神经网络实现,用\(f_{\phi}\)表示嵌入操作,其中\(\phi\)为可学习参数。原型的计算公式如下。

\[c_k=\frac{1}{|S_k|}\sum_{(x_i,y_i)\in S_k}f_{\phi}(x_i) \]

其中\(S_k\) 表示第 \(k\) 类样本。

给定查询点(Query point)\(x\) ,它所归属的原型的概率分布由基于其与各个原型的距离值得softmax函数计算得出。

\[p_{\phi}(y=k|x)=\frac{exp(-d(f_{\phi}(x),c_k))}{\sum_{k'}exp(-d(f_{\phi}(x),c_{k'}))} \]

其中 \(d\) 表示距离计算函数,要求必须是正规布雷格曼散度,如平方欧式距离与马氏距离。

原型网络相比其他的元学习算法模型而言,要更加简单有效,并且通过选择适当的距离度量以及调整学习流程,整个网络的表现还能够得到进一步的提升,这种解决思路也为后续的少样本学习方法的改进提供了更加简单易用的基础模型。

posted @ 2020-01-07 23:34  Veagau  阅读(2443)  评论(0编辑  收藏  举报