0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于三篇论文中自然语言研究进展与发展方向详解

深度学习自然语言处理 来源:复旦DISC 作者:姚倩媛 2021-03-30 16:11 次阅读

引言

自然语言理解(Natural Language Understanding,NLU)是希望机器像人一样,具备正常人的语言理解能力,是人机对话系统中重要的组成部分。NLU主要包括两大任务,分别是意图识别(Intent Detection)和槽填充(Slot Filling)。其中,意图识别就是判断用户的意图,是一个文本分类的问题;槽填充是识别句子中重要的语义成分,常建模成序列标注的任务。

本次分享EMNLP2020中的三篇和NLU相关的文章,介绍这个领域目前的研究进展和关注方向。

文章概览

SlotRefine: A Fast Non-Autoregressive Model for Joint Intent Detection and Slot Filling

论文提出了一个非自回归的意图识别和槽填充联合模型,该模型以Transformer为基本结构,使用两阶段迭代机制显著地提高了模型性能和模型速度。

论文地址:https://www.aclweb.org/anthology/2020.emnlp-main.152

Incremental Processing in the Age of Non-Incremental Encoders: An Empirical Assessment of Bidirectional Models for Incremental NLU

论文提出了三种适用于增量NLU任务的评价指标,探究了目前非增量编码器在增量系统中的模型性能。

论文地址:https://www.aclweb.org/anthology/2020.emnlp-main.26

End-to-End Slot Alignment and Recognition for Cross-Lingual NLU

论文提出了用于一种跨语言自然语言理解的端到端槽位标签对齐和识别模型,该模型运用注意力机制将目标语言文本表示和源语言的槽位标签软对齐,并且同时预测意图和槽标签。

论文地址:https://www.aclweb.org/anthology/2020.emnlp-main.410/

1论文细节

f2488e5e-8e8e-11eb-8b86-12bb97331649.png

论文动机

以往的自然语言理解模型大多依赖于自回归的方法(例如,基于RNN的模型或seq2seq的架构)来捕捉话语中的语法结构,并且在槽填充任务中常使用条件随机场(CRF)模块来确保序列标签之间的合理性。然而本文作者发现,对于槽填充任务而言,从槽块之间建模依赖关系就足以满足任务需要,而使用自回归的方法对整个序列的依赖关系建模会导致冗余计算和高延迟。因此作者使用非自回归的方法来建模意图识别和槽填充两个任务,从而消除非必要的时间依赖,并且采用两阶段迭代机制来处理由于条件独立性导致的槽标签之间的不合理问题。

模型

模型主要包括两个方面,分别是非自回归的联合模型以及两阶段改善机制。

非自回归的联合模型

模型使用了《Attention is all you need》(Vaswani等人, 2017)这篇论文中提出的Transformer模型的encoder部分作为本文模型编码层的主要结构。与原始Transformer不同的是,作者将绝对位置编码改为相对位置表示来建模文本序列信息

对于每个输入的文本序列,都会在初始位置添加一个特殊的符号“CLS”来表示句子信息。文本序列的输入为,经过Multi-Head Self Attention编码后得到输出向量为 。其中,向量将用于意图分类,将和每个时刻的拼接用于对应的槽位预测。意图识别和槽填充的计算公式如下:

联合模型的任务目标是通过优化交叉熵损失函数来最大化条件概率分布:

与自回归模型不同的是,这个模型中每个槽位预测可以并行优化,由此提高了模型速度。

两阶段改善机制

由于槽位标签之间的条件独立性,上述非自回归联合模型难以捕获每个槽位块之间的依赖关系,从而导致一些槽位标签不合理现象。如下图所示,根据BIO标签规则,“I-song”并不能跟在“B-singer”后面。

f320fe4c-8e8e-11eb-8b86-12bb97331649.png

