基于归纳网络的少样本文本分类 | EMNLP 2019 会议论文解读

简介: 深度学习方法在数据稀缺的场景下往往表现很差,在这种挑战性的场景下,近期的工作往往使用meta-learning的方法来模拟少样本学习任务,通过在样本级别把query和支撑集进行比较来完成分类。

作者:耿瑞莹,黎斌华,李永彬,孙健

1.摘要

深度学习方法在数据稀缺的场景下往往表现很差,在这种挑战性的场景下,近期的工作往往使用meta-learning的方法来模拟少样本学习任务,通过在样本级别把query和支撑集进行比较来完成分类。但是这种样本级别的比较往往会被同一个类中各种不同的表述方式所干扰,因此我们需要为支撑集中的每个类别学习一种泛化的表示,然后去和query进行度量。在本工作中,我们提出了一个新的归纳网络(Induction Networks)来学习这样的一般化的类别表示,通过在meta learning的过程中引入动态路由算法(dynamic routing),我们的模型对于未见过的类别有良好的适应能力。我们在一个通用的英文基准数据集和一个真实场景的中文意图分类数据集上验证我们的模型,均取得了state-of-the-art的结果,证明了在少样本学习场景下学习类级别表示的有效性。

2.问题定义

少样本学习的的目标是模型在大量类别中学会通过少量数据正确地分类后,对于新的类别,只需要少量的样本就能快速学习。形式化来说,few-shot的训练集中包含了大量的类别,每个类别中有少量样本。在训练阶段,会在训练集中随机抽取C个类别,每个类别K个样本(总共C×K个数据)构建一个meta-task,作为模型的支撑集(Support set)输入;再从这C个类中抽取一批样本作为模型的询问集(Query set)。即要求模型从C×K个数据中学会如何区分这C个类别,这样的任务被称为C-way K-shot问题。 模型训练的过程中在每次迭代时把支撑集送入模型,并优化模型在询问集上产生的损失函数,这种训练方式一般称为Episode-based meta-training,详情见Algorithm 1。值得注意的是这种训练机制使得模型很难过拟合,假设我们训练集中包含159个类,可以产生( █(159@5))=794,747,031个不同的5-way 任务。

image.png
image.png

3.引言

少样本学习相关的研究致力于通过极少量的样本学习心得类别来解决数据缺失的问题,当数据量极少时,基于finetune的方法将难以生效,早期的工作使用数据增强和正则化来缓解数据不足时的过拟合问题,但是也只能在一定程度上有效。近期的工作往往基于meta learning的方法,把训练过程分解为一系列的meta-task,通过将训练过程的task和测试阶段的task定义一致,可以通过在不同的meta task之间切换来抽取一些可迁移的知识。因此few-shot learning的模型往往可以只根据一个支撑集就能对未见过的类别进行识别。
一种典型的方法是把非参数化方法和度量学习结合,非参数方法能够使新的样本得到快速的适应,因此只需要学习样本之间的度量方式即可完成少样本分类。但是由于自然语言的特殊性,同一个类中的样本往往有很多种不同的表述,在先前的工作中,类级别的表示往往只是简单的通过对支撑集中的样本表示平均或加和来得到,这样会由于同一个类的不同表述方式产生的噪音而丢失很多关键的信息。因为少样本学习的方法不会在支撑集上finetune模型,因此当增大支撑集的规模时,因为样本数量带来的增长往往又会被样本级别的噪音所抵消。

因此,更好的学习方法应该是建模归纳类别特征的能力:忽略掉和分类无关的细节,从样本级别多种多样的语言表述之中总结出类别的语义表示。我们站在一个更高的视角,去重构支撑集中不同样本的层次化语义表示,动态的从样本信息中归纳出类别特征。在本工作中,我们提出了Induction Network,通过将动态路由算法与meta learning机制结合,显式建模了从少量样本中归纳出类别表示的能力。我们的贡献可以总结为三点:

