摘要
本文简述了多人对话(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 任务定义
我们可以将多人对话语篇解析任务形式化定义为:
输入:,其中D 是一个多人对话的EDU序列,包含共n个EDU,而为人工指定的一个节点,便于后续处理。
输出:,输出为一个有向无环图G。
V:顶点集,由EDU组成的顶点集且;
E:边集,2个EDU之间存在边当且仅当这2个EDU具备篇章语义关系,并且每条边上仅有一类篇章语义关系;
R:篇章语义关系集合,包含对话 D 中的全部篇章语义关系。
注意:由若干个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