因此,作者提出两阶段的迭代机制,使用两次槽位预测的方法来改善这个问题。模型的输入除了文本信息之外,还有槽位标签信息,初始化的槽位标签均为“O”。在第一阶段,模型的目标是预测每个槽块的起始标签“B-tags”,在第二阶段,预测的“B-tags”将作为相应槽位标签的输入,由此,模型可以进一步预测出“B-tags”后面对应的标签。两阶段的改善机制可以看作是自回归与非自回归之间的权衡,其中完整的马尔可夫过程可以表示为:

其中,是第一阶段的槽标签预测结果。

实验

实验使用的数据集是NLU领域两个经典的公开数据集:ATIS(Tur等人,2010)和Snips(Coucke等人,2018)。作者将本文模型与六种意图识别和槽填充联合模型进行了比较。结果如下:

f3b153ca-8e8e-11eb-8b86-12bb97331649.png

由上表可知,本文模型SlotRefine在ATIS数据集上取得了最佳效果,在槽填充F1值、意图识别准确率和句子层面准确率三个指标上均超过了现有模型。在Snips数据集上,模型效果没有Stack-Propagation好。从消融实验结果看到,在非自回归联合模型上加入CRF层会有效提高槽填充任务的性能,但会降低意图识别准确率和句子层面准确率,而本文提出的两阶段改善机制则可以显著提高模型效果。

f42ef956-8e8e-11eb-8b86-12bb97331649.png

作者还比较了模型速度上的改进效果,由上表可知,在ATIS数据集上,与现有的最优模型Stack-Propagation相比,本文提出的模型SlotRefine的速度提高了4.31倍。由于每个槽标签均可以并行计算,因此模型的推理延迟可以显著减少。

f490a552-8e8e-11eb-8b86-12bb97331649.png

2论文动机

增量学习是指模型能够不断地处理现实世界中连续的信息流,在吸收新知识的同时保留甚至整合、优化旧知识的能力。在NLP领域,增量处理方式在认知上更加合理,并且在工程层面,一些实时应用(如自然语言理解、对话状态追踪、自然语言生成、语音合成和语音识别)要求在一定时间步长的部分输入的基础上必须提供部分输出。虽然人类使用增量的方式处理语言,但目前在NLP中效果最好的语言编码器(如BiLSTM和Transformer)并不是这样的。BiLSTM和Transformer均假定编码的整个序列是完全可用的,可以向前或向后处理(BiLSTM),也可以作为一个整体处理(Transformer)。本文主要想探究这些非增量模型在增量系统下的效果,作者在不同的NLU数据集上实验了五个非增量模型,并使用三个增量评估指标比较它们的性能。

增量系统评价指标

增量系统可以通过添加、撤销和替换输出部分来编辑输出。一个效果良好的增量系统应当能够尽快产生准确的输出,并且撤销和替换要尽可能少。由此,本文提出三个评价指标:编辑开销、校正时间和相对正确性。

编辑开销(Edit Overhead,EO):不必要的编辑比例,范围在0-1之间,越接近于0,说明编辑越少。

校正时间(Correction Time,CT):系统提交某一输出内容的最终决策之前所花的时间,范围在0-1之间,越接近于0,说明系统越快做出最终决策。

相对正确性(Relative Correctness,RC):输出相对于非增量输出时正确的比例,范围在0-1之间,越接近于1表示系统的输出大部分时刻下都是非增量输出的正确前缀。

作者以词性标注任务为例展示了三个评价指标的计算过程。如下图所示:

f4edd3bc-8e8e-11eb-8b86-12bb97331649.png

模型

作者一共探究了五种非增量模型在增量系统中的表现,分别是:(a) LSTM模型;(b)BiLSTM模型;(c)LSTM+CRF;(d)BiLSTM+CRF;(e)BERT。其中,(a)、(b)、(e)模型同时用于序列标注和文本分类任务,(c)和(d)模型只用于序列标注任务。

本文探索了三种策略的效果,分别是截断训练、延迟输出和语言:

截断训练(truncated training):去掉训练集中每个句子的结尾来修改训练机制。