1.我们提出了一个归纳网络来解决少样本学习的任务,为了处理少样本学习中样本级别的多样性问题,我们的工作首次建模了从样本特征到类别特征的归纳能力;

2.我们提出归纳模块结合了动态路由算法和meta learning结构,矩阵转换和路由机制是我们的模型识别新的类别时泛化性能良好;

3.我们的模型在两个少样本文本分类数据集上超过了目前的state-of-the-art模型,包含一个英语的基准数据集和一个中文的真实场景的意图识别数据集。

4.模型

如图3所示,我们的模型基于Encoder-Induction-Relation的三级框架,其中Encoder模块使用基于自注意力的Bi-LSTM,Induction 模块使用动态路由算法,Relation模块使用神经张量网络。

image.png
图Induction Network 图示

4.1 Encoder模块

本工作共使用Bi-lstm self-attention建模句子级别的语义,输入句子的词向量矩阵,经编码得到句子级的语义表示e。

image.png
image.png
image.png

4.2 Induction 模块

将支撑集中每个样本编码为样本向量以后,Induction模块将其归纳为类向量

image.png

这一过程中我们将支撑集中的样本向量视为输入胶囊,经过一层dynamic routing变换后,输出胶囊视为每个类的语义特征表示。

首先,是对所有样本做一次矩阵转换,意味着将样本级的语义空间转换到类别级的语义空间,在此过程中我们对支撑集中所有的样本向量使用同一个转换矩阵,如此对于任意规模的支撑集都能进行处理,也就意味着我们的模型可以应对any-way any-shot的场景。

image.png
image.png

然后,通过dynamic routing的方式过滤无关信息,提取类别特征。在每次dynamic routing的迭代中,我们动态的调整上下两层之间的连接系数并确保其加和为1:

image.png
image.png

其中b_i连接系数的逻辑值,在第一次迭代时初始化为0。对于给定的样本预测向量,每个候选类向量是e ̂_ij^s的加权求和:

image.png

然后使用一个非线性的squash函数来保证每个类向量的模长不超过1:

image.png

每次迭代的最后一步是通过“routing by agreement”的方式来调节连接强度,如果产生的类候选向量和某样本预测向量之间有较大的点乘结果,则增大他们之间的连接强度,否则减小之。

image.png

通过这种动态路由的方式建模样本向量到类别向量的映射过程,能够有效过滤与分类无关的干扰信息,得到类别特征,详情见算法2。

image.png
image.png

4.3 Relation 模块

我们通过Induction模块得到支撑集中每个类别的类向量表示,通过Encoder模块得到Batch set中每个query的query向量,接下来要做到就是衡量二者之间的相关性。 Relation 模块是典型的neural tensor layer,首先通过三维tensor建模每个类向量和query向量对之间的交互关系,然后使用全连接层得到关系打分。

image.png

4.4 目标函数

我们使用最小平方损失来训练我们的模型,将关系打分回归至真实标签:匹配的类和query对之间的打分趋向于1而不匹配的打分趋向于0。在每个episode中,给定支撑集S和Query集B={(x_q,y_q )}_(q=1)^n,损失函数定义如下:

image.png

我们使用梯度下降法更新Encoder、Induction和Relation三个模块的参数。训练完成之后,我们的模型在识别全新的类别时不需要任何finetune,因为在meta 训练阶段已经赋予了模型足够的泛化能力,而且会随着模型的迭代不断累加。

5. 实验

我们在两个few-shot文本分类的数据集上验证模型的效果,所有的实验使用tensorflow实现。

5.1 数据集

1.ARSC数据集由Yu 等人[10]在NAACL 2018提出,取自亚马逊多领域情感分类数据,该数据集包含23种亚马逊商品的评论数据,对于每一种商品,构建三个二分类任务,将其评论按分数分为5、4、 2三档,每一档视为一个二分类任务,则产生233=69个task,然后取其中12个task(43)作为测试集,其余57个task作为训练集。

