AAAI-2021论文介绍:TSQA: Tabular Scenario Based Question Answering

AAAI-2021论文介绍:TSQA: Tabular Scenario Based Question Answering

0. Abstract

基于场景的问答(scenario-based question answering,SQA)是一个新兴的问答任务,相比于传统的机器理解任务(machine reading comprehension,MRC),SQA任务需要结合场景上下文进行推理,给出的场景可能是非结构化的文本或者是结构化的表格、图谱等,因此SQA任务更加有挑战性。我们关注于基于表格场景的问答( tabular scenario based question answering,TSQA),我们构造了一个地理领域的TSQA数据集:GeoTSQA。GeoTSQA包含1000+带有表格场景的题目。我们设计了一个基于模板的表格文本生成器TTGen,并使用TTGen扩充现有的MRC模型,最终实验表明效果超过现有的baslines。

1. Problem Statement

TSQA任务中的每个题目包含一段描述题目场景的文本`P`(问题背景),一张或多张表`T`,一段问题文本`Q`,一个候选答案集合`O`。目标是结合`<P, T>`场景从`O`中选出`Q`的正确答案。



Figure 1: 一个TSQA问题例子

2. Dataset Construction

2.1 Collecting Question

我们从高中地理考试题中搜集题目。GeoSQA (Huang et al. 2019)是一个搜集于高中地理考试题的SQA任务数据集,GeoSQA是本文数据集的来源之一。本文使用和GeoSQA相同的构造方式,从公开的网站上爬取了更多的高中地理考试题。

2.2 Identifying Tables

接下来我们将从这两个来源的题目中筛选出TSQA任务题目。我们先是手工标注了200道题目中图片是表格或者是能够直接转换为表格的图表(如柱状图,折线图等)以及200道不能直接转化为表格的图片。我们用标记好的这200道图片训练了一个图片分类器用于从大量题目图片中粗略地筛选出满足条件的图片,之后人工地剔除了那些分类错误的图片。

2.3 Extract Tables

我们招募了15位同学人工地从图片中抽取表格。对于是表格类型的图片,标注者使用OCR工具识别表格元素并人工地纠正识别的错误。对于其它图表类型的图片,标注者使用我们开发的标注工具将图片标注为表格。

2.4 Filtering Questions

最后,标注者会去掉那些没有表格也能够回答的问题。

最终,我们构造了包含1012道题目的TSQA数据集GeoTSQA。

Table 1: GeoTSQA的统计数据

3. Approch

3.1 Overview

我们使用一个两步方法来解决TSQA中的问题,如Figure 2所示:

Figure 2: Approch概览

第一步是由基于模板的表格-文本生成器TTGen从表格中生成对解题最有用的k个句子`S`。第二步我们使用可以融合外部知识解题的K-BERT(Liu et al. 2020)模型,结合`P`,`S`,`Q`和一个地理领域的知识库`K`为候选选项`O`打分预测正确答案。

3.2 TTGen: Table-to-Text Generator

3.2.1 Sentence Generation

在GeoTSQA中的所有表格中,有96%的表格是纯数字类型的(除了表头,其余元素均为数字的表格),针对这一特点,我们定义了六种不同的模板操作用于聚合表格中的数字信息得到表格描述句子。

六种模板分别为:

  • 极值:描述表格中一行或者一列的最大/小值
  • 特殊值:描述表格中元素和特殊值(如问题中提到的一个数字)的大小或者相等关系。
  • 平均值比较:描述表格中某些元素的相对大小关系(如表格中某几个元素的值相对较大)。
  • 单调性:描述表格中某些连续的元素值的增减变化情况。
  • 趋势:从整体上描述表格某一行或某一列的变化趋势。
  • 区间比较:描述表格中不同列或不同行之间的大小关系。

对于那些不是纯数字类型的表格,我们将表格元素以及其对应的表头和列头拼接作为描述句子。

3.2.2 Sentence Ranking

六种定义的模板操作为每张表格生成了一个句子集合$\hat S$,但是并不是所有句子对解题都是有用的,因此我们设计了一个句子排序模型为$\hat S$中的句子打分。模型结构如Figure 3:

Figure 3: TTGen中的句子排序

 

句子排序阶段包含了问题对句子的打分和问题对句子对应的模板类型的打分(不同的问题对不同的模板倾向不同)。最终将这两个分数相乘得到一个句子的打分。

3.3 Machine Reading Comprehension

在解题阶段,K-BERT结合排序最靠前的k个句子`S`,问题`Q`,场景描述文本`P`和地理领域的知识库`K`,以及选项$o_i$解题:

​                   I_i^{MRC}=[CLS]PSQ[SEP]o_i[SEP]NUMS_i[SEP]

​                                 h_i=K-BERT(I_i^{MRC}, K)

最终h_i通过两层MLP得到每个选项的打分。

4. Experiment

我们使用LogicNLG(Chen et al. 2020a)中提出的Field-Infusing,GPT-Linearization,Coarse-to-Fine,GPT-Linearization+,Coarse-to-Fine+以及直接使用以完整表格描述文本为输入的GPT生成的文本作为TTGen比较的baselines,并使用上文描述的MRC模型解题,实验结果如Table 2:


Table 2: 实验结果

其中Gold-Standard Sentence是人工写的解题需要的表格描述文本。

5. Future Work

  • 设计更好的适用于GeoTSQA的MRC模型。
  • 外部知识对解题至关重要,设计更好的外部知识融合模型。

显著性检验和SPSS软件的简单操作

