哈工大SCIR博士生 李家琦作者

多人对话语篇解析简介

摘要

本文简述了多人对话(3人及以上)中的语篇解析任务,主要包括任务和已有工作的介绍,最后给出了相关数据、论文和代码链接。

关键词:Multi-party Dialogues, Discourse Parsing

1 前言

语篇解析(Discourse Parsing,又译篇章分析)是自然语言处理中的一个基础任务,旨在自动分析出文本中的语篇结构(Discourse Structure)和篇章语义关系(Discourse Relations,又译篇章关系、句间关系等)。语篇解析技术已成功应用于问答、文本分类、情感分类和语言建模等任务。

目前大多数语篇解析技术主要关注于宾州篇章树库(Penn Discourse Treebank,PDTB)[1]和修辞结构理论树库(Rhetorical Structure Theory Discourse Treebank,RST-DT)[2]等数据集,或与之类似的其他语言的篇章语义关系语料库。RST-DT与PDTB的发布促进了语篇关系及篇章语义分析技术的进步,而这两个语料的共同之处在于其原始数据均源自华尔街日报——典型的由单一作者完成的正规书面文本。

然而,书面文本数据上训练得到的模型并不适用于口语数据。因此,针对口语数据的标注计划紧接着被提出,作者尝试采用PDTB 3.0和CCR的标注体系对电话对话数据和广播采访数据进行标注[3]。在标注过程中,作者探索了书面语与口语中篇章语义关系的区别。在英文书面文本中,显式语篇关系与隐式语篇关系的比例非常接近,而在口语数据中,显式关系的比例约是隐式关系比例的2倍。另一方面,PDTB 3.0和CCR中超过70%的关系可以互相映射

不同于之前在新闻等独白书面语数据集上的语篇解析,目前已有学者关注于数据偏口语化的多人对话中的语篇解析,主要有基于人工构建特征的方法[4][5]和基于深度学习的方法[6]。在本文接下来的部分中,我首先会介绍本任务的相关工作,然后给出多人对话语篇解析的任务定义,以及已有工作,最后我将提出我对于本任务的分析和想法。

2 任务定义

我们可以将多人对话语篇解析任务形式化定义为:

输入,其中是一个多人对话的EDU序列,包含共n个EDU,而为人工指定的一个节点,便于后续处理。

输出,输出为一个有向无环图G。

  • V:顶点集,由EDU组成的顶点集且

  • E:边集,2个EDU之间存在边当且仅当这2个EDU具备篇章语义关系,并且每条边上仅有一类篇章语义关系;

  • R:篇章语义关系集,包含对话 中的全部篇章语义关系。

注意:由若干个EDU可以组合形成CDU(复杂语义单元),由于CDU的识别以及CDU之间语义关系的识别均较为困难,目前的研究均不作考虑,仅考虑EDU之间的关系。

类似于PDTB和RST-DT,多人对话中的语篇解析任务中也需要识别篇章语义关系,例如对比关系(Contrast)。但是,不同于单一作者的书面文本,多人对话语篇解析需要去预测不相邻EDU之间的语义关系。此外,由于多人对话中的EDU存在多父节点等问题,任务的输出为一个图结构,而非树结构。相比于两人对话数据,多人对话的主题更加分散,不同EDU之间的语义关系类型也更加多样。

多人对话语篇解析旨在分析一个对话中的篇章语义关系,与依存句法分析和语义依存分析的区别主要有以下两方面:

  • 分析粒度不同。多人对话语篇解析中的基本单元是EDU,通常为一条消息或一个句子,分析EDU与EDU之间的语义关系;而依存句法分析或语义依存分析旨在分析一个句子之中各词语之间的语义关系。

  • 边的方向。在多人对话语篇解析任务中,大多数情况时一个EDU仅依赖于较早出现的EDU,即边的指向从前向后。只有在少数情况时较晚的EDU连边到较早EDU(占比非常小),发生于同一个讲者连续说的多句EDU之间。但是,依存句法或语义依存中依赖的方向更具有不确定的。

3 数据集

目前已有的多人对话语篇解析语料是STAC数据集[7]。该语料源自在线游戏The Setters of Catan,该游戏是一款多人参与的输赢游戏,玩家在游戏的过程中可以随时发言。

表1中列出了STAC语料的数据概况。从表1中我们可以看出该数据集中有10,677个EDU和11,348个关系实例,STAC数据集中的EDU通常为玩家发送的一条消息,或消息中的一个句子。表1还说明EDU之间的篇章语义关系相对稀疏,平均每个EDU仅有1.06个关系。