2.ODIC数据集来自阿里巴巴对话工厂平台的线上日志,用户会向平台提交多种不同的对话任务,和多种不同的意图,但是每种意图只有极少数的标注数据,这形成了一个典型的few-shot learning任务,该数据集包含216个意图,其中159个用于训练,57个用于测试。

5.2 参数设置

预训练词向量使用300维glove词向量,LSTM隐层维度设为128,dynamic routing的迭代器爱次数设为3,Relation模块的张量数h=100。我们在ARSC数据集上构建2-way 5-shot的模型,在ODIC数据集上C和K在[5,10]中选取得到四组实验。在每个episode中,除了为支撑集选取K个样本以外,我们还为采到的每个类再采20个样本作为query set,也就是说在5-way 5-shot 场景下每次迭代训练都会有55+520=125个样本参与训练。

5.4 实验结果

在ARSC和ODIC数据集上实验结果如表1和表2所示
由表1可知,我们提出的Induction Networks比ROBUSTTC-FSL正确率高出3%,他们是这个数据上之前的state-of-the-art。这是因为ROBUSTTC-FSL试图在样本层面构造一个足够鲁棒的度量方法,所以将多种度量方式进行组合,这种方法无法摆脱同一个类别中不同表述所产生的干扰。

image.png
表1 ARSC数据集上的结果

在ODIC数据集上,我们提出的Induction Networks模型在四个不同的实验设置中都取得了最好的效果,通过表1可以看到,在Encoder使用相同结构的情况下,我们的模型通过建模class级别的归纳能力和更复杂的距离度量方式,取得了最好的结果,进一步的,我们通过比较不同的Induction方式,最终选取了Dynamic Routing的方式来构建样本级到class级的归纳表示能力。

image.png
表2 ODIC数据集实验结果

5.5 实验分析

5.5.1 消融实验

image.png
表3 消融实验

为了分析归纳模块和关系模块使用不同成分所产生的影响,我们进一步分析在ARSC数据集上消融实验的结果。如表3所示,我们可以看到当routing的迭代次数设为3次的时候取得最优的效果,继续增加迭代次数并没有使效果进一步提升,这证明了dynamic routing方法的有效性。当把归纳模块改为Attention方式时,Attention+Relation的方法通过自注意力机制来建模归纳过程,但是这一能力又被局限于学习到注意力参数之中,相反我们提出的动态路由归纳算法可以通过自动调整对支撑集样本的权重系数来归纳得到类级别的表示,这对于少样本学习的任务具有更好的适应能力。

5.5.2转置矩阵的作用

在5-way 10-shot场景下,我们用t-SNE降维并可视化经过transformation转置矩阵前后支撑集样本的变化,如图所示,可以发现经过转置矩阵之后的支撑集样本向量可分性明显变好。

image.png

这也证明了矩阵转置过程对于转换样本特征到类别特征的有效性。

5.5.3 Query 可视化

我们发现Induction Network不仅能够生成质量更高的类向量,而且可以帮助encoder模块学习更好的样本语义表示。通过随机抽取5个测试集的类别,并将其中所有样本Encoder之后的向量可视化,我们发现Induction Network中学到的样本向量可分性明显高于Relation Network,这说明我们的Induction模块和Relation模块通过反向传播给了Encoder模块更为有效的信息,使其学到了更易于分类的样本表示。

image.png

6.结论

在本工作中,我们提出了Induction Network 来解决少样本文本分类的问题。我们的模型通过重构支撑集样本的层次化语义表示,动态归纳出类别的特征表示来缓解少样本学习样本级别的噪音问题。我们将动态路由算法和meta learning的框架结合,动态路由的机制使我们的模型能够对新的类别保持良好的泛化性。实验结果表明我们的模型在不同的少样本分类数据集上都超过了当前的state-of-the-art模型。在未来的工作中我们会探寻将监督学习和meta learning相结合,构建增量的少样本学习模型。