鉴于上个月有多于一个小伙伴跑来问我显著性检验是个啥以及怎么算,在这里简单讲一下大致的操作流程,适合赶ddl的时候花五分钟临时抱个佛脚用来填实验结果的表。请注意以下内容大部分为操作经验,不涉及理论知识,如有错误,敬请指出。

顺便指个路,如果想了解显著性检验的方法和适用性(除了怎么操作之外的部分),请看在分析实验结果时常用的几种显著性检验 等相关文章。

0-1,假设我们现在有4个方法分别在20个样例上取得了结果得分,希望通过这20*4个得分来判断哪个方法比哪个更好。IBM SPSS软件已经下载安装好了(我用的版本是SPSS-25)。

0-2,将数据录入SPSS,此处仅适用于本文的示例。注意数据需要转换成两列的形式,第一列是分组(1-4表示对应的方法id,在后续检验过程中作为唯一自变量),第二列是具体得分(作为因变量),获得80*2的一张SPSS工作表。可以直接从Excel复制粘贴,非常用户友好。当然其他操作可能需要其他形式的输入数据,此处仅为示例。

1,One-Way ANOVA

1-1,选择Analyze → General Linear Model → Univariate。首先将得分列(可以起个名字比如score)加入Dependent Variable,将分组列(起个名字叫Group)加入Fixed Factor(s);然后点击Options,勾选Descriptive statistics(显示统计描述)和Homogeneity tests(方差齐性检验)→Continue→OK。(另外对于One way ANOVA也可以选择Analyze→Compare Means→One-Way ANOVA进行,将得分列加入Dependent List,将Group加入Factor,结果是一样的)

1-2,结果分析表中Descriptive statistics显示了组别,均值,标准差等,Levene’s Test of Equality of Error Variances表给出了方差齐性检验的结果,Tests of Between-Subjects Effects表格给出了方差分析的结果,方差分析的结果主要看Group一行的F值和Sig.值(P值)。

2,Post-Hoc Multiple Comparison Test

在方差分析得出各组得分总体均数间的差异有统计学意义之后,我们需要进行样本均数间的多重比较。简单说就是发现所有方法得分确实不一样之后,想具体知道方法之间两两比较,谁比谁更好。以下操作接在One-way ANOVA之后。

2-1,在主对话框选项中点击Post Hoc,将Group加入Post Hoc Tests for框中→在Equal Variances Assumed(方差齐)框中,勾选几种常用的多重比较方法:LSD、S-N-K、Bonferroni、Tukey、Šidák、Scheffé’s等。(虽然一般我只用LSD…)

2-2,结果分析表中Tests of Between-Subjects Effects表格展示方差分析的结果。在方差齐的条件下,看Group一行结果显示的F值和Sig.值(比如<0.001)。

2-3,Multiple Comparisons表格展示部分方法的多重比较结果,分别列出了每个组和其他组比较的均数的差值(Mean Difference (I-J))、标准误(Std. Error)、Sig.(P值)和均数差值的95%置信区间(95% Confidence Interval)。检验水准α设为0.05,组间差异有统计学意义的结果已用*标出。不同多重比较方法的选择,需要结合研究设计和每个方法各自的特点及适用条件。Homogeneous Subsets表格同样给出了部分方法的多重比较结果,两两方法没有统计显著性差异的会被分到同一个subset中。

以上是大致的操作流程,以下是一些废话。其实对于统计显著性检验的合理性和有效性我个人并不太认可,但是对于论文投稿而言审稿人可能觉得有必要,没有显著性检验就是作者的问题,所以保险起见一般还是要做一下的[摊手]。

Virtuoso安装和导入数据(续)

上文:http://ws.nju.edu.cn/blog/2017/03/virtuoso%e5%ae%89%e8%a3%85%e5%92%8c%e5%af%bc%e5%85%a5%e6%95%b0%e6%8d%ae/

其实我本来只想给原文写点评论,但是间歇性出现的海量垃圾评论让我改变了想法……


一.3.

依赖安装如下:sudo apt-get install libxml2-dev libssl-dev autoconf libgraphviz-dev libmagickcore-dev libmagickwand-dev dnsutils gawk bison flex gperf

建议以autogen的结果为准(比如libxml2似乎就没什么必要?),其余依赖根据个人安装的可选包具体确定。例如,如果要在configure时添加–with-readline,则需要确保libreadline-dev得到安装

一.5.

./configure –prefix=/usr/local/ –with-readline –program-transform-name=”s/isql/isql-v/”  (或者看一下help用其他配置或其他目录)

个人建议readline和editline都要装,fc browser可以考虑一下(虽然其实没什么用),并且也不要(就算你知道你在做什么)取消conductor

安装好了,如果要修改配置,配置文件是virtuoso.ini,关于配置:

