作为提取性文档摘要中的关键步骤,学习跨句关系已通过多种方法进行了探索。 一种直观的方法是将它们放在基于图的神经网络中,该网络具有更复杂的结构以捕获句子间的关系。 在本文中,我们提出了一种用于提取摘要的基于异构图的神经网络(HETERSUMGRAPH),该网络包含除句子外的不同粒度级别的语义节点。 这些额外的节点充当句子之间的中介,并丰富了跨句关系。 此外,我们的图结构通过引入文档节点,可以灵活地从单文档设置自然扩展到多文档。 据我们所知,我们是第一个将不同类型的节点引入基于图的神经网络中以进行提取文档摘要并进行全面定性分析以研究其好处的公司。
存在问题
为了有效地从文档中提取值得总结的句子,核心步骤是为交叉句子关系建模。当前大多数模型都使用递归神经网络(RNN)捕获跨句关系(Cheng和Lapata,2016; Nallapati等,2017; Zhou等,2018)。但是,基于RNN的模型通常很难捕获句子级的远程依赖,尤其是在长文档或多文档的情况下。一种更直观的方法是使用图结构为句子之间的关系建模。然而,寻找有效的图结构进行汇总是具有挑战性的。已经以各种方式进行了努力。早期的传统工作利用句间余弦相似度来构建连接图,例如LexRank(Erkan和Radev,2004)和TextRank(Mihalcea和Tarau,2004)。最近,一些作品在构建摘要图时考虑了语篇之间的关系,例如具有句子个性化特征的近似语篇图(ADG)(Yasunaga等人,2017)和修辞结构理论(RST)图(Xu等人。 ,2019)。但是,它们通常依赖于外部工具,并且需要考虑错误传播问题。一种更直接的方法是创建一个句子级的全连接图。在某种程度上,可以将最近工作中使用的Transformer编码器(Vaswani等人,2017)(Zhong等人,2019a; Liu和Lapata,2019b)分类为此类,以学习句子之间的成对交互。尽管取得了成功,但如何构建有效的图结构进行汇总仍是一个悬而未决的问题。
方法
在本文中,我们提出了一种用于提取摘要的异构图网络。我们不仅仅在句子级节点上构建图,而是引入更多的语义单元作为图中的其他节点,以丰富句子之间的关系。这些额外的节点充当连接句子的中介。即,每个附加节点都可以看作是包含该附加节点的句子之间的特殊关系。在通过异构图的消息传递过程中,这些其他节点以及句子节点将被迭代更新。
尽管可以使用更高级的功能(例如实体或主题),但为简单起见,我们在本文中将单词用作语义单元。每个句子都与其包含的单词相关。所有句子对和单词对都没有直接边缘。所构造的异构单词句图具有以下优点:(a)考虑到显式重叠的单词信息,不同的句子可以彼此交互。 (b)单词节点还可以聚合句子中的信息并得到更新。与我们的模型不同,现有模型通常将单词作为嵌入层保持不变。 (c)通过多个消息传递过程可以充分利用不同粒度的信息。 (d)我们的异构图网络可扩展为更多类型的节点。例如,我们可以引入文档节点进行多文档摘要。
给定一个曲线图G = fV;例如,其中V代表节点集,E代表节点之间的边,我们的无向异构图可以正式定义为V = Vw [Vs和E = fe11; ··· ng这里,Vw = fw1; ··· wmg表示文档的m个唯一词,Vs = fs1; ··· sng对应于文档中的n个句子。 E是一个实值边缘权重矩阵,eij 6 = 0(i 2 f1;··; mg; j 2 f1;···ng)表示第j个句子包含第i个单词
图1展示了我们模型的概述,该模型主要包括三个部分:用于节点和边的图初始化器,异构图层和句子选择器。初始化程序首先创建节点和边,然后将其编码为文档图。然后,异构图通过图注意力网络(GAT)在单词和句子节点之间迭代传递消息来更新这些节点表示(Velickovic et al。,2017)。最后,提取句子节点的表示以预测摘要的标签。
本文以句子节点和单词节点作为图节点,以他们之间的tf-idf作为边,然后使用GAT进行训练。
作者进一步修改GAT层以注入使用tf-idf的标量边缘权重eij,将其映射到多维嵌入空间。 因此,等于注意力机制修改如下:
分别对词节点和句子节点进行迭代:
我们使用Trigram Blocking进行解码,这是最大边际相关性的简单但功能强大的版本(Carbonell and Goldstein,1998)。 具体来说,我们根据句子的得分对句子进行排名,并丢弃与前代词组重叠的句子。
多文档的总结摘要,只要加入文档节点即可。
总结
问题:在文档摘要提取任务中,传统模型很难建模文档中句子间的关系。
方法:构建包含所有单词的单词节点,和所有句子的句子节点,词在句子中就建立一条边,并以tf-idf作为额外的边权重,同时使用GAT迭代学习单词节点和句子节点的表示,最后使用句子节点进行摘要句预测。
启发:节点和句子构建图,并使用tf-idf等信息,之前gcn做文本分类就有了,这一套方法应该可以迁移到不少任务。