作者 | 高天宇
编辑 | Camel
本文对清华大学孙茂松、刘知远团队完成、被 AAAI-20 录用的论文《Neural Snowball for Few-Shot Relation Learning》进行解读。
论文:https://arxiv.org/abs/1908.11007
开源代码:https://github.com/thunlp/Neural-Snowball
1.
关系抽取(Relation Extraction)是自然语言处理当中的一个重要研究课题,其探究如何从文本中抽取结构化的关系事实。例如,从句子“比尔盖茨是微软的创始人”中,我们可以抽取出(比尔盖茨,创始人,微软)这样一个关系三元组,并用于知识图谱补全等下游任务中。
与关系抽取相关的工作有很多,但他们大多针对预定义的关系类型,即给定一个人为定义好的关系集合,在抽取时仅考虑集合内的关系类型。然而,我们面临着开放式的关系增长,随着新领域、新知识的出现,关系类型也在不断增多。因此,我们需要能够应对关系增长的关系抽取模型。
2.
目前的研究当中,主要有以下几种关系抽取的场景,他们所针对的关系类型和利用的数据都有所不同:
有监督的关系抽取(Supervised Relation Extraction):其针对预定义的关系集合,使用大规模的监督数据。
半监督的关系抽取(Semi-Supervised Relation Extraction):其针对的也是预定义的关系集合,希望使用相对较少的监督数据,在大量无监督数据的帮助下,能够取得与有监督关系抽取类似的效果。
少次学习关系抽取(Few-Shot Relation Extraction):其针对的新的(没见过的)关系类型,通过在已有关系类型上的大规模数据预先训练,再快速迁移到新关系类型的少量数据上,达到少次学习的目的。
自启动关系抽取(Bootstrapping Relation Extraction):其面向的也是开放的关系场景,对于新的关系类型,仅给定少量的启动样本,以迭代的方式从大规模的数据中挖掘更多的信息,从而得到更加强大的关系抽取模型。
从上面的分析中可以看出,这些方法涉及到了三种类型的数据:在已有关系类型上的大规模监督数据,对于新关系的少量标注数据,以及大规模的无监督数据。我们希望能够充分的利用这三种数据:
如上图所示,Neural Snowball通过在已有关系上的大规模数据上训练距离度量(下文中会有详细阐述),迁移到新的关系类型上,利用新关系的少量数据作为启动种子,从大规模的无监督数据中挖掘有用信息,挖掘越多的有用信息,我们就能得到越好的关系抽取模型。
3. Neural Snowball 的整个流程如下:
输入:一个新的关系类型,以及少量的标注数据(启动种子)
目标:训练一个该关系类型的二分类器。用二分类器是因为这样更具可扩展性,当关系类型增加的时候,可以将多个二分类器放在一起使用。
训练:以启动种子开始,迭代式的从无监督数据中挖掘有用信息。
如图所示,每一轮迭代主要分为两个阶段:
(1) 利用远监督获取待选句子;
(2) 利用新的关系分类器获取待选句子。
远监督(Distant Supervision)是指,如果已有数据告诉我们,实体h、t之间有关系r,我们就找到所有包含h、t的句子,并假设他们真的表达了关系r。第一步获取了新的训练数据之后,Neural Snowball会训练新的关系分类器,这个新的分类器会从无监督数据中挖掘它认为属于关系r的数据,这些新数据可以帮助训练更好的分类器。
4.
然而,这两步迭代都会带来噪声数据,这时就需要Relational Siamese Network(RSN)来进行数据过滤。
RSN结构如上图,其输入两个句子,输出这两个句子是否表达的是同一种关系。我们在已有关系的大规模数据上预先训练RSN,并将它用在Neural Snowball中,对所有从无监督数据中选出来的候选数据,用RSN将它们与启动种子进行比较,仅留下置信度较高的样本。
上表是关于RSN的性能测试。P@N表示预测top-N的精度。Train和test分别表示在训练中见过的关系类型上测试,和在新关系上进行测试的结果。可以看出,即使是在RSN从没有见过的关系类型上,其表现也是十分不错的。
6.
相比传统的Bootstrapping方法,我们的优势是什么?首先,我们引入了神经网络,相比使用pattern或者statistical方法能够有更好的generalizability。同时,我们利用在已有关系上预先训练的RSN,能够在迭代过程中获得更好的精度。
在与一些baseline模型的对比中,我们可以看出Neural Snowball具有很强的性能优势。同时,我们也对Neural Snowball迭代获得的样本质量进行了一些分析
图中横坐标代表迭代轮数,蓝色的柱状图代表挖掘到的新的样本的数量。绿色和红色分别代表利用新挖掘出的数据训练得到的分类器的precision和recall。其中,虚线表示一种理想情况:在知道无监督数据中哪些是正确的样本的情况下,随机选取和Neural Snowball挖掘出来的相同数量的样本。
从图中可以看出,得益于RSN的使用,Neural Snowball挖掘出的样本保持了较好的precision,但因为在挖掘过程中过于陷入“舒适区”,recall距离理想情况还有较大的差距。这也是我们未来想要进一步探索的方向,即如何能够挖掘出更多样化的样本。
AAAI 2020 论文集:
AAAI 2020 | 这 10 篇论文值得你了解(附PPT下载)
AAAI 2020 论文解读系列:
01. 时间可以是二维的吗?基于二维时间图的视频内容片段检测
09. 借助BabelNet构建多语言义原知识库
10. 沟壑易填:端到端语音翻译中预训练和微调的衔接方法
11. 中科院自动化所:通过识别和翻译交互打造更优的语音翻译模型