这里还可以配置一下web端访问界面的默认设置,比如缺省的graph,缺省的查询等等,我个人觉得针对性设一下还是比不设好(正如web端的prefix表也应该按需扩充一下,就如http://dbpedia.org/sparql?help=nsdecl 一样)

二.2.

执行以下语句 SELECT * FROM DB.DBA.LOAD_LIST; 可以看见具体表的内容,但是文件还是没有导入的

事实上这个表会记录导入状态,你这里当然可以不看它,你稍后也可以查看这个表确认数据是否正常导入了。

在原文我留下的建议是“完成导入后清空这个表”,但道理这个表也可以用来辅助记忆你到底导入了什么数据(反正我永远搞不清谁的dbpedia库上有什么东西)

额外补充

强烈建议各位建立数据库的时候额外配一个说明文件记录一下数据的版本/来源,以及进行过的预处理……

 

ESBM:一个面向实体摘要的评测集

引言

RDF数据集,如知识图谱,采用大量三元组描述实体。实体摘要的任务,就是从描述给定实体的大量三元组中,选出一个满足容量限制的最优子集作为实体的摘要。研究领域对该问题提出了多种求解方法,然而这些方法之间缺乏统一的比较。原因之一在于缺乏高质量的评测集。为此,我们构建并发布了评测集ESBM,其是目前实体摘要领域公开发布的规模最大的评测集。此外,基于ESBM,我们实验评测了9个现有实体摘要方法,以及基于监督学习的实体摘要方法。

本文介绍了ESBM评测集的构造、分析和相关评测实验的主要内容,更多详细内容,欢迎阅读我们发表在ESWC 2020的研究论文:

Qingxia Liu, Gong Cheng, Kalpa Gunaratna, Yuzhong Qu: ESBM: An Entity Summarization BenchMark. ESWC 2020: 548-564

该评测集的相关数据和代码已在GitHub公开发布: https://github.com/nju-websoft/ESBM

一、研究背景

RDF数据以三元组形式描述实体相关的属性-值信息,我们将用于描述某个特定实体的三元组构成的集合称为该实体的实体描述。例如,在下图所示关于实体“Tim Berners-Lee”的实体描述中,三元组<Tim Berners Lee, alias, “TimBL”>描述了该实体的属性“alias”和值“TimBL”。

在大规模RDF数据集中,实体描述所包含的三元组数量庞大,往往超出应用场景所能提供的容量。例如,在谷歌搜索结果页面的实体卡片中,通常只提供了10行以内的空间用以呈现实体相关的属性-值内容。实体摘要的任务就是从实体描述所包含的大量三元组中,选出中给定容量限制内的子集,以满足用户的信息需求。

然而,实体摘要领域的发展面临两个挑战。其一,是缺乏高质量的评测集。表1列出了实体摘要领域目前已知的评测集。可以看出,这些评测集都基于单个数据集,并且所包含的实体数量也有限。在列出的7个评测集中,其中4个已无法公开获取,而WhoKnows?Movies!面向特定领域的摘要任务,而FACES和FACES-E所构造的评测集则未包含取值为字面量或类的三元组。其二,是缺乏统一的评测实验,缺乏为后续研究和应用在技术选择上提供参考的依据。面对这两个挑战,我们提出ESBM评测集,在起设计中克服现有评测集的上述问题,同时基于ESBM对大量现有实体摘要方法进行了统一的实验比较。

二、ESBM构造过程

我们在ESBM的设计中要求其满足两个目标:首先,应当满足[18]提出的高质量评测集应当满足的7个条件; 其次,要避免上述现有评测集所存在的问题。我们构造ESBM用来评价实体摘要系统生成的摘要的质量。一个实体摘要任务,需要给定实体描述作为输入;而要评价一个摘要的质量,则通常采取与标准摘要进行比较的方式来得到。所以,我们将从两个方面来介绍ESBM的构造过程,即实体描述的数据选择,以及标准摘要的收集。

实体描述

针对现有评测数据涉及的RDF数据集单一的问题,我们考虑了两个不同类型RDF数据集:百科型数据集DBpedia,和特定领域型数据集LinkedMDB。我们从这两个数据集分别选择覆盖度最高的实体类型,从这些类型中随机选择实体作为实体,并抽取其实体描述所涉及的三元组。最终,我们从DBedia中选出了5个实体类型:Agent,Event,Location,Species,Work; 从LinkedMDB中选出了2个实体类型:Film,Person。每个类型随机选择25个实体(要求实体描述中包含至少20个三元组),就得到了相应的175个实体描述。实体描述中,对取值为字面量、类型、实体的三种三元组都有涉及。

标准摘要

我们邀请了30位用户来对所选实体标注标准摘要。每个用户负责标注35个实体,而每个实体可以得到6个不同用户的标注。在每个标注任务中,用户需要对应两种不同容量限制(k=5,k=10)对实体各标注一个标准摘要,分别称为top-5摘要和top-10摘要。标注的方式,即从实体描述的所有三元组中,选出k个三元组来构成用户认为最佳的摘要。标注系统截图如下图所示。最终,我们得到175*6*2=2100个标准摘要。

数据划分

一些实体摘要方法的开发需要调参,为此,我们对ESBM数据进行了训练集、验证集和测试集的划分。为了支持以5折交叉验证的方式评测摘要方法,我们将ESBM中的175个实体划分成五等份P(0),…,P(4),交替将这些等份分别归入训练集、验证集和测试集,并使三者所含实体比例为3:1:1。具体做法为,在第i折数据中,P(i),P(i+1 mod 5),P(i+1 mod 5)作为训练集,P(i+3 mod 5)作为验证集,P(i+4 mod 5)作为测试集。最终报告的评测结果为各折测试集上结果的平均值。

三、ESBM数据分析

接下来,我们通过分析ESBM收集的数据,来对实体摘要的特点和目标有更具体的认识。

总体而言,ESBM包含175个实体,共6584个三元组。其中,37.44%的三元组被选入过top-5摘要,而58.15%的三元组被选入过top-10摘要。每个实体由6个用户标注。然而,大多数三元组仅被一个用户选入过标准摘要。20.46%三元组被至少两个用户选入过top-5摘要,而对top-10摘要该比例则为40.23%.

一个常被问到的问题是:top-5摘要是否一定是top-10摘要的子集?在标准答案的标注过程中,我们并没有对此做任何限制。我们分析ESBM的各类实体中,同一个用户构造的top-5和top-10摘要之间选入相同三元组的情况,结果平均有4.80-4.99的三元组同时出现在top-5和top-10摘要中。而在所有实体范围内,top-5和top-10摘要平均有4.91个三元组相同,非常接近top-5摘要容量为5的设定,说明top-5摘要很大程度上来源于top-10摘要的子集。

下图按实体类型呈现了ESBM中各实体集的三元组构成情况。我们分析ESBM中三类实体集:实体描述、top-5摘要、top-10摘要,分别对应柱状图中每组的左、中、右三个柱子。图(a)统计取值分别为字面量(Literal)、类型(Class)和实体(Entity)的三类三元组在各集合中的数量。 可以看出取值为字面量的三元组,虽然在实体描述中占比不高,但在标准摘要中都占有较大的比例,其在top-5和top-10摘要中分别占比30%和25%。这说明,若实体摘要方法将字面量类型的三元组排除在任务之外,将影响其摘要质量。图(b)统计的是各类三元组所占属性的个数。其中,在top-5摘要平均包含4.7个不同属性(非常接近5),说明用户倾向于从不同属性中选取三元组来构造摘要,避免出现属性的冗余。

我们再来分析实体的异质性。下图列出了不同实体类型所涉及的属性集之间的Jaccard相似度。结果表明不同类型间该相似度极低,体现了不同类型实体描述之间的较高的异质性, 也说明ESBM选择的数据有助于评价实体摘要方法的泛化能力。

下表列出了各类实体中,出现在至少一半的标准摘要中的属性。平均每个实体包含13个不同属性,而该表中的结果是仅有一两个属性是top-5标准摘要中常见的。这说明各个实体的标准摘要涉及的属性各有不同,所以通过人工为每个类型制定实体统一制定摘要的方式不太可行。

在ESBM中,每个实体被6个不同用户标注,并在每种容量限制下各得到6个标准摘要。我们计算同一个实体的这6个标准摘要之间的一致情况。下表中将ESBM上统计的平均一致程度与相关评测集在其文献中给出的结果进行了比较。结果表明ESBM的标准摘要之间存在中等程度的一致。

四、ESBM实验结果

我们采用ESBM对实体摘要方法进行评测,参与评测的方法包括:

  • 现有实体摘要方法:我们选取了9个方法,即RELIN, DIVERSUM, LinkSUM, FACES, FACES-E, CD, MPSUM, BAFREC, KAFCA,用以代表该问题当前研究水平;
  • ORACLE方法:基于标准摘要构造摘要的方法,即优先选取被标准答案选中次数最多的三元组进入摘要,该方法用以近似体现在ESBM上能达到的最佳水平;
  • 基于监督学习的实体摘要方法:不同于以往的实体摘要方法,我们尝试探索监督学习在解决实体摘要问题上的潜力,我们利用了三元组的7个特征,并分别基于6种监督学习模型构造了实体摘要方法。

总体评测结果如下表所示,从中我们可以得出以下结论:

  • 现有实体摘要方法中,BAFREC, MPSUM, CD分别在不同设定下达到优于其他方法的效果;
  • 监督学习方法的效果普遍好于现有实体摘要方法;
  • 上述两类方法的最佳效果与ORACLE相比仍有较大差距。

这同时也说明,ESBM中的实体摘要任务有一定的难度,有利于促进后续研究工作提出更为有效的摘要方法。

此外,我们还分析了现有摘要方法在不同类型实体上的表现,如下图所示。从中可以看出,在k=5时,BAFREC和MPSUM的效果在处理不同类型实体上具有较高的泛化能力,而在k=10时,MPSUM同样表现出相对较高的泛化能力。

对于监督学习方法,我们进行消融实验分析7个特征对模型效果的影响,结果如下表所示。可以看出,属性的全局频度(gf_T),属性的局部频度(lf),对模型效果有显著影响,删除这些特征将导致摘要效果显著降低;取值的全局频度(vf_T),三元组的自信息(si)仅在LinkedMDB数据集上表现出显著有效。而关于取值类别的三个布尔型特征,即取值是否为类型(isC)、是否为实体(isE)、是否为字面量(isL)则未带来摘要F1值的显著变化。

IJCAI-PRICAI’20论文介绍——Neural Entity Summarization with Joint Encoding and Weak Supervision

Abstract

在大型知识图谱(KG)中,实体通常由大量的三元组(triples)构成的集合来描述。如何快速的了解一个实体的内容也即寻找一个子集作为描述的任务,称为实体摘要。现有的实体摘要解决方案主要是无监督的。在本文中,我们提出了一种基于我们的深度模型的监督学习方法NEST来联合编码KG中的图结构和文本,并生成高质量的多样化摘要。由于很难大规模获取人工标记的摘要作为训练集,因此我们使用弱监督学习的方式自动标记数据进行训练,这些数据可能包含噪音,但不需要人工标注。实验结果表明,我们的方法在两个现有最大的实体摘要benchmark上显著优于目前其他baseline。

Motivation

实体摘要领域现有的工作一般都是无监督的,使用各种启发式方法对三元组进行排序和选择,效果在目前的实体摘要benchmark上达不到较好的标准,且无法灵活根据用户的需求灵活变化摘要内容。因此我们将监督学习首次运用于实体摘要工作中,由于缺乏训练数据,我们自动化的生成了一些训练数据,并且为了解决摘要问题中多样性和多义性我们对知识图谱中的图结构和文本进行了预训练联合编码,并且使用自动化生成训练数据进行微调。

Preliminaries

实体描述:一个实体e由IRI或者是空节点标识,实体e的描述是一个三元组集合。

实体摘要也即从给定实体的实体描述中选择一个给定大小的子集,作为这个实体的摘要。

Figure 1:实体Everest对应的实体描述(知识图谱表示,右侧),以及对应的摘要(左侧)

Approach

Figure 2:NEST模型框架图

我们提出了一个新的实体摘要模型NEST,由以下几个部分构成,KG Encoder主要功能是通过预训练的方式,将知识图谱编码到模型中为之后的具体的摘要生成步骤提供三元组的向量表示。实体摘要评分模块将由KG encoder提供的三元组向量表示输入到基于重要性的三元组评分模块(STS)和基于多样性的三元组评分模块(DSS),最后综合STS和DSS的评分使用模拟退火算法选择总分最优的一组三元组最为最终的摘要输出。

1.KG Encoder

我们提出的基于神经网络的编码器从KGs中联合提取结构和文本特征,将其转换成一个低维度空间作为一个插件的形式接入下游模块。

模型:一个RDF terms的序列r1,r2,….,rn,对每一个RDF term,获取其文本形式,并且将其转换为相对应的word embedding,RDF term的向量表示就是其文本形式的每一个token的word embedding向量表示的均值。我们采用预训练的fastText作为word embedding,对每个处理好的word embedding,输入到双向双层的lstm。并且将正向和反向的lstm输出拼接,作为最终KG encoder对于每个RDF term表示的输出。

预训练:我们以一种无监督的方式对KG encoder进行了预训练。首先对知识图谱进行随机游走以采样训练集。其具体做法是,对于每一个知识图谱中的点r,我们以r作为起点无视方向的随机走d的长度,这样就得到了一条以r为起点长度为d的序列,我们将重复这个过程k次,得到k段d长度的序列,我们将这个序列视作伪自然语言语句,来对KG encoder做预训练,以获得其对知识图谱的结构和文本表示的建模。

举例来说,对于Figure 1的例子以长度为5来进行随机游走,采样的路径可能是:Everest known-for Alex height 1.8m.

我们将采样的路径作为一个序列输入模型中,其预训练过程中优化目标是最大化双向对数概率似然,其中softmax对于正向和反向是共享权重的。

2. Entity Summary Scorer

为了评估实体摘要的质量,我们的摘要评分模块同时考虑了两个方面的信息:STS评价一个三元组的自身的重要程度,DSS评价摘要的多样性。STS和DSS使用相同的KG encoder并共享其参数,但是它们使用不同的训练数据进行微调。

STS:负责评价一个triple,t = <s,p,o>的重要程度,我们将t作为一个长度为3的序列输入到STS中,其表示是KG encoder的分别对s,p,o的输出表示的拼接。

我们将t输入到一个两层的全连接前馈神经网络中,输出对于t重要性的评分。

DSS:负责评价一个摘要S = {<s1,p1,01>,<s2,p2,o2>,…,<sn,pn,on>}的多样性,具有多样性的摘要其中的predicate应该要尽可能包含多个方面的信息。例如:Figure 1中的height,elevation。我们对S中每个p的表示求和来作为S的表示输入到DSS中

同样的我们将S输入到一个两层的全连接前馈神经网络中,输出对S的多样性打分。

Fine-Tuning:对于STS和DSS,我们将其拼接在预训练好的KG encoder之后,对于STS和DSS我们分别对其微调,对STS,我们将STS和KG encoder共同训练,利用自动生成的二元标签的训练数据,将其作为二分类任务来微调,loss为MSE。而DSS是利用启发式的方式获得其微调时的标签,也即S中每一个p相互之间的余弦相似度的均值,loss为MSE。STS和DSS是分开单独微调,但是都和KG encoder共享参数共同训练以获得更好的效果。

3. Entity Summary Generation

在摘要生成过程中,对于每一个候选的摘要S,其评分来自于DSS和STS的综合打分:

由于可能的S的数量非常大,对于大小为k的S,总候选triple数为|D(e)|,其候选S总数为C(k,|D(e)|),由于|D(e)|有可能达到数百,穷举所有可能的候选在时间上是不允许的,我们采用了模拟退火的方式来进行最终的摘要选择。具体而言,我们先随机选择了一个初始摘要S,我们每次随机替换S中一个t由一个随机选择的候选的t作为替换,若更新之后的S得分变高,那么接受这次更新,否则以概率P接受更新,概率P随着迭代过程逐渐降低,P为0时迭代结束,输出最后的摘要作为最终的摘要。

Experiments

我们将NEST与11个baseline在两个最大的实体摘要benchmark上进行了对比。

数据集:我们使用了目前最大的两个实体摘要,ESBM,FED,ESBM包含了DBpedia 2015-10 100个实体及以及LinkedMDB的40个实体,每个实体所对应的6个gold-standard(包含大小为5与大小为10两个大小的摘要)。FED选择了DBpedia v3.9的50个实体,以及373个gold-standard摘要(同样包含大小为5和10的两种摘要)。评价指标我们采用了F1。

自动化标注数据实验:我们利用了DBpedia和wikipedia之间的对应关系来进行自动化数据标注过程。具体而言,对每个DBpedia的实体,可以寻找一个相对应的wikipedia的页面以及其中的long abstract,我们将实体的Wikipedia中long abstract视为其伪文本摘要,同时对实体的描述集合D(e),其中的每个三元组先转换为文本形式,然后与wikipedia的long abstract进行文本对齐,如果匹配率超过0.5那么认为这个三元组应该出现在对应的实体摘要中。为了评价自动标注的数据的质量,我们在DBpedia随机选择了200个实体,并手动标注了6025个三元组作为gold-standard。其效果的混淆矩阵如下:

Table 1:自动化数据标注实验混淆矩阵

其真正例率达到92.93%,真反例率达到98.16%。且对于之后的实验,我们随机抽取了11672个实体,并自动化的标注了相应的伪摘要,包含264998个三元组。其中80%作为训练集,20%作为验证集进行超参数调参。

与baseline的比较实验:我们选择了11个目前主流的baseline和一个理论上界作为对比的方法。其中无监督的SOTA有RELIN、DIVERSUM、FACES、FACES-E、CD。监督学习的baseline有TransE、Jointly(A-LSTM)、RotatE、RDF2Vec(K2V SG 300)。和一个文本摘要领域的SOTA:BERTSUMEXT(large)。

Table 2:与通用实体摘要方法进行对比,其显著性检验表示为,实心三角代表99%以上置信度,空心三角代表95%以上置信度,空心圆代表小于95%的置信度。

分离实验:分离实验主要分为两个部分,一个将我们的KG encoder替换成了目前主流的SOTA KG embedding方法,并作为排序学习问题来进行对比,另外一个是将我们的KG encoder中结构和文本信息分别剔除,观察对最终效果的影响。

Table 3:将KG encoder替换成SOTA KG embedding方法,以及目前SOTA文本摘要方法对比

Table 4:KG encoder分离实验

Conclusions

我们提出了一种新的用于通用实体摘要基于神经网络的方法NEST。它的KG编码器经过预先训练,可以同时从KG中提取结构和文本特征。它的摘要评分模块经过微调,可以根据程序化标记的数据生成高质量的多样化摘要。大量的实验已经证明了NEST的有效性和通用性,它在两个公共benchmark上的表现远远超过了目前的水平。

我们的KG编码器有潜力支持其他下游任务,如实体分类、聚类和链接预测。我们将在今后的工作中解决这些问题。此外,我们还可以对模型进行微调,根据特定于任务的训练数据(例如,~关联判断)为特定任务(例如,~实体搜索)生成实体摘要。

IJCAI-PRICAI’20论文介绍——Enriching Documents with Compact, Representative, Relevant Knowledge Graphs

知识图谱中蕴含丰富的知识,一个典型应用是利用知识图谱进行文本扩充,从而帮助用户更好地理解文档内容。现有方法识别知识图谱中提及的实体,并且将实体类型和实体间的直接关系作为扩充内容,这种方式表达能力非常有限。因此我们考虑用连通实体关系子图的形式,以更好地表示一组实体间的整体关系。为了提供有代表性的、紧凑的且与文档相关的子图,我们提出了一个方法,分为两个步骤:第一步,我们计算文档中提及实体的最重要子集,使得代表性和紧凑性能够得到权衡,并保证知识图谱中包含连接这些实体的子图,然后执行已有的搜索算法得到所有子图;第二步,根据相关性返回排名第一的结果。

Motivation

实体关系子图的搜索和排序有很多现有工作,但这些工作存在两方面的局限。首先,子图需要有代表性,即包含文档中所有重要的实体,并且用户通常期望子图是结构紧凑的,这两个要求有时难以同时满足,因为一些实体在知识图谱上距离较远或者不连通,导致紧凑的子图无法覆盖所有重要实体。其次,子图应该要与文档内容相关,但现有工作往往忽略上下文对排序的影响。

 Approach

1. 代表性和紧凑性的权衡

一篇文档中通常包含较多的实体,想要找到一个子图,既包含所有重要实体,又满足结构紧凑性是不现实的。因此我们考虑一种折中的方案,给定紧凑性约束,最大化代表性。具体来说,限制子图的直径(任意两点间距离的最大值,记为 D)上界,计算最重要的实体子集 Q_max,保证这组实体在知识图谱中能找到满足直径约束的子图(即具有代表性,下面的式子定义了这一问题),然后用 Cheng et al. [2019] 中的 OptimSearch 算法搜索所有子图。

关于重要性的计算,每个实体都有一个重要性的分值,集合的分值就是其实体元素的分值之和。实体重要性的计算超出了这项工作的研究范围,因此我们直接使用现有方法:将实体对应的维基百科内容和文档内容都表示成 TF-IDF 向量,两者的 cosine 相似度作为重要性的值。

穷举所有的子集搜索子图这种方式显然不可行。搜索子图是耗时的,我们避免了这一过程,转而使用距离计算来决定代表实体子集。算法的主要思想是:查询实体集是否具有代表性可以被一个或一对实体(称为 certificate)间接验证。对于查询 Q’,如果 Q’ 具有代表性,当且仅当存在一个 certificate(记为 c)需要满足两个条件:1). c 到任意查询实体的距离不超过 ceil(D/2);2). 如果 D 是奇数,并且存在查询实体 q 到 c 的距离恰好为 ceil(D/2) ,则 c 存在邻居 c’,满足到所有 q 的距离都为 ceil(D/2)-1。我们发现,当 D 为奇数时,存在查询实体 q 满足其到 c 的距离不超过 floor(D/2),进一步压缩了搜索空间。