延迟输出(delayed output):允许模型在输出当前时刻单词的标签之前观察后续1-2个时刻的单词。

语言(prophecies):使用GPT-2语言模型将每个时刻的输入前缀作为左上下文,并由此生成一个持续到句子末尾的文本,创建一个假设的完整上下文,以满足模型的非增量特性的需要。如下图所示:

f5f0d408-8e8e-11eb-8b86-12bb97331649.png

实验

作者一共在十个英文数据集上进行了实验,六个数据集用于序列标注任务:组块分析(Chunk)、槽填充(Slot Filling (ATIS)和Slot Filling (SNIPS))、命名实体识别(NER)、词性标注(Part-of-Speech Tagging) 、语义角色标注(Semantic Role Labeling);四个数据集用于文本分类任务:意图识别(Intent (ATIS)和Intent (SNIPS))、情感分析(Positive/Negative和Pros/Cons)。其中,Chunking、NER、SRL和Slot Filling均使用BIO标签体系并且使用F1值进行评估,其他的任务使用准确率评价。

五种模型在上述数据集上的实验结果如下所示,括号里代表使用了截断训练的结果。从中可知,大部分情况下BiLSTM比LSTM效果好;BERT可以提升所有任务性能;截断训练后模型性能都有所下降,但BERT仍优于其他所有模型。整体来说,目前的非增量编码器可以适应在增量系统下使用,其性能产生不会有太大影响。

f64ab446-8e8e-11eb-8b86-12bb97331649.png

模型在三个增量系统的评价指标上的表现结果如下所示。从中可以发现,除BERT外,模型在序列标注任务的编辑开销和校正时间均较低;在文本分类中,由于往往需要捕捉全局信息,编辑开销和校正时间均较高;对于相对正确性这个指标,在序列标注任务中BERT比其他模型效果都差,在文本分类任务中性能差不多。

f6ba4888-8e8e-11eb-8b86-12bb97331649.png

作者还探究了不同策略的效果,从图中可知,截断训练可以有效减少编辑开销,提高相对正确性;预言对于文本分类任务有负面作用,但对于一些序列标注任务可能有效。BERT模型在增量评价指标上的缺陷可以通过这些策略得到一定缓解,从而使其在增量系统下的模型效果与其他模型一样好。

f741cf60-8e8e-11eb-8b86-12bb97331649.png

3

f7adfbb8-8e8e-11eb-8b86-12bb97331649.png

论文动机

NLU可以将话语解析成特定的语义框架,以识别用户的需求。虽然目前神经网络模型在意图检测和槽填充方面取得了很高的准确性,在两个公开的英文数据集上模型的效果已经达到95%以上,但如果使用一种新的语言训练这样的模型仍需要大量的数据和人工标注工作。因此考虑通过跨语言学习将模型从高资源语言迁移到低资源语言,从而减少数据收集和标注的工作量。

跨语言迁移学习主要有两种方式:一种是使用多语言模型来实现语言的迁移,例如multilingual BERT;另一种是通过机器翻译的方式先统一语言类型,虽然它在跨语言文本分类上取得了很好的效果,但在序列标注任务上存在一些挑战,源语言的标签需要映射到目标语言中,而如果两个语言差别较大,则较难找到良好的映射关系。

目前跨语言NLU任务中存在一些挑战:(1)可以使用的数据集(Multilingual ATIS)仅支持三种语言,语言类型不足;(2)现有的模型使用机器翻译和槽标签投影的方法将NLU系统扩展到新语言中,这种方法对标签投影错误很敏感。

因此,这篇文章发布了一个新的跨语言NLU数据库(MultiATIS++),探索了不同的跨语言迁移方法的效果,并且提出了一种新的端到端模型,该模型可以对目标语言槽标签进行联合对齐和预测,以实现跨语言迁移。

数据集

MultiATIS++数据集在Multilingual ATIS数据集基础上新增了六种语言,共覆盖九种语言,并对每种语言人工打上槽位标签(使用BIO标签体系)。数据集样例和数据集的描述特征如下所示:

f81e3392-8e8e-11eb-8b86-12bb97331649.png

f880ac48-8e8e-11eb-8b86-12bb97331649.png

模型

f905679e-8e8e-11eb-8b86-12bb97331649.png

上图为作者提出的端到端槽对齐和识别模型,使用Attention机制将目标语言表示与源语言槽标签进行软对齐,模型直接将编码器模块连接到意图和槽分类层,对目标语言同时预测意图和槽标签。该模型使用额外的Attention层来同时完成槽标签对齐和识别任务,不需要额外的槽标签投影过程。

记为源语言文本序列,为目标语言文本序列,源语言文本经过Embedding之后得到向量表示,目标语言经过Embedding和Encoder后得到上下文表示,其中是额外添加的符号,用于表示目标语言句子表示。意图识别任务的公式如下:

对于槽填充任务,先计算目标语言和源语言的注意力向量,然后再进行目标语言的槽位预测,其公式如下:

此外,作者还提出了一个重构模块来提高目标语言和源语言的对齐效果:

意图识别、槽填充和重构模块的损失函数如下所示,模型的损失函数为三者相加:

实验结果

Multilingual NLU

作者使用multilingual BERT预训练模型作为encoder,并比较了仅使用目标语言进行NLU和使用全部的语言进行NLU时监督训练的效果。如图所示,BERT相比于LSTM在不同语言上均能显著提高模型性能,并且多语言监督训练能进一步提高模型性能。

f9a0b708-8e8e-11eb-8b86-12bb97331649.png

Cross-Lingual Transfer

作者比较了不同的跨语言迁移学习方法,其中源语言是英语,目标语言共有八种。实验结果和模型速度如下所示:

fa584d82-8e8e-11eb-8b86-12bb97331649.png

fb170998-8e8e-11eb-8b86-12bb97331649.png

MT+soft-align是本文提出的模型,在八个目标语言数据集中,有五个语言本文模型相比于MT+fast-align的效果更好,并且在意图识别和槽填充任务中本文模型的鲁棒性更强。本文模型的速度明显优于MT+TMP模型,在模型性能上,意图识别任务中,本文模型在六个语言上表现更好,槽填充任务中,本文模型在四个语言上表现更佳。综合模型性能和模型速度,端到端的槽标签软对齐和识别模型在跨语言NLU任务上具有一定优势。

参考文献

[1] Vaswani A , Shazeer N , Parmar N , et al. Attention Is All You Need[J]。 arXiv, 2017.

[2] Tur G , Hakkani-Tur D , Heck L 。 What is left to be understood in ATIS?[C]// Spoken Language Technology Workshop (SLT), 2010 IEEE. IEEE, 2011.

[3] Coucke A , Saade A , Ball A , et al. Snips Voice Platform: an embedded Spoken Language Understanding system for private-by-design voice interfaces. 2018.
编辑:lyn

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 识别模型
    +关注

    关注

    0

    文章

    5

    浏览量

    6718
  • 自然语言
    +关注

    关注

    1

    文章

    287

    浏览量

    13330

