2019-04-18-少样本学习

主要内容

  1. 少样本学习任务
  2. 大数据集的有监督关系抽取
  3. 如何在关系抽取中进行少样本学习
  4. 原型网络用于关系抽取的少样本学习
少样本学习(Few-shot Learning)
  • 产生背景:现有的有监督的深度学习模型都需要大量的数据,当数据量很小时,该如何学习?

  • 模拟人脑:一个好的机器学习模型通常需要训练大量的样本。相比之下,人类学习新概念和新技能的速度更快、效率更高。(知道如何骑自行车的人很有可能在几乎没有或甚至没有演示的情况下就发现了快速骑摩托车的方法。 )在人类的快速学习能力的启发下,研究人员希望机器学习模型在学习了一定类别的大量数据后,对于新的类别,只需要少量的样本就能快速学习,这就是 Few-shot Learning 要解决的问题。
  • Few-shot LearningMeta Learning 在监督学习领域的应用。Meta Learning,又称为 learning to learn,在训练阶段将数据集分解为不同的任务,去学习类别变化的情况下模型的泛化能力,在测试阶段,面对全新的类别,不需要变动已有的模型,就可以完成分类。
少样本数据集

image

用10类图像分类数据为例,传统的方法是基于大量训练集获得模型,然后对同类别的测试集进行自动标注。而小样本问题是我们大量拥有的是上方这5类的数据,而新问题(下方这5类)是只有很少的标注数据。

  • 训练阶段:支撑集和测试集(或查询集)
  • 测试阶段:支撑集和未标注的测试集
训练任务 (N-Way K-Shot)

image

few-shot 的训练集中包含了很多的类别,每个类别中有多个样本。在训练阶段,会在训练集中随机抽取 N 个类别,每个类别 K 个样本(总共 N * K 个数据),构建一个 meta-task,作为模型的支撑集(support set)输入;再从这 N 个类中剩余的数据中抽取一批(batch)样本作为模型的预测对象。即要求模型从 N * K 个数据中学会如何区分这 N 个类别,这样的任务被称为 N-way K-shot 问题。

FewRel数据集

FewRel是一个关于关系抽取的少样本学习数据集,包含7万个实例,100种关系,每种关系700个实例,其中, 64种关系用于few-shot learning 的训练集,16种关系用于验证集,20种关系用于测试集。

Few-shot Learning关系抽取学习方法
  • Prototypical Networks (Snell et al., 2017)是一种Metric Based 方法,它通过度量query集中的样本和 support 集中样本的距离,借助最近邻的思想完成分类;
  • Meta Network (Munkhdalai and Yu, 2017)是一种元学习算法,它用元学习器学习各种任务,基础学习器学习特定任务;
  • GNN (Satorras and Estrach, 2018)将每个支持实例或查询实例视为图中的节点。对于支持集中的那些实例,标签信息也嵌入到相应的节点表示中,然后利用图神经网络在节点之间传播信息。
  • SNAIL (Mishra et al., 2018)是一种元学习模型,它利用时间卷积和注意力模型从之前的信息中快速学习。
原型网络 (Prototypical Networks)

原型网络是基于度量的学习方法,它通过学习一个度量空间,计算实例和原型的距离,来进行分类。具体而言:每个类别都存在一个 聚在某单个原型表达周围的嵌入空间,该类的原型是支撑集在嵌入空间中的均值。然后,分类问题变成在嵌入空间中的最近邻。

image

图中,c1、c2、c3分别是三个类别的均值中心(称Prototype),将测试样本x进行embedding后,与这3个中心进行距离计算,从而获得x的类别。

原型网络学习算法

image

原型网络在少样本关系抽取中的应用
B   N     K     Q
4   20   5      5
每次训练选择4个batch,
每个batch选择20种关系,
在支撑集中每种关系选择5个实例,
在查询集中每种关系选择5个实例。

训练过程:

image

训练结果:

FewRel: 5-way 5-shot 实验结果 85.27