表1 STAC 数据集概况

图1中显示了STAC中的一个对话实例。图1的左侧为原始的多人对话文本,其中包括A、B、C共3名参与者。图1的右侧显示了对该对话进行语篇解析后的标准标注结果,其中的代表(1)~(6)的6条消息,每条消息作为一个基本语义单元(EDU),在输出的有向图中作为一个顶点。图中的有向边代表了篇章语义关系,例如的边代表语义依赖于,而具体的篇章语义关系类型为Elab(Elaboration),即详述关系。除了相邻节点之间的关系,图中存在着不相邻节点的篇章语义关系,例如以及

图1 STAC样例

在STAC数据集中共有16类语义关系,如表2所示。从表2可见,STAC中各类关系十分不均衡。例如,Comment(评论意见)、Acknowledgement(致谢)和Question-answer_pair(问答对)等关系共占了数据集中的48%,而其余13类关系所占比例均较小。

表2 STAC中各类关系的分布情况[7].

4 现有方法

关于多人对话语篇解析目前主要有3篇工作。第一篇论文由法国图卢兹大学提出于EMNLP 2015[4],作者在文中详细介绍了任务定义和STAC数据集。如前文所述,该任务旨在解析出多人对话中的语篇结构和篇章语义关系。作者采用了基于最大熵的人工构建特征的方法来学习任意2个EDU之间的局部信息,通过最大熵获取到的概率未直接应用于预测边和关系,而是进一步使用了最大生成树(MST)的方法用于解码。该模型将任务简化为树结构的预测任务,这导致语料中9%的实例无法应用该模型。

由于基于MST的方法仅能预测树结构的篇章依存关系,为了构建图结构的篇章语义关系分析器,法国图卢兹大学在前一篇论文的最大熵模型的基础上融入了整数线性规划(ILP),不仅考虑了两个EDU之间的内部信息,也融合了整个对话的全局信息[5]。

前两篇论文均由同一单位提出,特点是采用了基于最大熵的人工构造特征的方法,并分别采用MST和ILP进行解码。与前人工作不同,清华大学黄民烈老师团队AAAI 2019发表了基于深度序列模型的多人对话语篇解析模型[6],模型结构如图2所示。该模型的创新性主要在于三方面:首先,采用了深度神经网络自动学习特征,摒弃了人工构建特征的方法;其次,该模型在确定EDU父节点的同时学习到了包含路径信息的结构化表示,例如图1中的;最后,作者首先引入了讲者信息。

图2 基于深度序列模型的多人对话语篇解析[6].

STAC数据集上现有模型的F1值结果如表3所示(更多基线结果可查看[4][5][6])。表中的Link代表边预测任务,即判断2个EDU之间是否存在篇章语义关系,是一个二分类任务;而Link & Rel 代表预测边和关系,在预测边的基础上,还需要进行16-分类的篇章语义关系分类以确定具体的语义关系类型。从表3我们可以发现,融合结构化表示和讲者信息的深度序列模型效果明显优于基于MST和ILP的方法,且省去了人工设计特征的工作。

表3 STAC数据集上现有论文结果 (F1值).

5 结论

多人对话中的语篇解析是一个很有意义的研究工作,可以为其他NLP任务提供基础。不过目前同时预测正确EDU之间的边和关系的F1值仅有55.7,仍有很大的改进空间,同时也存在一些挑战。首先,与句法依存和语义依存类似,该任务是一个non-projective 结构预测问题,即存在非相邻节点之间的语义关系。其次,STAC中的篇章语义关系是一个严重不均衡的16类多分类数据集,不利于充分训练模型。此外,STAC数据集仅有1万多的实例,对训练深度神经网络造成了一定的局限性,不利于使用稍复杂的神经网络结构。

参考文献

[1] Prasad, R., Dinesh, N., Lee, A., Miltsakaki, E., Robaldo, L., Joshi, A. K., & Webber, B. L. (2008, May). The Penn Discourse TreeBank 2.0. In LREC.

[2] Lynn Carlson, Daniel Marcu, and Mary EllenOkurowski. 2003. Building a discourse-tagged corpus in the framework of rhetorical structure theory. Springer.

[3] Ines Rehbein, Merel Scholman, and Vera Demberg. 2016. Annotating discourse relations in spoken language: A comparison of the pdtb and ccr frameworks. In LREC.

[4] Stergos Afantenos, Eric Kow, Nicholas Asher, and Jeremy Perret. 2015. Discourse parsing for multi-party chat dialogues. In Proceedings of the 2015Conference on Empirical Methods in Natural Language Processing, pages 928–937.Association for Computational Linguistics.