原文标题:【论文分享】EMNLP 2020 自然语言理解

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ASR与自然语言处理的结合

    ASR(Automatic Speech Recognition,自动语音识别)与自然语言处理(NLP)是人工智能领域的两个重要分支,它们在许多应用中紧密结合,共同构成了自然语言理解和生成的技术体系
    的头像 发表于 11-18 15:19 301次阅读

    自然语言处理与机器学习的区别

    在人工智能的快速发展中,自然语言处理(NLP)和机器学习(ML)成为了两个核心的研究领域。它们都致力于解决复杂的问题,但侧重点和应用场景有所不同。 1. 自然语言处理(NLP) 定义:
    的头像 发表于 11-11 10:35 352次阅读

    【《大语言模型应用指南》阅读体验】+ 基础

    讲解,包括偏置、权重、激活函数;要素包括网络结构、损失函数和优化方法。章节最后总结了神经网络参数学习的关键步骤。 1.4章节描述了自然语言处理的相关知识点,包括什么是自然语言处理、文本的向量化和自监督
    发表于 07-25 14:33

    图像识别技术包括自然语言处理吗

    图像识别技术与自然语言处理是人工智能领域的两个重要分支,它们在很多方面有着密切的联系,但也存在一些区别。 一、图像识别技术与自然语言处理的关系 1.1 图像识别技术的定义 图像识别技术是指利用
    的头像 发表于 07-16 10:54 631次阅读

    自然语言处理前馈网络综述

    多层感知器(MLP)和卷积神经网络(CNN),在这一领域扮演着关键角色。以下是对自然语言处理前馈网络的详细阐述,包括其基本原理、在NLP中的应用、优势、挑战以及未来发展方向
    的头像 发表于 07-12 10:10 274次阅读

    用于自然语言处理的神经网络有哪些

    自然语言处理(Natural Language Processing, NLP)是人工智能领域的一个重要分支,旨在让计算机能够理解和处理人类语言。随着深度学习技术的飞速发展,神经网络模型在NLP领域
    的头像 发表于 07-03 16:17 850次阅读

    自然语言处理技术有哪些

    自然语言处理(Natural Language Processing,简称NLP)是人工智能领域的一个分支,它致力于使计算机能够理解、解释和生成人类语言自然语言处理技术的发展已经取得
    的头像 发表于 07-03 14:30 950次阅读

    自然语言处理模式的优点

    自然语言处理(Natural Language Processing,简称NLP)是人工智能领域的一个重要分支,它致力于使计算机能够理解、生成和处理人类语言。随着技术的发展自然语言
    的头像 发表于 07-03 14:24 650次阅读

    自然语言处理技术的核心是什么

    自然语言处理(Natural Language Processing,简称NLP)是人工智能领域的一个重要分支,其核心目标是使计算机能够理解、生成和处理人类语言。NLP技术的发展已经取得了显著的
    的头像 发表于 07-03 14:20 586次阅读

    自然语言处理是什么技术的一种应用

    自然语言处理(Natural Language Processing,简称NLP)是人工智能和语言学领域的一个分支,它涉及到使用计算机技术来处理、分析和生成自然语言文本。自然语言处理技
    的头像 发表于 07-03 14:18 617次阅读

    自然语言处理包括哪些内容

    自然语言处理(Natural Language Processing,简称NLP)是人工智能领域的一个重要分支,它涉及到计算机与人类语言之间的交互。NLP的目标是让计算机能够理解、生成和处理人类语言
    的头像 发表于 07-03 14:15 732次阅读

    自然语言处理属于人工智能的哪个领域

    之间的交互,旨在使计算机能够理解、生成和处理自然语言自然语言处理:人工智能的皇冠上的明珠 引言 人工智能作为一门跨学科的研究领域,涵盖了计算机科学、数学、心理学、语言学等多个学科。
    的头像 发表于 07-03 14:09 1132次阅读

    什么是自然语言处理 (NLP)

    自然语言处理(Natural Language Processing, NLP)是人工智能领域中的一个重要分支,它专注于构建能够理解和生成人类语言的计算机系统。NLP的目标是使计算机能够像人类一样
    的头像 发表于 07-02 18:16 1050次阅读

    自然语言处理技术的原理的应用

    自然语言处理(Natural Language Processing, NLP)作为人工智能(AI)领域的一个重要分支,旨在使计算机能够理解和处理人类自然语言。随着互联网的普及和大数据技术的发展
    的头像 发表于 07-02 12:50 452次阅读

    神经网络在自然语言处理中的应用

    自然语言处理(NLP)是人工智能领域中的一个重要分支,它研究的是如何使计算机能够理解和生成人类自然语言。随着人工智能技术的飞速发展,神经网络在自然语
    的头像 发表于 07-01 14:09 432次阅读