链接: https://arxiv.org/abs/1711.04043
本文提出了用 GNN(GraphNeural Network) 来解决 Few-Shot Learning 场景的分类问题。在 Few-Shot Learning 中,每个类别的训练样本数据较少,如果直接训练一个多分类模型,会由于每个类别的样本较少而无法训练充分。而 GNN 的一个优点在于可以通过节点之间的连接来做信息扩散,如果把每个样本视作图中一个节点,节点之间的边是它们的某种距离度量,那么,就可以把已有label的样本的 label 信息根据节点之间相似性的强弱,有选择的扩散到与之最相似的,需要预测的样本上。这样,新样本在预测的时候,可以利用到各个类别的标注数据,类似于迁移学习,从而缓解了 Few-Shot Learning 中每个类别训练样本较少的问题。
基于以上思路,本文利用 GNN 在小样本 Few-Shot Learning 数据集上,对 Few-Shot Learning, Semi-supervised Learning 以及 Active Learning 三个任务都做了实验,验证了GNN利用信息传播做预测的有效性。
模型的基本结构是常见的 GNN,流程如下:
(1) 初始化:将每个样本视作图中的节点,随机初始化每个节点的表示。初始化方式为:利用CNN得到的图片(实验数据集是图片分类)的向量表示,以及样本的label的onehot表示,拼接得到。对于半监督的情形,未标注样本的label的onehot表示是随机生成的。
(2) 信息传播:计算节点之间的相似性,得到节点两两之间的相似性矩阵。然后以每个节点的邻居节点的表示和自己当前的表示来更新下一步的表示,即:自己的表示+ sum(相似性 * 邻居节点的表示),是一个常用的加权平均更新方式
(3) 对于需要预测label的节点,利用其最终的表示,通过softmax做分类。
实验结果:
相比已有的一些利用样本间相似性做 Few-Shot Learning 的模型,如 Siamese Net, Matching Network,Prototypical Network,都有提升。另外,论文中证明了后续这三种模型都是 GNN 模型的特例。
(1) Few-Shot Learning:
(2) Semi-supervised Learning:
(3) Active Learning:
本文作者: 王梁,浙江大学硕士,研究方向为知识图谱,自然语言处理.
OpenKG.CN
中文开放知识图谱(简称OpenKG.CN)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。
转载须知:转载需注明来源“OpenKG.CN”、作者及原文链接。如需修改标题,请注明原标题。
点击阅读原文,进入 OpenKG 博客。