算法基于以上的思想,使用优先队列进行 best-first 搜索。队列中的元素是 <实体,起始查询实体,优先级> 这样的三元组,记为 <c, q, pr>。优先级基于距离来计算,是该实体以及它的后代作为可能的 certificate 能够验证的最具代表性的集合得分。在每一轮迭代中,优先级最高的三元组从优先队列中取出,用上面提到的两个距离条件计算实体 c 能验证的具有代表性的得分最高的实体子集,并更新当前的最优解 Q_max。如果 c 到 q 的距离小于 floor(D/2),就接着搜索 c 的邻居,计算优先级并加入优先队列。直到某一轮取出的三元组的优先级不超过 score(Q_max),即不可能得到更优的解了,算法终止。

2. 相关性度量

在对最优解运行 OptimSearch 算法后得到所有的子图,然后我们根据相关性来设计打分函数,从而对子图集合进行排序,得到排名最高的子图。我们从两个方面来度量相关性:一是子图与文档内容的相关性,记为 rel_D;二是子图元素彼此间的相关性,记为 rel_I。则子图 G’ 整体的相关性可以用下式来表达:

对于 rel_D,我们提出基于实体的相关性,因此可以使用丰富的本体知识。对文档中提及的实体以及 G’ 中的实体的两两组合计算相关性,并取平均值。两个实体间的相关性是它们表示成的向量的 cosine 相似度。向量的计算使用了类型频率-逆实体频率(tf-ief),这是受到 tf-idf 启发。