参考文献

  1. Shaohui Kuang, Junhui Li, Anto ́nio Branco, Weihua Luo, and Deyi Xiong. 2018. Attention focusing for neural machine translation by bridging source and target embeddings. In Proceedings of the 56th An- nual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), volume 1, pages 1767–1776.
  2. Shen Li, Zhe Zhao, Renfen Hu, Wensi Li, Tao Liu, and Xiaoyong Du. 2018. Analogical reasoning on chi- nese morphological and semantic relations. In Pro- ceedings of the 56th Annual Meeting of the Associa- tion for Computational Linguistics (Volume 2: Short Papers), pages 138–143.
  3. Zhouhan Lin, Minwei Feng, Cicero Nogueira dos San- tos, Mo Yu, Bing Xiang, Bowen Zhou, and Yoshua Bengio. 2017. A structured self-attentive sentence embedding. arXiv preprint arXiv:1703.03130.
  4. Laurens van der Maaten and Geoffrey Hinton. 2008. Visualizing data using t-sne. Journal of machine learning research, 9(Nov):2579–2605.
  5. Nikhil Mishra, Mostafa Rohaninejad, Xi Chen, and Pieter Abbeel. 2018. A simple neural attentive meta- learner. In Proceedings of ICLR.
  6. Tsendsuren Munkhdalai and Hong Yu. 2017. Meta networks. In Proceedings of the 34th International Conference on Machine Learning-Volume 70, pages 2554–2563. JMLR. org.
  7. Jeffrey Pennington, Richard Socher, and Christopher Manning. 2014. Glove: Global vectors for word representation. In Proceedings of the 2014 confer- ence on empirical methods in natural language pro- cessing (EMNLP), pages 1532–1543.
  8. Hang Qi, Matthew Brown, and David G Lowe. 2018. Low-shot learning with imprinted weights. In Pro- ceedings of the IEEE Conference on Computer Vi- sion and Pattern Recognition, pages 5822–5830.
    Anthony Rios and Ramakanth Kavuluru. 2018. Few- shot and zero-shot multi-label learning for structured label spaces. In Proceedings of the 2018 Confer- ence on Empirical Methods in Natural Language Processing, pages 3132–3142.
  9. Sara Sabour, Nicholas Frosst, and Geoffrey E Hinton. 2017. Dynamic routing between capsules. In Ad- vances in Neural Information Processing Systems, pages 3856–3866.
  10. Justin Salamon and Juan Pablo Bello. 2017. Deep con- volutional neural networks and data augmentation for environmental sound classification. IEEE Signal Processing Letters, 24(3):279–283.
    Victor Garcia and Joan Bruna. 2017. learning with graph neural networks. abs/1711.04043.

Few-shot CoRR,

  1. Xavier Glorot, Antoine Bordes, and Yoshua Bengio. 2011. Deep sparse rectifier neural networks. In Pro- ceedings of the fourteenth international conference
  2. Jake Snell, Kevin Swersky, and Richard Zemel. 2017. Prototypical networks for few-shot learning. In Ad- vances in Neural Information Processing Systems, pages 4077–4087.
  3. Richard Socher, Danqi Chen, Christopher D Manning, and Andrew Ng. 2013. Reasoning with neural ten- sor networks for knowledge base completion. In Advances in neural information processing systems, pages 926–934.
  4. Flood Sung, Yongxin Yang, Li Zhang, Tao Xiang, Philip HS Torr, and Timothy M Hospedales. 2018. Learning to compare: Relation network for few-shot learning. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 1199–1208.
