知行编程网知行编程网  2022-02-06 14:00 知行编程网 隐藏边栏 |   抢沙发  67 
文章评分 0 次,平均分 0.0
这篇论文提出了一个文本<->知识图谱的格式转换器...

Hello, 大家好,我是小花。今天给大家介绍一篇有野心的paper。为何如此说呢?因为该工作提出了一个知识的格式转换器,用于转换 无结构化的纯文本(Text)和结构化的知识图谱(KG) 。换句话说,给模型一打句子,它能够将其转换为一个图。图中的节点是句子中的关键信息,边表示不同节点的关系。反过来,给模型一个图,它能将其格式化为流畅的自然语言。

这篇论文提出了一个文本<->知识图谱的格式转换器...

举个例子,就是实现下面句子和图之间的格式转换:

The real-world information is often naturally organized as graphs (e.g., world wide web, social networks) where knowledge is represented not only by the data content of each node, but also by the manner these nodes connect to each other.这篇论文提出了一个文本<->知识图谱的格式转换器...

重点是因为本文还想以 无监督 的方式实现Text和KG之间的转换

好家伙啊,不过看起来还挺难的🤔。既需要做命名实体识别,又需要做关系识别、关系抽取,还是无监督的。不过如果真的有模型能够实现的话,知识图谱的构建不就是小菜一碟了嘛。让我们一起来看看今天这篇文章是否能够满足我们的期待呢?

论文题目:
DualTKB: A Dual Learning Bridge between Text and Knowledge Base

论文链接:
https://arxiv.org/pdf/2010.14660.pdf

The truth is in the details。刚刚给大家描述了一下理想场景。不过现实和理想还是有些不同的,接下来要开始暴露真相了!为了使研究有可能进行,本文简化了研究问题,不是直接完成一打句子和一个图之间的转换,而是将问题分解为一个句子和一条路径之间的转换。注:路径在本文的定义是一个三元组,比如上图中的(graph, made of, edges)。

这篇论文提出了一个文本<->知识图谱的格式转换器...知识格式转换的核心这篇论文提出了一个文本<->知识图谱的格式转换器...

格式化的核心是:

  1. 格式化:将不同源格式的知识转换为同一种标准格式。
  2. 格式生成:将格式化后的知识增加目标格式信息,并生成目标格式知识。

为实现上述两个目标,本文提出的DualTKB模型,其框架是1个Encoder+2个Decoders。Encoder将文本和路径编码到相同的空间,以实现格式化过程。因为假设文本和路径表达同一条知识,所以编码到相同的空间能更好地训练Encoder。DecoderA和DecoderB分别负责文本(A)和路径(B)的生成,即负责不同格式知识的生成。直观的图表达如下:这篇论文提出了一个文本<->知识图谱的格式转换器...这篇论文提出了一个文本<->知识图谱的格式转换器...

眼尖的同学可能已经发现,当Encoder的输入和DecoderA的是输出都是文本时(或Encoder的输入和DecoderB的输出都是路径时),模型就是一个auto-encoder。相应的重构损失:

 

 

 

如果已知文本和路径的对齐,那么训练便简单许多。但当该信息未知的时候,有什么应对策略呢?这就是本文所关心的问题。

因此,本文的真正的研究问题是:

如何以无监督的方式实现一个句子文本和一条路径之间的转换?即,在没有文本和路径对齐的标签信息的情况下,如何实现转换?

剧透答案:Translation + Back Translation (BT)

熟悉机翻的朋友们看了答案可能会觉得,不过如此而已😁。但能够旧瓶装新酒,将老方法应用到新问题上,换角度看问题还是很有意思的。现在假设将文本看做中文,路径看作英语,那么文本和路径之间的转换,不就类似于中文和英语之间的翻译嘛。比如我们想将中文翻译成英语,但是没有对齐语料,咋办呢?一个方法是可以先将中文翻译为英文,再将翻译后的英语重新翻译回中文,通过对比原始中文和回译的中文,来间接指导模型训练。本文文本和路径之间的翻译采用了类似的方法。文中模型的整体框架图如下:

这篇论文提出了一个文本<->知识图谱的格式转换器...

整个模型包括Translation和Back Translation两轮。在BT轮的损失函数:

 

 

 

在完全没有监督的情况下,模型使用 进行训练。眼尖的同学可能再次发现,整体框架图中间部分还有一个,那是啥?

其实本文还隐藏了一个研究问题:

如果能够给模型提供一部分弱监督,能不能提升模型性能?即当有一部分文本和路径的对齐(模糊对齐)语料时,会给模型带来多大的提升?

为了实现这一目标,文中使用模糊匹配构建了一个文本-路径的对齐语料,用其监督文本和路径的相互转换。所以,当有一部分监督时,损失函数变为:

 

 

其中的定义如下:

 

 

 

读到这里,大家可能发现这篇文章涉及的任务比较丰富,包括:(1)文本到文本的生成 (2)路径到路径的生成 (3)文本到路径的生成 (4)路径到文本的生成 (5)文本到路径到文本 (6)路径到文本到路径。换句话说,DualTKB支持不同格式知识的输入和输出。看看下面的图就明白啦~

这篇论文提出了一个文本<->知识图谱的格式转换器...

在实际操作过程中,文本到文本和路径到路径的生成任务中,Encoder的输入都被MASK掉一部分。文本到文本的生成大家很熟悉了,这里有意思的是路径到路径的任务。现在任务变成,MASK路径的一部分(头实体/尾实体)作为模型输入,模型输出是一条完整的路径(头实体,关系,尾实体)。举个例子:

输入/mask路径:[SEP] yeast [SEP] is a [SEP]
输出:(yeast, is a, ingredient in bread)