rel_I 是 G’ 中所有实体对之间相似度的平均值。两个实体间的相似度计算采用了已有的方法,取决于它们的类型在类别层级中的相对位置。

Experiments

我们使用 Signal-1M 作为文档数据集,这是一个新闻数据集。知识图谱为 DBpedia,实体识别工具为 DBpedia Spotlight。

在评估子图排序的有效性时,由于缺乏基准,我们进行了用户实验。总共 100 篇新闻,实体数量为 {2, 4, … , 20}。我们的方法称为 CR^2。基线一使用的打分框架同 CR^2,只是实体的向量表示使用 RDF2Vec。基线二 RankingSA 是当前最先进的上下文相关的子图排序方法。用户对我们的方法和两个基线在 3 个问题上进行评分,如下表所示,结果表明我们的方法效果最好。

此外我们还针对计算 Q_max 的运行时间做了实验,使用了 Signal-1M 中的 6400 篇新闻,实体数量范围为 5-20。基线 naive 是类似 Apriori 的穷举子集搜索算法,naive+ 进行了改进,路径进行了缓存。下图的结果可以看出我们的算法的优势。

Future work

  • 排序方法还有待改进,但一个瓶颈是缺乏训练数据。
  • 我们的方法采用流水线的方式逐步运行,将多个步骤集成为一个混合的过程可以提升整体效率。

