从 EMNLP 2019 看知识图谱领域最新进展
精选 5 篇来自 EMNLP 2019 的知识图谱相关工作,带你快速了解知识图谱领域最新研究进展。
本期内容选编自微信公众号「开放知识图谱」。
■ 论文解读 | 吴杨,浙江大学硕士生,知识图谱、NLP方向
动机
谷歌的 BERT 预训练模型,已经能够在两个句子的语义相似度匹配等需要输入一对句子的任务上取得了非常好的效果,但是,假如说现在有 N 个句子,需要为每个句子找出与其最相似的另一个句子,显然使用 BERT 需要 O(N*N) 的时间,这是非常耗时的操作。
因此有必要通过生成每个句子的 Embedding,然后通过 Embedding 直接计算相似度来大大减轻计算量。由于直接使用 BERT 的输出(CLS,或者平均)作为句子 Embedding 的效果并不好,因此本文提出了使用孪生网络来输出优秀的句子 Embedding。
方法
概述
SBERT 网络是通过 SNLI 数据集(标注了一对句子之间的关系,可以是蕴含、矛盾或者中立)进行预训练的,所谓孪生网络其实就是两个一模一样共享参数的网络,我们首先将第一个句子输入到 BERT,通过不同的 Pooling 方法获得句子的 Embedding 表示,第二个句子同样如此,然后将这两个 Embedding 变换后通过 Softmax 输出这对句子之间关系的概率进行训练(分类问题)。
在训练完毕后,我们就可以将下面的 BERT 和 pooling 层拿出来,将句子输入得到其 Embedding,再进行其他操作(比如计算相似度可以直接使用 cosine-sim)。
Pooling方法
1. CLS: 直接使用 CLS 的输出作为 Embedding;
2. MEAN: 平均所有 token 的输出作为 Embedding;
3. MAX: 取每一维输出向量的最大值。
目标函数
分类目标函数:
其中 u 和 v 为两个句子的 Embedding,Wt 为变换矩阵,最终的维度为 3n*k ,该目标函数可用于预训练 Sentence Embedding。
回归目标函数:
该目标函数直接计算 u 和 v 的 cosine 相似度,将之均方误差作为 loss。另外结构 也是预测时候的计算方式。
三胞胎目标函数:
其中 Sa 为句子 a 的 Embedding,Sp 则为句子 p,句子 p 是跟 a 属于同一类型的正例句子,n 则是一个反例,三胞胎网络和孪生网络类似,这个目标函数是为了让正例距离尽量近而反例尽量远。
预训练
SBERT 在 SNLI 和 MultiNLI 数据集上训练,其中 SNLI 包括了 570,000 对句子标注了矛盾(contradiction)、蕴含(entailment)和中立(neutral)关系。
评测
无监督语义相似度匹配(unsupervised STS)
STS 数据集:语义相关度标注数据集,给定一对语句,标注其语义相关度(从 0 不相关到 5 非常相关)。
在 SNLI 和 NLI 数据集上 pre-train,不进行 fine-tune,直接计算 cos 相似度,使用 spearman 计算 cos 相似度和标签的相关性,因为标签是离散值,而预测的时候使用的是回归模型,因此需要计算其相关度,论文中说普通的相关度计算不太好,使用 Spearman 是比较不错的选择。
有监督语义相似度匹配(supervised STS)
在 NLI 数据集(两个语句是否蕴含、矛盾、中立)上 pre-train;
在 STSb 数据集(语义相似度数据集)上进行 fine-tune 并进行评测;
使用 cos 相似度计算,使用 Spearman 计算与 label 的相关度。
辩论观点相似度匹配(Argument Facet Similarity)
AFS语料库包括了关于 gun control, gay marriage 和 death penalty 三个主题的一系列辩论观点,其标注了一对辩论观点的主题是否相同(0-完全不同的主题,5-完全相同的主题),作者在论文中说,由于 AFS 的相似度判断不仅仅是观点类似,还需要是理由也类似,而且 AFS 的用词和语句表达跟 SNLI 差距很大,因此直接使用 pre-train 的 Embedding 计算相似度效果不太好。
同时采用了十折交叉检验和使用其中的两个 topic 训练,3 个 topic 测试的方案,采用 Spearman 相关度计算。
Wikidata相同段落识别(Wikipedia Sections Distinction)
对 wikipedia 的任意两句话标注了是否属于同一小节;
采用三胞胎网络进行训练,采样两个同一小节和一个不同小节的语句,让同一小节的 Embedding 尽可能近,不同小节尽可能远;
SentEval迁移学习
SentEval 是专门用于测试 Embedding 效果的数据集,但是其任务跟本文这些 pre-train 和 fine-tune 时的没什么关联,其任务主要有:
MR:影评的情感预测,CR: 商品评价的情感预测
SUBJ: 影评的主观程度预测,MPQA: 新闻观点的两极分类
SST: 斯坦福情感树分类,TREC:问题类型分类
MRPC: 微软的判断语义是否等价的数据集
从结果中可以看出,SBERT 输出的句子 Embedding 表现不错,并且对句子中的情感成分捕捉的很好。而相比之下,原生 BERT 输出的 CLS 向量表现的不尽如人意。
模型简化测试
作者在 SNLI 和 STSb 数据集上测试了使用不同的 Pooling 方法以及不同的 u、v 拼接方式对输出的 Sentence Embedding 的影响。
事实证明,采用各种 Pooling 方式其实对 SBERT 的性能影响不大。而改变拼接方式影响较大,普通的 (u,v) 拼接的性能很差,最重要的一部分是 |u-v|,毕竟分类的输出很依赖与计算两个 Embedding 的差异度。
计算效率
在计算效率上,主要与直接使用 GloVe Embedding 和使用 Universal Sentence Encoder 进行比较(BERT 需要几十个小时)。
由于 Transformer 的并行性,因此虽然在 CPU 上 SBERT 的表现不太好,但是在 GPU 上还是不错的。当然直接使用 GloVe 的效率是显而易见的(直接进行向量运算即可)。Smart batching 是说通过将长度相似的句子分为一组,这样在 mini-batch 中就只需要 padding 到最长的长度,可以减小 padding token 的计算开销。
总结
本文提出了使用孪生 BERT 网络训练 Sentence Embedding 的方法,事实证明这种方式输出的 Embedding 在捕捉句子的语义和情感等方面都有不错的效果,在各种任务上都有着不输于 fine-tune BERT 的成绩,而且很大的提升了计算效率。
2■ 论文解读 | 叶宏彬,浙江大学博士生,研究方向为知识图谱、自然语言处理
背景
大多数现有的事件提取(EE)方法仅提取句子范围内的事件参数。但是,此类句子级的 EE 方法难以处理来自新兴应用领域(例如金融,法律,健康等)的大量文档,其中事件论元分散在不同的句子中,甚至多个事件实例在同一文档中同时存在。
为了应对这些挑战,本文提出了一种新颖的端到端解决方案 Doc2EDAG,该解决方案可以有效地生成基于实体的有向无环图,以实现文档级事件抽取。
动机
本文的附录部分展示了中文金融事件抽取的几个难点,并用之前的 DCFEE 模型作了对比分析:
1. 在多事件任务下,尽管 DCFEE-O 可以正确地识别关键语句,但它无法决定此语句表示多少事件,DCFEE-M 会产生多个部分正确的事件,但是 DCFEE-M 的论元补全阶段是上下文无关的;
2. 对于不同的句子多次提及同一事件的环境下,DCFEE 模型的关键句子检测模块无法有效地区分重复的事件实例,造成抽取事件冗余;
3. 当一个文档由多个简单的句子片段构成时,事件的论元散落在各个句子中,DCFEE 模型无法有效地将这些零碎的信息整合起来识别完整的事件论元及事件角色。
模型
模型分为四个阶段的处理流程:
1. 预处理模块:通过词嵌入矩阵将文档中的句子序列
2. 文档级信息融合模块:为了有效地解决论元分散的挑战,必须利用全局上下文来更好地识别一个实体是否扮演特定的事件角色。因此,该文档级别实体编码阶段的目标是用这样的上下文对提取的实体提及进行编码,并为每个实体提到的内容生成大小为
由于涉及的实体通常包含多个可变长度的令牌,因此采用注意力加权平均 (AWA) 模块,为每个实例获得一个固定大小的嵌入
为了提高对文档级上下文的认识,作者使用了第二个 transformer 模块,以方便所有实例和句子之间的信息交换。模型中还增加了句子的嵌入位置来指示句子的顺序。
在转换器编码之后,作者还使用一个 AWA 模块将相同实例的嵌入聚合到单个嵌入中。在这个阶段之后,获得了文档级上下文有关的实例和句子表示,并对每种事件类型进行事件触发分类。
3. 文档级信息记忆模块:在依次生成基于实体的有向无环图 (EDAG) 时,必须同时考虑文档级上下文和路径中已经存在的实体。因此,作者设计了一种内存机制,初始化为句子的嵌入向量。更新 EDAG 时需要追加已经识别的实体嵌入或零矩阵向量(假如识别的是 NA argument)。
4. 路径扩展模块:当扩展事件路径时,对每个实体进行二进制分类,展开 (1) 或不展开 (0),结合当前路径状态、历史上下文和当前角色信息。首先连接记忆张量 m 和实体张量
实验
ChFinAnn 数据集(本文使用的)与 DCFEE 使用的数据集相比,ChFinAnn 要大十倍,其中约 30% 的文档包含多个事件记录。文中实验表明,当面对DEE(文档级事件抽取)任务时,Doc2EDAG 获得当前最好的结果。
总结
1. 提出了一种新颖的解决方案 Doc2EDAG,该解决方案可以在给定文档的情况下直接生成事件表,以有效应对 DEE 的独特挑战;
2. 重新设计了无需触发词的 DEE 任务,以简化基于 DS 的文档级事件标记;
3. 为 DEE 建立了一个大规模的现实世界数据集,它面临着事件论元分散和多事件的挑战,并进行广泛的实验证明了 Doc2EDAG 的优越性。
■ 论文解读 | 陈名杨,浙江大学直博生,研究方向为知识图谱
引言
知识图谱(KGs)在很多 NLP 的下游应用中起着越来越重要的作用。但是知识图谱常常是不完整的,所以解决知识图谱补全的任务也非常重要。主要有三种方法来完成知识图谱补全的任务,基于规则(Rule-Based)的方法,基于潜入(Embedding-Based)的方法和基于路径(Path-Based)的方法。
当前,也有一些工作考虑使用深度强化学习来解决预测缺失链接的问题,例如 DeepPath,是第一个将深度强化学习引入知识图谱推理的工作。但该工作也有很多缺陷:
1)DeepPath 缺少 memory 相关的部分,导致需要一定的监督学习进行与训练,该预训练可能导致模型过拟合;
2)对不同的关系都使用相同的超参数并没有考虑实体间多样性的链接;
3)当 agent 选择了一条无效的路径后,会停下来并重新选择,这样会导致持续选择无效路径最终被困在一个节点。
本文提出了一个新的使用模型(AttnPath)来解决上面提到的问题,该模型使用 LSTM 和图注意力机制作为 memory 部分从而不需要预训练,提出了两个度量 MSR 和 MRR,提出了一定的机制使得 agent 每一步都向前走从而不会被困在某一个点。
方法
因为该方法使用强化学习作为训练方法,所以先介绍该方法强化学习的框架:
环境(Environment):整个知识图谱,除了当前正在 query 的关系和其反关系;
状态(State):agent 的 state 由三部分连接而成,分别是嵌入部分,LSTM 部分和图注意力部分;
a) 嵌入部分。类似于 DeepPath,本文的嵌入部分包含了当前节点的嵌入,以及 target 节点嵌入减去当前节点的嵌入,区别于 DeepPath 使用 TransE 作为嵌入方法,这里使用 TransD 作为嵌入方法把每个节点的嵌入映射到当前 query 的关系的相关平面上。则嵌入部分的 Mt 表示如下:
b) LSTM 部分。这里使用一个三层的 LSTM 来对 agent 之前走过的路径进行编码:
c) 图注意力部分。对于每一个 entity 都有不同的方面,也就是说希望 agent 可以更多关注和当前 query 有关的关系和邻居节点,因此引入来 GAT,对一个节点的周围节点,采用不同的权重并且相加,如下:
所以最终的状态表示如下:
动作(Action):在 KG 推理的任务中,动作指的是 agent 选择一个关系然后前进一步。动作也分为有效和无效,有效指的是在当前的节点中有这样的关系从该节点出去,反之亦然。
奖励(Reward):奖励是对 agent 的反馈,根据选择的 relation 是否是有效的,以及一系列的动作是否能走到最终真正的尾实体。
整个过程的优化使用 REFORENCE 算法,更新参数如下:
AttnPath 的模型如下所示:
Mean Selection / Replace Rate
对于不同的关系,需要悬链不同的模型,但是不同关系的困难程度不同,也就是说有些关系有较多的替代关系,agent 可以很容易的找到一条替代的路径从头实体走到尾实体。这里提出两个度量方法,Mean Selection Rate 和 Mean Replacement Rate 来度量每个关系的困难程度。
对于关系 r 的 Mean Select Rate(MSR)表示如下:
MSR 越低,表示 r 越难学习,因为连接 r 的实体有很多的方面(aspect),也就说对于这些 entity,r 只是其中的一小部分。
对于关系的 Mean Replacement Rate(MRR)表示如下:
在本文中,对于学习起来有不同难易程度的关系采用不同程度的正则化。例如对于具有比较高的 MSR 和 MRR 的关系,因为学习起来比较容易,则采用更多的正则化来防止过拟合,反之亦然。
实验
Fact Predict:
Link Prediction:
4
■ 论文解读 | 汪寒,浙江大学硕士生,研究方向为知识图谱
动机
KG 的分布遵循长尾分布,大部分关系只有很少的三元组,且大体趋势是关系出现的频率和与之相关的不常见实体的比例呈反比关系。而之前的知识图谱补全工作都围绕在那些出现频率较高的实体和关系,忽略了剩下的那些 infrequent relation 和 uncommon entities。
因为作者就针对 infrequent relations 和 uncommon entities 的 KGC 构造成一个 few-shot learning 的问题,并提出了一个 meta-learning 框架。
本文的亮点主要包括:
1. 提出了 entity trait 的概念,即实体的表示应该是 relation-specific 的,也就是不同的关系与实体的表述的不同部分相关,利用文本信息作为补充信息;
2. 提出了一个 Triplet Generator,在 meta-testing 的训练阶段用一个 VAE 网络生成一些三元组进行数据增强。
概念及模型
Overview of Learning Method
将每种关系的 KGC 看作是一个 task,把所有 task 分为训练集
在 meta-testing 的阶段对每个 task 都随机抽 r 个三元组继续训练模型,得到模型参数 W’,再在剩下的三元组上测试模型性能。
Description Encoder
从 description 生成三元组的 embedding
1. relation embedding生成
用一个 CNN 网络将 relation 的 description 映射成一个向量
2. entity trait计算
entity trait 表示与某个关系相连所有的实体的共有特征,这个部分由两个 memory matrix 完成,其中
3. relation-specific entity embedding生成
先将 entity 的 description 通过一个 CNN 网络生成 hidden states,再用上一步生成的 entity trait 作为 key 计算隐状态权重,最后生成 entity embedding。
Triplet Generator
用一个复杂版的 VAE 来生成一些三元组补充训练数据。
Meta-Learner
用 Reptile 算法优化。
实验
数据集
One-shot和Four-shot KGC实验结果
其中 Ours-TCVAE 是指去掉 Triplet Generator。
Triplet Generator Study
表示用 Triplet Generator 生成不同个数三元组时模型在 One-shot 场景的表现。
总结
本文在 few-shot 问题上引入了文本信息作为补充信息,并提出了 entity trait 的概念,也就是实体的 embedding 应该是 relation-specific。同时为了解决在 meta-testing 的训练阶段训练不足的问题,还提出了一个基于 VAE 的 Triplet Generator 来人工生成三元组补充训练数据。
5■ 论文解读 | 叶群,浙江大学计算机学院,研究方向为知识图谱、NLP
摘要
这篇论文首次在多标签分类问题中提出了 meta-learning 的方法,学习 weight policy 和 decision policy,分别指代训练时损失函数中不同标签的权重和预测时不同标签的阈值,从而更好地建模不同标签之间的依赖和复杂性。实验表明在 entity typing 和 text classification 两个任务中都取得了更好的实验结果。
引言
传统的多标签分类模型,在训练时采用标准的交叉熵损失函数,即每个类别的权重一致;在测试时,每个类别的阈值一般都取 0.5。这种简单的设定忽略了标签之间的依赖关系,忽略了不同标签的重要性。实际中很多标签之间存在着关系,比如 /organization 和 /company,/urban 和 /economics。
本文利用 meta learning 的方法学习 weight policy 和 decision policy,分别指代训练时损失函数中不同标签的权重和预测时不同标签的阈值。实际上权重和阈值可以被看做两个超参数,meta-learning 学习到这两个超参数之后,传递给下游模型进行训练,所以本文的 meta-learning 方法是模型无关的。
方法
模型图如图 1 所示,基本结构分为两部分:meta-learner 和 classification model。Meta-learner 的任务是学习 weight policy 和 decision policy,即权重和阈值两个超参;Classification model 根据学习到的两个超参,训练一个 Batch,并进行测试得到测试结果,并以测试结果作为 reward 去更新 meta-learner 和 classification model的参数。
Meta-learner
Meta-learner 的结构采用了 GRU,采用了强化学习的方法去进行 weight policy 和 decision policy 的学习。其中,强化学习的 state 是 GRU 的隐层表示:
Weight policy 和 decision policy 的定义:
Reward 的定义:
Classification Model
分类模型可以是任何形式的,只要损失函数是交叉熵形式即可,这里采用的损失函数为:
其中类别数为 N,w 为不同类别的权重。只训练一个 Batch 就进行测试,这样可以减轻训练的开销。
实验
实验在 entity typing 和 text classification 两个任务上进行了评测。在 entity typing 上选取的数据集为 FIGER、OntoNotes、BBN,分类模型采用了 entity typing 中的 SOTA 模型,其结构如下:
实验结果如下表所示,加入 weight policy 和 decision policy,模型的结果可以有 2~3 个百分点的提升。
由于本文中 meta-learning 的方法是基于强化学习的框架,而强化学习通常缺乏鲁棒性和对初始化敏感。实验采用不同的初始化方法进行多次实验,结果如下表所示。
文本分类任务模型选取了经典的 text CNN 模型,数据集有 Reuters-21578、RCV1-V2,实验结果如下表所示。
模型的鲁棒性分析如下表所示。
总结
本文在多标签分类任务中,利用 meta-learning 的方法学习 weight policy 和 decision policy,从而为不同标签学习到不同的权重和阈值,在 entity typing 和文本分类两个任务上效果有所提升。但是针对作者所说的,可以建模不同标签之间的 dependency,我觉得这一点上模型并没有显式地体现这一点。
点击以下标题查看更多相关文章:
让你的论文被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢? 答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得或技术干货。我们的目的只有一个,让知识真正流动起来。
📝 来稿标准:
• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向)
• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接
• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志
📬 投稿邮箱:
• 投稿邮箱:hr@paperweekly.site
• 所有文章配图,请单独在附件中发送
• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
关于PaperWeekly
PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。
▽ 点击 | 阅读原文 | 获取最新论文推荐