哎呦,这不是知识图谱补全里面的链接预测嘛~ 其实本文的一大卖点就在于统一了知识图谱补全和文本生成任务的学习,使得学习到的模型既可以做文本生成,又可以做知识图谱补全,还可以实现文本和路径之间的转换。

模型部分到这里就差不多啦,下面我们一起看看实验部分吧。

这篇论文提出了一个文本<->知识图谱的格式转换器...实验设置这篇论文提出了一个文本<->知识图谱的格式转换器...

数据

本文的实验选取了常识领域的文本数据OMCS,和常识知识图谱ConceptNet(CN600K)。因为CN600K中的部分三元组是从OMCS中抽取得来,所以部分文本和路径所表达的知识是相同的。对于弱监督数据,文中使用Fuzzy Matching的方式对齐文本和路径。需要注意的是,因为对齐的数据是基于路径和文本之间的相似度进行选择的,所以对齐的数据是有噪声的。

模型框架

文中选择了GRU,BERT,Transformer三种分别作为Encoder和Decoder。剔除掉无效组合(比如BERT只能作为Encoder)以及性能不好的组合,最后选择了3种模型,即GRU-GRU, BERT-GRU, Trans-Trans。

评价指标

文中同时涉及文本生成任务和知识图谱补全任务,因此在评价指标方面作者也兼顾了两方面。生成任务采用的指标有BLEU2,BLEU3,RougeL,F1 BERT-score。知识图谱补全的指标有常见的MRR和HITS@N。常用指标的对比对象都是预测或生成的单个路径和原始的单个路径对比,文中为了将一打句子生成的图(路径拼成的图)与原始图作为整体对比,提出使用一个新的指标:GED(图编辑距离)来计算从新图到原始图所需要的距离,距离越小说明两个图越相似。因为同时设计生成和知识图谱补全,用不同的指标来选择最后的测试模型得出的结论也会不同,因此作者提供了两种选择:基于于Best MRR选择模型和基于Best BLEU2选择模型。

接下来我们一起看看模型的实验结果如何吧。

这篇论文提出了一个文本<->知识图谱的格式转换器...实验结果这篇论文提出了一个文本<->知识图谱的格式转换器...

1. 文本和路径格式互转的性能如何?

这篇论文提出了一个文本<->知识图谱的格式转换器...

文本到文本(AA)任务在各项指标上都表现良好,同时也看出不同模型的性能的差距也是很大的。但文本到路径到文本(ABA)任务的表现则相对差许多,说明间接路径(BA)到文本的跨模态的知识迁移能力仍然需要提升。

那如果是路径直接到文本(BA)呢?这篇论文提出了一个文本<->知识图谱的格式转换器...

对比ABA和BA的结果,可以看出ABA的整体效果是要优于BA,说明直接将路径转换为文本的效果其实还有待提升的。

2. 知识图谱补全任务的表现如何?

这篇论文提出了一个文本<->知识图谱的格式转换器...
  • 上表中报告了两种模型选择的方式,蓝框的模型是基于Best MRR选择的,红框模型是基于Best BLEU2选择的,明显蓝框中的模型效果更好。
  • 此处有趣的是,GRU-GRU是从头开始训练的,BERT-GRU中BERT是finetune的,但前者的效果却更好。看来BERT的预训练并没有给知识图谱补全任务带来明显增益。不过使用生成指标选择模型时,BERT-GRU却表现更好。
  • 此处无法得出结论哪个模型是最好的,不同的框架选择、不同的选择指标、不同的监督比例() 导致的结论都不相同。但可以得出结论的是DualTKB训练的模型的整体性能是相对稳定的,并且可以找到若干模型的性能比之前模型更好。

3. 加多少弱监督的数据合适?

文中多处强调说加一点点点weak supervison就可以使得模型性能提升很多。那么一点点是多少呢?这篇论文提出了一个文本<->知识图谱的格式转换器...图中对比了监督比例从0增加到1 (x轴)的过程中 MRR和BLEU2(y轴)的变化。

  • 从0增加到0.2的过程中,三个模型的MRR都获得了明显的提升。
  • 当比例从0.2继续增加时,不同模型的变化趋势却不相同。
  • 更有趣的是,当比例增加到1时,模型性能却低于比例等于0.5时 (这可能也是为啥作者一直强调加一点点数据就够了,意思就是不要加多了,加多了不行O(∩_∩)O~)。针对这一现象,文中的解释是,因为弱监督数据中路径和文本的对齐不是exact match,所以加多了监督反倒将噪声引入了。噪声可以理解为,不是所有对齐的句子和路径都表达的相同的知识,所以监督数据过多时其实是引入了更多的错误信息。

4. 生成的数据长啥样?

这篇论文提出了一个文本<->知识图谱的格式转换器...这篇论文提出了一个文本<->知识图谱的格式转换器...上图是作者将一打句子和其生成的路径组成得到的图,从上图可以看出,实验采用的文本数据结构是相对简单的,句子比较短,并且有比较明显的模板现象,但是文本和段落之间的迁移仍然效果有待提升。试想如果在真实的长句或者段落文本中训练只会更加困难。

这篇论文提出了一个文本<->知识图谱的格式转换器...小结这篇论文提出了一个文本<->知识图谱的格式转换器...

本文将从文本中构建知识图谱和从知识图谱生成文本看成对偶问题,提出了DualTKB模型,旨在学习文本和路径之间知识的迁移。换句话说,提出了一个文本和KG格式转换器。本文工作涉及了一系列的任务,包括自然语言生成,三元组抽取,知识图谱补全,跨模态的知识迁。本文提出的框架理论上是有通用性的,虽然理想和现实还是有一些差距,但本文的工作算是往前迈出了一步。期待下一步更深入工作~

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享