JoWS’20论文介绍——Relaxing Relationship Queries on Graph Data

在很多领域我们都需要在大的实体关系图上搜索查询实体间的直接或间接关系。搜索的结果称为语义关联,通常是包含所有查询实体的紧凑(例如,直径有上界)的连通子图。关联搜索问题虽然存在有效的算法,但如果某些查询实体在图上距离较远,则可能返回空结果。为了减少这种情况的出现并提供替代的结果,我们研究了关联搜索上的查询松弛问题。如果简单地放松紧凑性约束(增大直径),这不仅破坏了语义关联的紧凑性,更可能导致性能问题。因此,我们考虑另一种解决方案,从原始的失败查询中移除最小数量的实体,得到最大成功子查询,最小化松弛导致的结果质量损失。我们证明,验证子查询的成功可以转变为以下问题:找到一个实体(称为certificate),该实体与查询实体间满足基于距离的条件。为了找到验证最大子查询成功的 certificate,我们提出了一种 best-first 搜索算法,利用基于距离的估计有效地减少搜索空间。并且,我们提出了两种新的启发式方法,进一步提升了它的性能。在三个 RDF 数据集上的实验证明了我们算法的有效性。

Motivation

图数据(例如 RDF 数据)很适合用来回答关系查询。两个或多个实体之间的关联通常被称为语义关联(semantic association, SA)。出于搜索性能和关联的意义两方面考虑,现有方法会约束 SA 是结构紧凑的,例如限制点的数量,或者关联的直径(即任意两点间距离的最大值,也是该文采用的约束)。这带来了一个问题,如果某些实体在图上距离较远或者不连通,语义关联搜索会失败,产生空结果,这对用户来说不友好。例如在下图中查询实体为 {Alice, Bob, Dan, Gary},如果限制直径为4,则无法找到满足条件的 SA,因为 Gary 与 Alice 的距离为5。在现有文献中,尽管有关于查询松弛的研究,但在 SA 搜索问题上的查询松弛未找到相关工作。