参考文献:
  • Han, X.; Zhu, H.; Yu, P.; Wang, Z.; Yao, Y.; Liu, Z.; and Sun, M. 2018. Fewrel: A large-scale supervised few-shot relation classification dataset with state-of-the-art evaluation. In Proceedings of EMNLP, 4803–4809.
  • Snell J, Swersky K, Zemel R. Prototypical networks for few-shot learning[C]//Advances in Neural Information Processing Systems. 2017: 4077-4087.
  • Munkhdalai T, Yu H. Meta networks[C]//Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org, 2017: 2554-2563.
  • Victor Garcia Satorras and Joan Bruna Estrach. 2018. Few-shot learning with graph neural networks. In Proceedings of ICLR.
  • Nikhil Mishra, Mostafa Rohaninejad, Xi Chen, and Pieter Abbeel. 2018. A simple neural attentive metalearner. In Proceedings of ICLR.

2019-4-18-图神经网络

主要内容:

  1. 图神经网络模型
  2. 图神经网络用于少样本关系抽取

图神经网络

主要针对非欧几里得空间结构(图结构)的数据进行处理

  • 忽略节点的输入顺序
  • 在计算过程中,节点的表示受其周围邻居节点的影响
  • 图结构的表示,使得可以进行基于图的推理

常见的图神经网络有:

  • 图卷积神经网络(GraphConvolutional Networks, GCNs)
  • 门控图神经网络(Gated Graph Neural Networks,GGNNs)
  • 图注意力神经网络(Graph Attention Networks,GAT)

图神经网络用于少样本学习

  • 将支撑集和查询集视为图的节点,使用图神经网络来处理少样本学习问题
  • 节点信息在图神经网络节点中传递
  • 查询集从支撑集中获取信息用于分类

少样本学习流程:

image

图神经网络示意图:

image

图神经网络主要由三部分构成:

  • 表示节点信息
  • 计算节点间(边)的信息
  • 传递节点信息

图层计算过程

节点信息传递:输入节点信息x_k通过图层函数Gc得到输出节点信息x_k+1

image

节点间信息(边特征):节点间的距离表示(这里使用的是L1距离)

image

边权重计算(节点间的特征)

image

图层计算

image

图神经网络

image

实验结果

image

image

  • Mini-ImageNet数据集:训练集64个类,验证集16个类,测试集20个类,每类有600个实例
  • FewRel数据集包含7万个实例,100种关系,每种关系700个实例,其中, 64种关系用于 的训练集,16种关系用于验证集,20种关系用于测试集。

参考文献:

  • Victor Garcia Satorras and Joan Bruna Estrach. 2018. Few-shot learning with graph neural networks. In Proceedings of ICLR.
  • Zhou J, Cui G, Zhang Z, et al. Graph neural networks: A review of methods and applications[J]. arXiv preprint arXiv:1812.08434, 2018.

2019-04-18-元学习

主要内容:

  1. 元学习概念
  2. 元网络模型
  3. 元网络用于少样本关系抽取
  4. 基于原型网络的少样本关系抽取
Meta Learning(元学习)

元学习:模型只使用几个样本就能够快速的学习新的知识

有三种常见的方法:

  • 学习有效的距离度量(基于度量);
  • 使用具有外部或内部存储器的网络(基于模型);
  • 明确优化模型参数以进行快速学习(基于优化)。

Meta Networks(元网络)

元网络:在多个任务之间具有快速泛化的能力

image

  • 标准的深度神经网络缺乏持续学习能力,不会忘记或破坏以前学过的模式。
  • 元学习器的目标是获取不同任务的通用知识,然后将知识传递给基础学习器,以便在单个任务的背景下提供泛化。

元网络学习算法

image

元学习器

快权重生成:

image

利用快、慢权重元学习:

image

基础学习器

image

元网络在少样本学习中的实验

image

image

  • Mini-ImageNet数据集:训练集64个类,验证集16个类,测试集20个类,每类有600个实例
  • FewRel数据集包含7万个实例,100种关系,每种关系700个实例,其中, 64种关系用于 的训练集,16种关系用于验证集,20种关系用于测试集。

参考文献:

  • Munkhdalai T, Yu H. Meta networks[C]//Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org, 2017: 2554-2563.