相关文章
|
12天前
|
机器学习/深度学习 人工智能
类人神经网络再进一步!DeepMind最新50页论文提出AligNet框架:用层次化视觉概念对齐人类
【10月更文挑战第18天】这篇论文提出了一种名为AligNet的框架,旨在通过将人类知识注入神经网络来解决其与人类认知的不匹配问题。AligNet通过训练教师模型模仿人类判断,并将人类化的结构和知识转移至预训练的视觉模型中,从而提高模型在多种任务上的泛化能力和稳健性。实验结果表明,人类对齐的模型在相似性任务和出分布情况下表现更佳。
26 3
|
23天前
|
机器学习/深度学习 Web App开发 人工智能
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》这篇论文提出了一种基于YOLOv3-Tiny的轻量级目标检测模型Micro-YOLO,通过渐进式通道剪枝和轻量级卷积层,显著减少了参数数量和计算成本,同时保持了较高的检测性能。
29 2
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
|
23天前
|
机器学习/深度学习 编解码 算法
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
MobileNetV3是谷歌为移动设备优化的神经网络模型,通过神经架构搜索和新设计计算块提升效率和精度。它引入了h-swish激活函数和高效的分割解码器LR-ASPP,实现了移动端分类、检测和分割的最新SOTA成果。大模型在ImageNet分类上比MobileNetV2更准确,延迟降低20%;小模型准确度提升,延迟相当。
48 1
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
|
23天前
|
编解码 人工智能 文件存储
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
YOLOv7是一种新的实时目标检测器,通过引入可训练的免费技术包和优化的网络架构,显著提高了检测精度,同时减少了参数和计算量。该研究还提出了新的模型重参数化和标签分配策略,有效提升了模型性能。实验结果显示,YOLOv7在速度和准确性上超越了其他目标检测器。
40 0
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
|
2月前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
85 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
2月前
|
网络协议 算法 网络安全
CCF推荐A类会议和期刊总结(计算机网络领域)
本文总结了中国计算机学会(CCF)推荐的计算机网络领域A类会议和期刊,这些会议和期刊代表了该领域的顶尖水平,汇聚了全球顶尖研究成果并引领前沿发展。A类期刊包括IEEE Journal on Selected Areas in Communications、IEEE Transactions on Mobile Computing等;A类会议包括SIGCOMM、MobiCom等。关注这些平台有助于研究人员紧跟技术前沿。
CCF推荐A类会议和期刊总结(计算机网络领域)
|
2月前
|
传感器 算法 物联网
CCF推荐C类会议和期刊总结:(计算机网络领域)
该文档总结了中国计算机学会(CCF)推荐的计算机网络领域C类会议和期刊,详细列出了各类会议和期刊的全称、出版社、dblp文献网址及研究领域,为研究者提供了广泛的学术交流资源和平台。
CCF推荐C类会议和期刊总结:(计算机网络领域)
|
2月前
|
传感器 网络协议
CCF推荐B类会议和期刊总结:(计算机网络领域)
中国计算机学会(CCF)推荐的B类会议和期刊在计算机网络领域具有较高水平。本文总结了所有B类会议和期刊的详细信息,包括全称、出版社、dblp文献网址及研究领域,涵盖传感器网络、移动网络、网络协议等多个方向,为学者提供重要学术交流平台。
CCF推荐B类会议和期刊总结:(计算机网络领域)
|
3月前
|
机器学习/深度学习 算法 网络架构
神经网络架构殊途同归?ICML 2024论文:模型不同,但学习内容相同
【8月更文挑战第3天】《神经语言模型的缩放定律》由OpenAI研究人员完成并在ICML 2024发表。研究揭示了模型性能与大小、数据集及计算资源间的幂律关系,表明增大任一资源均可预测地提升性能。此外,论文指出模型宽度与深度对性能影响较小,较大模型在更多数据上训练能更好泛化,且能高效利用计算资源。研究提供了训练策略建议,对于神经语言模型优化意义重大,但也存在局限性,需进一步探索。论文链接:[https://arxiv.org/abs/2001.08361]。
43 1
|
3月前
|
人工智能 算法 安全
【2023 年第十三届 MathorCup 高校数学建模挑战赛】C 题 电商物流网络包裹应急调运与结构优化问题 赛后总结之31页论文及代码
本文总结了2023年第十三届MathorCup高校数学建模挑战赛C题的解题过程,详细阐述了电商物流网络在面临突发事件时的包裹应急调运与结构优化问题,提出了基于时间序列预测、多目标优化、遗传算法和重要性评价模型的综合解决方案,并提供了相应的31页论文和代码实现。
72 0