Problem Statement

该文的研究目标是减少这种失败查询的情况。能够想到的有两种方案。一种方案是放松紧凑性约束(增大直径上界)。但这种方案不能从根本上解决问题。紧凑性约束不能被任意放松,否则搜索空间会很大,性能将不可接受。此外,即使放松到最大值,也未必能得到非空的结果,因为可能存在实体不连通。因此,该文采用了另一种方案——放松查询实体,也就是从查询中删除若干实体,保证剩下的子查询能够有解。为了最小化损失,我们只从查询中移除最少数量的实体。在上图的例子中,将查询实体 Gary 删除,则子查询 {Alice, Bob, Dan} 在直径 D=4 的约束下能找到 SA,也就是图中的加粗部分。此外需要注意的是:该文定义的 SA 是一个极小子图,也就是一棵树,所有的叶子节点都是查询实体。

Algorithm

算法的主要思想是:查询是否成功可以被一个实体(称为 certificate) 间接验证。如果有图 G ,直径约束为 D,查询 Q 如果成功,当且仅当存在一个 certificate(记为 c)需要满足两个条件:1). c 到任意查询实体的距离不超过 ceil(D/2);2). 如果 D 是奇数,并且存在查询实体到 c 的距离恰好为 ceil(D/2) (称为关键查询实体),则 c 存在邻居 c’,满足到所有关键查询实体的距离都为 ceil(D/2)-1

