论文名称:A Survey on Spoken Language Understanding: Recent Advances and New Frontiers
论文作者:覃立波,谢天宝,车万翔,刘挺
原创作者:谢天宝,覃立波
论文链接:https://arxiv.org/abs/2103.03095
仓库链接:https://github.com/yizhen20133868/Awesome-SLU-Survey
2021年北京智源大会
「自然语言处理论坛」报名入群:
(还有更多日常学术活动,^_^)
更多论坛报名请查看小程序:
口语语言理解 作为任务型对话系统的核心组件,目的是为了获取用户询问语句的框架语义表示信息,进而将这些信息为对话状态追踪模块(DST)以及自然语言生成模块(NLG)所使用。
SLU任务通常包含以下两个任务:
意图识别任务(intent detection)
槽位填充任务(slot filling)
以图1的句子「I like to watch action movie」为例,这两个任务的输出对应分别为Watch Movie和O, O, O, B-movie-type,I-movie-type, I-movie-type。
图1 意图标注和槽位标注(BIO格式)
一般来讲,我们可以将意图识别视作为一个句分类问题,研究也主要基于怎么样对句子粒度的特征进行更好的表示。从传统特征表示到CNN,到基于RNN的一系列模型等等,更好的句子表示被不断地挖掘。
意图识别问题可以被视作是一个序列分类问题,流行的方法从CRF到RNN再到LSTM等,研究为了对对话单句里面的词进行更好的表示而不断挖掘。
传统的方法一般将意图识别和槽位填充视作两个独立的任务,忽视了这两个任务之间的共享的信息。比如如果一个句子的意图是WatchMovie,那么这个句子就更可能包含movie name的槽位而不是music name的槽位。
考虑到这一点,随着对于联合模型的进一步挖掘,如图2所示,目前最好的工作,已经在SLU领域的两个最被广泛使用的数据集ATIS[1]和SNIPS[2]上取得了96.6%和97.1%的槽位填充表现和98%到99%的意图识别表现。
图2 近期模型表现的趋势,目前SOTA(State-of-the-art)的工作在2020年取得了96.6%和97.1%的槽位填充表现和98%到99%的意图识别表现
如此高的分数不禁留给了我们研究者一个问题:我们已经完美地解决了口语语言理解这个任务了吗?
我们将通过领域综述的方式解答这个问题,我们的综述内容主要包含三个方面:
1)最近SLU领域进展的全面总结;
2)复杂情景下研究的挑战和机遇;
3)SLU全面的代码,数据集等资源。
文章版面有限,为了更好地协助社区工作,我们在开源社区Github公开了我们的全面的整理,包含有领域最新的开源论文文章和代码的整理,SLU各个数据集的介绍、获取方式等信息整理,主流数据集上的LeaderBoard榜单整理等等。
链接:https://github.com/yizhen20133868/Awesome-SLU-Survey
我们希望我们的努力可以帮助到社区的研究人员和有志于该领域研究的研究者,同时希望大家多多fork&pr,共同将这个社区维护起来搭建下去。
01
领域模型的分类
我们在本survey中提供了多元化的角度对模型进行了分类与归纳。
图3 (a)单任务模型;(b)隐式联合建模;(c)显示联合建模;(d)预训练范式
按照是否将意图识别任务和槽位填充任务看作联合的任务,可以将模型分类为单任务模型(Single Model)和联合模型(Joint Model) 。
单模型工作主要集中在联合模型兴起之前,我们在文章介绍了一些经典的两个任务上的单模型工作,比如RNN类型的探索[3],LSTM的引入[4],与CRF的重新结合[5],句子信息的利用上下文的探索[6]等等。并且为这些工作整理了结果,如表1所示。
表1 意图识别和槽位填充任务的经典单模型工作
在联合模型中,我们又可以根据共享信息是采用一个共享编码器隐式学习的,还是专门设计结构去进行任务之间交互的,去将联合模型分类为隐式联合(Implicit Joint)和显式联合(Explicit Joint)。
隐式联合模型中我们介绍了采用共享编码器的Joint ID and SF模型[7],将注意力机制引入的Attention bi-RNN模型[8]等等模型。我们节选了部分经常被使用作为baseline的模型,将他们的结果整理到表格中,方便研究者进行查阅。
表2 意图识别和槽位填充任务的联合模型表现
在显式联合里面又可以根据交互的信息指导的利用方向将模型分为利用意图指导槽位的单方向交互(Single Flow Interaction)和两个方向互相交互的同时也使用槽位预测信息指导意图识别的双方向交互(Bidirectional Flow Interaction),单向交互包含了Slot-Gated模型[9],Self-Attention模型[10]和Stack-Propagation模型[11]等,双向交互介绍了Bi-Model[12],SF-ID[13],co-interactive transformer[14]等模型。
此外,随着预训练模型的兴起,我们又将模型根据是否使用预训练模型的信息提取编码分为预训练范式的和非预训练范式的。当下研究中预训练在SLU的具体使用和其在一般的句子分类任务和序列分类任务的使用类似,以BERT模型为例,研究一般在句子的开头加入[CLS]符号作为句子信息的聚合锚定位置,然后将[CLS]位置的编码作为句子的编码,将其他位置的编码作为对应词的编码。我们介绍了BERT-Joint[15],Joint BERT +CRF[16]这些较为朴素直接的方法,和将编码器切换为预训练编码器进一步提升性能的Stack-Propagation +BERT[11],co-interactive transformer +BERT[14]等等相关的工作。
以我们提出的分类方式作为线索,我们可以更加清晰全面的对于当下研究提出的模型进行概括归类,深化我们对于领域研究的理解。
02
更加复杂的情境下的口语理解
- 新的领域与挑战 -
我们之前的设定中,假定了一个单领域,单语言,单句对话等等较为强的假设下解决问题的情景,而在真实场景中,领域是较为灵活的,语言是较为多变的,单句对话情况是居于少数不利于用户体验的。所以该假定实际上限制了我们最后应用的能力,离我们的真实生活应用场景还有一段不小的距离。
我们在综述中对如下所述诸多重要的、具有更加复杂设定的新研究领域进行了相关工作的介绍与研究中所包含的挑战的总结。
3.1 上下文口语理解(Contextual SLU)
实际情境中完成一个任务需要多轮次的对话,多次的来-回而互相关联对话考验我们的系统能否更加有效地去获取上下文的信息,我们介绍了领域的一些相关工作,包括采用记忆网络的结构[17],动态利用上下文信息聚合[18]等。
总结了该领域包含的主要挑战有如何更好地将上下文信息进行聚合,以及如何克服远距离获取有效信息的障碍。
3.2 多意图口语理解(Multi-Intent SLU)
在亚马逊的内部语音数据集上,52%的对话都是具有多意图的[19],对句子进行多意图的设定能够更好地接近真实的生活场景。
为此我们介绍了一些相关的工作包括联合进行多意图分类和槽位填充任务的模型和进行多意图和槽位填充交互的模型等。我们总结了当下的主要挑战主要在于解决如何有效地对多意图和槽位填充进行交互和缺少相关的表中数据等问题。
3.3 中文口语理解(Chinese SLU)
中文社区需要中文口语理解以进行相关的工作。我们介绍了一些相关的工作如字粒度编码和词粒度字粒度结合信息的编码的方法[20]。
当下中文口语理解所面临的挑战有如何有效地将词语信息集成以及如何处理特有的中文分词多种分词引发的问题。
3.4 跨领域口语理解(Cross Domain SLU)
对于单个领域的假设限制了我们模型的表现,实际上我们的模型虽然在具有大量数据上的单领域语料上取得了良好的表现,但是却无法在切换到新的领域后仍然保持相关的表现,限制了模型在实际使用中的实用性。
我们将当前的跨领域模型分类为隐式的多领域的信息编码共享和多领域的模型编码交互两类,介绍了一些相关的工作。我们总结该领域主要的挑战还有领域之间的信息的转化和领域零资源情景下模型表现。
3.5 跨语言口语理解(Cross-lingual SLU)
我们这里所指的跨语言口语理解是指赋予模型在英语语言与语料训练之后能具有直接在其它语言上进行使用的能力,鉴于我们拥有充足的英语资源而在其他语言以及其他诸多小语种内没有那么多的资源,这个领域也逐渐引起大家的重视。
我们介绍了一些相关的工作,包含一些专门为跨语言口语理解提出来的数据集以及为了不同语言的词语更好地对齐的数据增强方法。我们总结该领域的研究主要的挑战有解决不同词语之间的对齐,和用来处理新语言不断出现的模型的生成性。
3.6 低资源口语理解(Low-resource SLU)
我们之前的设定假设我们具有相对充足的语料进行训练,但是实际上随着应用的快速部署,经常有新出现的对话情境下数据很少甚至没有数据的情况。
我们将这些情况对应的研究分类为少样本口语理解(Few-shot SLU),零资源口语理解(Zero-shot SLU)和无监督口语理解(Unsurpervised SLU)三个类别,我们对其进行了相关概念和工作的介绍。
我们总结该领域的挑战主要在于当前还很少有研究专注于如何在低资源条件下充分利用意图和槽位的连接以及当前公开的用于衡量模型能力的Benchmark仍旧缺少。
03
总结
我们希望这篇survey和配套的GitHub资源领域(包括最新的开源论文文章和代码的整理,SLU各个数据集的介绍、获取方式等信息整理,主流数据集上的LeaderBoard榜单整理等等)可以协助社区研究者的工作,使得查询,追踪,研究的过程变得更加便捷。
相关论文
[1] Charles T. Hemphill, John J. Godfrey, and George R. Doddington. 1990. The ATIS spoken language systems pilot corpus. In Proceedings of the workshop on Speech and Natural Language (HLT '90). Association for Computational Linguistics, USA, 96–101. DOI:https://doi.org/10.3115/116580.116613
[2] Alice Coucke, Alaa Saade, Adrien Ball, Th´eodore Bluche, Alexandre Caulier, David Leroy, Cl´ement Doumouro, Thibault Gisselbrecht, Francesco Caltagirone, Thibaut Lavril, et al. Snips voice platform: an embedded spoken language understanding system for private-by-design voice interfaces. arXiv preprint arXiv:1805.10190, 2018.
[3] Kaisheng Yao, Geoffrey Zweig, Mei-Yuh Hwang, Yangyang Shi, and Dong Yu. Recurrent neural networks for language understanding. In Interspeech, 2013.
[4] Kaisheng Yao, Baolin Peng, Yu Zhang, Dong Yu, Geoffrey Zweig, and Yangyang Shi. Spoken language understanding using long short-term memory neural networks. In SLT, 2014.
[5] Kaisheng Yao, Baolin Peng, GeoffreyZweig, Dong Yu, Xiaolong Li, and Feng Gao. Recurrent conditional random field for language understanding. In ICASSP, 2014.
[6] Gakuto Kurata, Bing Xiang, Bowen Zhou, and Mo Yu. Leveraging sentence-level information with encoder LSTM for semantic slot filling. In Proc. Of EMNLP, 2016.
[7] Xiaodong Zhang and Houfeng Wang. A joint model of intent determination and slot filling for spoken language understanding. In Proc. of IJCAI, 2016.
[8] Bing Liu and Ian Lane. Attention-based recurrent neural network models for joint intent detection and slot filling. In Interspeech, 2016.
[9] Chih-Wen Goo, Guang Gao, Yun-Kai Hsu, Chih-Li Huo, Tsung-Chieh Chen, Keng-Wei Hsu, and Yun-Nung Chen. Slot-gated modeling for joint slot filling and intent prediction. In Proc. of NAACL, 2018.
[10] Changliang Li, Liang Li, and Ji Qi. A self-attentive model with gate mechanism for spoken language understanding. In Proc. of EMNLP, 2018.
[11] Libo Qin, Wanxiang Che, Yangming Li, Haoyang Wen, and Ting Liu. A stack-propagation framework with token-level intent detection for spoken language understanding. In Proc. of EMNLP-IJCNLP, 2019.
[12] Yu Wang, Yilin Shen, and Hongxia Jin. A bi-model based RNN semantic frame parsing model for intent detection and slot filling. In Proc. of NAACL, 2018.
[13] Haihong E, Peiqing Niu, Zhongfu Chen, and Meina Song. A novel bi-directional interrelated model for joint intent detection and slot filling. In Proc. of ACL, 2019.
[14] Libo Qin, Tailu Liu, Wanxiang Che, Bingbing Kang, Sendong Zhao, and Ting Liu. A counteractive transformer for joint slot filling and intent detection. In ICASSP, 2021.
[15] Giuseppe Castellucci, Valentina Bellomaria, Andrea Favalli, and Raniero Romagnoli. Multi-lingual intent detection and slot filling in a joint bertbased model. arXiv preprint arXiv:1907.02884, 2019.
[16] Qian Chen, Zhu Zhuo, and Wen Wang. Bert for joint intent classification and slot filling. arXiv preprint arXiv:1902.10909, 2019.
[17] Yun-Nung Vivian Chen, Dilek Hakkani-T¨ur, Gokhan Tur, Jianfeng Gao, and Li Deng. End-to-end memory networks with knowledge carryover for multiturn spoken language understanding. In Interspeech, 2016.
[18] L. Qin, W. Che, M. Ni, Y. Li, and T. Liu. Knowing where to leverage: Context-aware graph convolution network with an adaptive fusion layer for contextual spoken language understanding. TASLP, 2021.
[19] Rashmi Gangadharaiah and Balakrishnan Narayanaswamy. Joint multiple intent detection and slot labeling for goaloriented dialog. In Proc. of NAACL, 2019.
[20] Dechuang Teng, Libo Qin, Wanxiang Che, Sendong Zhao, and Ting Liu. Injecting word information with multi-level word adapter for chinese spoken language understanding. In ICASSP, 2021.
2021年北京智源大会