[5] Jeremy Perret, Stergos Afantenos, Nicholas Asher, and Mathieu Morey. 2016. Integer linear programming for discourse parsing. In Proceedings of the 2016Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pages 99–109. Association for Computational Linguistics.

[6] Zhouxing Shi and Minlie Huang. 2019. A deep sequential model for discourse parsing on multi-party dialogues. In Thirty-Third AAAI Conference on ArtificialIntelligence.

[7] Nicholas Asher, Julie Hunter, Mathieu Morey, Farah Benamara, and Stergos D Afantenos. 2016. Discourse structure and dialogue acts in multiparty dialogue: the staccorpus. In LREC.

附录:相关链接整理

STAC数据集:https://www.irit.fr/STAC/corpus.html

Afantenos et al. EMNLP 2015(参考文献[4]):
论文:https://aclanthology.info/papers/D15-1109/d15-1109
代码:https://github.com/irit-melodi/irit-stac

Perret et al. NAACL 2016(参考文献[5]):
论文:https://aclanthology.info/papers/N16-1013/n16-1013
代码:https://github.com/irit-melodi/irit-stac

Shi and Huang. AAAI 2019(参考文献[6])
论文:https://arxiv.org/abs/1812.00176
代码:https://github.com/shizhouxing/DialogueDiscourseParsing

哈工大SCIR
哈工大SCIR

哈尔滨工业大学社会计算与信息检索研究中心

理论自然语言处理语义分析人机对话
2
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

最大熵模型技术

最大熵原理是概率模型学习的一个准则:学习概率模型时,在所有可能的概率模型(分布)中,熵最大的模型是最好的模型。 应用最大熵原理得到的模型就是最大熵模型。

分类数据技术

一种特征,拥有一组离散的可能值。以某个名为 house style 的分类特征为例,该特征拥有一组离散的可能值(共三个),即 Tudor, ranch, colonial。通过将 house style 表示成分类数据,相应模型可以学习 Tudor、ranch 和 colonial 分别对房价的影响。 有时,离散集中的值是互斥的,只能将其中一个值应用于指定样本。例如,car maker 分类特征可能只允许一个样本有一个值 (Toyota)。在其他情况下,则可以应用多个值。一辆车可能会被喷涂多种不同的颜色,因此,car color 分类特征可能会允许单个样本具有多个值(例如 red 和 white)。

文本分类技术

该技术可被用于理解、组织和分类结构化或非结构化文本文档。文本挖掘所使用的模型有词袋(BOW)模型、语言模型(ngram)和主题模型。隐马尔可夫模型通常用于词性标注(POS)。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。

有向无环图技术

在图论中,如果一个有向图从任意顶点出发无法经过若干条边回到该点,则这个图是一个有向无环图(DAG图)。 因为有向图中一个点经过两种路线到达另一个点未必形成环,因此有向无环图未必能转化成树,但任何有向树均为有向无环图。

语义分析技术

语义分析是编译过程的一个逻辑阶段, 语义分析的任务是对结构上正确的源程序进行上下文有关性质的审查,进行类型审查。语义分析是审查源程序有无语义错误,为代码生成阶段收集类型信息。比如语义分析的一个工作是进行类型审查,审查每个算符是否具有语言规范允许的运算对象,当不符合语言规范时,编译程序应报告错误。如有的编译程序要对实数用作数组下标的情况报告错误。又比如某些程序规定运算对象可被强制,那么当二目运算施于一整型和一实型对象时,编译程序应将整型转换为实型而不能认为是源程序的错误。

线性规划技术

在数学中,线性规划(Linear Programming,简称LP)特指目标函数和约束条件皆为线性的最优化问题。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

语料库技术

语料库一词在语言学上意指大量的文本,通常经过整理,具有既定格式与标记;事实上,语料库英文 "text corpus" 的涵意即为"body of text"。

生成树技术

在图论的数学领域中,如果连通图 G的一个子图是一棵包含G 的所有顶点的树,则该子图称为G的生成树(SpanningTree)。生成树是连通图的包含图中的所有顶点的极小连通子图。图的生成树不惟一。从不同的顶点出发进行遍历,可以得到不同的生成树。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

黄民烈人物

黄民烈,清华大学计算机科学与技术系副研究员。人工智能、深度学习、机器学习方法与应用;自然语言处理,自动问答,人机对话系统,情感分析,社交数据挖掘。

暂无评论
暂无评论~