在上图中,在 D=4 时,{Alice, Bob, Dan} 是成功查询,因为存在一个 certificate (ISWC2019)到查询实体的距离都不超过2。但当 D=3 时,{Alice, Bob, Dan} 是失败查询,尽管第一个条件满足,但 Alice 和 Bob 的距离为4,超过了 D。这是直径为奇数造成的,所以还需要增加第二个条件。注意到 {Dan, Erin, Frank} 是满足 D=3 的成功查询,c 为 ISWC2019,c’ 为 Paper02。

根据上面的距离条件,所有到查询实体距离不超过 ceil(D/2) 的实体都是候选的 certificate。CertQR 正是穷举所有的候选实体找出最大的成功子查询。为了提升性能,我们提出了算法 CertQR+,它利用基于距离的估计,减少了搜索空间。

CertQR+ 使用优先队列,使用 best-first 搜索。队列中的元素是 <实体,起始实体,优先级> 这样的三元组,记为 <e, sqe, pr>。优先级基于距离来计算,是该实体以及它的后代作为可能的 certificate 能够验证的最大成功子查询的实体数量的上界。在每一轮迭代中,优先级最高的三元组从优先队列中取出,用上面提到的两个距离条件计算实体 e 能验证的最大成功子查询,并更新当前的最优解 Q_max。如果 e 到 sqe 的距离小于 ceil(D/2),就接着搜索 e 的邻居,计算优先级并加入优先队列。直到某一轮取出的三元组的优先级不超过 |Q_max|,也就是说不可能得到更大的解了,算法终止。

此外,我们还提出了两个启发式,作为优先级的小数部分,分别基于度数(dg)和距离(ds),以及两者的结合 dgs。启发式进一步提升了算法性能。

Experiments

我们在三个数据集上进行了实验:DBpedia,LinkedMDB 以及 Mondial。查询分为仿真查询和随机查询。下图展示了三个数据集上两种查询的平均运行时间,直径 D 的取值范围是 3-6,查询实体数 n 的范围是 2-6。我们分别对 n 和 D 取平均进行了统计。BSL 和 BSL+ 是两个 baseline,CertQR 和 CertQR+ 是该文提出的算法。实验中超时的阈值设为 1000 秒。从图中可以看出我们的算法比 baseline 快 1-2 个数量级,并且best-first 搜索比穷举式的搜索也有很大的速度提升。

下表展示了启发式对于 CertQR+ 的性能提升。可以看出 dgs 取得的效果最好。在大多数情况下启发式的影响都是正面的,除了 Mondial 的仿真查询,这是 Mondial 小而密集,很容易找到 certificate,启发式计算反而增加了时间。

Future work

  • 我们的工作可以扩展为图上关键词查询的松弛,即一个关键词对应多个实体。
  • 算法依赖于快速的距离计算,我们采用了 distance oracle 来取得空间和时间的平衡,但当图变化时 oracle 需要重构,需要找到替代的方案。
  • 尽管我们移除最少数量的实体来最小化损失,但有些用户可能对于删除实体这种做法还是不满意,也许可以采用实体替换的方式。
  • 我们将查询松弛和关联搜索解藕使得应用场景更为广泛,但将两个步骤结合直接计算最佳的语义关联可能更有效。

代码以及查询我们已经给出:https://github.com/nju-websoft/CertQR

2019-智源大会-见闻

2019年10月31日-11月1日,北京智源人工智能研究在北京国家会议中心举办了北京智源大会。2天内,大会包含:开幕式、闭幕式和10场精彩论坛:自然语言处理专题论坛、数据知识与认知推理专题论坛、智能体系结构与芯片专题论坛、人工智能的数理基础专题论坛、人工智能伦理安全与治理专题论坛、北京市医院管理中心AI医疗大赛、机器学习专题论坛、智能信息检索与挖掘专题论坛、自动驾驶专题论坛、脑科学与AI专题论坛。

提示1:本博客只谈与我们组有关的4场专题论坛:自语语言处理专题、数据知识与认知推理专题、机器学习专题、智能信息检索与挖掘专题。

提示2: 报告PPT分享网址  大会视频回放网址

继续阅读“2019-智源大会-见闻”

AAAI2020-北大预讲会-见闻

2019年12月22日, “AAAI 2020 论文预讲会” 在北京大学秋林报告厅举行。

预讲会共分2个特邀报告(黄民烈老师的文本生成和袁野老师的大图数据的管理)和4个session(翻译对话与文本生成、文本分析与内容挖掘、知识理解与NLP应用和自然语言中的机器学习)。前3个session每个有8篇论文,第4个session有10篇。下面简要汇总这4个session。 继续阅读“AAAI2020-北大预讲会-见闻”