微软开发了灵活的AI系统,用于文本摘要任务,优于现有模型
2018年11月07日 由 浅浅 发表
830891
0
对于AI来说,将段落总结成句子并不容易。这是因为它需要对文本的语义理解,这超出了大多数现有的自然语言处理模型的能力。但微软的研究人员最近证明,这并非完全不可能。
在预印本服务器Arxiv.org上发表的一篇论文“Structured Neural Summarization”中,英国剑桥微软研究院的科学家们描述了一个AI框架,可以推断“弱结构”文本中的关系,使其NLP模型在一系列文本摘要任务上优于传统的模型。
当接受CNN和每日邮报的文章训练时(以及总结每篇文章的句子),它能够生成以下摘要:
n'golo kante吸引了众多顶级联赛俱乐部的兴趣。marseille一直与caen保持联系,希望签下这位24岁的球员。这位24岁的小伙子在身材方面与lassana diarra和claude madelele有相似之处。
它调用像Primer这样的系统,它使用AI来解析和整理大量文档。但微软的AI更具普遍性。
研究人员写道:“摘要是自然语言处理系统的一项经典任务,即将大量复杂的输入压缩成较小的表征形式,保留输入的核心语义。自动摘要需要机器学习组件识别重要的实体和它们之间的关系,而忽略冗余和常见的概念。然而,虽然理论上标准模型能够处理任意长距离关系,在实践中往往不能正确处理长文本,很容易被简单的噪声分散注意。”
它们的两步解决方案包括一个扩展序列编码器:一个处理输入序列的AI模型,并根据目标序列的先前字符预测目标序列的下一个字符,以及一个直接从带注释的自然语言的图形表征学来的神经网络。
混合系统利用序列编码器(一个扩展来利用输入数据中元素之间的已知关系)来为图形网络提供“丰富的输入”:双向长短期网络(LSTM)和序列GNN扩展,以及具有指针网络扩展的LSTM解码器(双向LSTM是一类能够学习长期依赖性的递归神经网络;它们允许神经网络将其记忆和输入结合起来,以提高其预测准确性)。
从文章片段中产生的摘要
团队设置序列GNN模型到三个汇总任务:方法命名,或在给定源代码的情况下推断代码函数(或方法)的名称;方法文档,预测方法功能的描述;NL总结,根据给定的文本输入创建一个新的自然语言摘要。
第一个任务选择了两个数据集:一个小型Java数据集,分别用于训练,验证和测试;第二个数据集从GitHub挖掘的C#23个开源项目生成。第二个任务:方法文档,研究人员使用了23个开源C#项目的数据集,而对于第三个任务(NL摘要),他们从CNN和每日邮报中删除了上述新闻文章(以及总结每篇文章的句子)。
为了生成AI模型可以从中提取信息的图形,团队首先将数据分解为标识符标记(和子标记),然后通过连接标记构建图形。代码被标记为变量,方法,类和其他类型,而文章语料库中的文本则通过斯坦福的CoreNLP开源标记化工具运行。
那么AI系统的表现如何呢?序列GNN在Java和C#数据集上的方法命名任务中实现了最优性能,其中F分数(描述从0到1的性能的度量)分别为51.4和63.4。它在方法文档中表现略差,研究人员记录了预测的长度(与模型16相比,基本事实平均有19个标记)。在NL总结中,它与近期的研究有一定差距,据说,研究人员认为这是由于过于简单的解码器和训练目标导致的,这些可以在未来的工作中得到改进。
团队表示,“我们对这一初步进展感到兴奋,并期待在正式和自然语言的各种任务中更深入地整合混合序列图建模,我们认为广泛适用的关键见解是,显式关系建模引起的归纳偏差是提高现有深度学习系统实际性能的一种简单方法。”
论文:arxiv.org/pdf/1811.01824.pdf