Markus Eberts and Adrian Ulges, “An End-to-end Model for Entity-level Relation Extraction using Multi-instance Learning”, EACL 2021
目录
展开
1 简介
- 姓名:JEREX
- 机构:莱茵曼应用技术大学
- 任务:Joint Doc RE
- 动机:第一个做 joint 的 docRE
- 方法:使用 MIL 的方法,finetune BERT,有四个子任务
- Entity Mention Localization:用 max pooling 表示 span,再拼接 span 长度 embedding,FFNN 对 span 二分类
- Coreference Resolution:拼接两个 mention embedding(就是上面的 span embedding)和 mention 的编辑距离的 embedding,FFNN 二分类,看这俩是不是属于同一个 entity
- Entity Classification:从 mention,max pooling 得到 entity 表示,FFNN 分类
- Relation Classification:作者采用了两种策略,分别实验
- global:entity 拼接 entity type,pair 再拼起来,分类
- multi instance:每个 mention pair(+ 中间 context embeddding + 距离的 embedding) 拼成 mention pair embedding,max pooling 后,再拼接 entity type 再分类
- 实验:
- global 没有 multi instance 好,因为本身是多样本多标签分类,还是就得用这个领域常用的办法
- mention -> entity:max pooling 比 mean 好
- 性能:与 pipeline 方法的 SOTA 差不多,单独 DocRE 任务上,和 SOTA 也差不多
- 短评:真是个不错的方向呀,dialogRE 也可以考虑搞成这样了哈哈哈哈
2 思考
- 大家都知道,entity type 对 RE 很重要。常见的想法是把 entity type embedding 直接拼在后面,这篇文章还把它当做一个 task,说不定这对最后 RE 结果也有影响?但是到底有没有用呢?他也没做实验。
- 关于 MIL 的训练,本文就是四个子任务,loss 直接加一起,直接从头就都一起搞。我知道还有一种方式,是先 loss1,差不多收敛之后,再 loss1 + loss2,这样一步一步,最后才四个一起。他们这样做一般都是因为,可能 loss1 是一个自编码器这种,必须得先有个差不多的结果(我猜的)。不知道本文这样做,能不能有提升。
- 关于 BCE 负样本的采样:本文的所有用 BCE 的任务,负样本采样都是固定的个数个。不知道其他文章是怎么负采样的,感觉都没有直接说,那就是 $C_n^2$ 全要了?
- 关于 mention -> entity 使用 max pooling:
- 作者在实验部分,有一个不用 MIL 的,就相当于把姚远的 Baseline 的 mention -> entity 那里改一下 max pooling,结果好了很多。这个是为啥呢?max pooling 的物理意义,我还是搞不明白。
- 作者说 the multi-instance selection usually selecting the most relevant instances,没明白,max pooling 怎么选出的例子呢?难道不是每一位选择数值最大的吗?最后出来的不是相当于一个结合的结果嘛?
- 这里的 max pooling 得到的 embedding,在 CR 这个子任务上,怎么和数据集提供的 entity 标签对应起来呢?换句话说,怎么用上这个 entity 的监督信息呢?作者绕过了这个问题,采用的是二分类,就看这个 pair 是不是属于同一个 entity。我就在想,max pooling 得到的结果应该可以看做是一个 prototype,可不可以 min 这个 proto 与 gold entity 的距离?(还是要用匈牙利算法)
- 关于 relation 的方向性:因为是有方向的,所以本文是一个 pair 搞两次,即 [e1;e2] [e2;e1] 这样两次,分别看有无关系。那其实还有另一种方法,就是原先是 n+1 类,可不可以搞成带方向的 2n+1 类呢?这样感觉上应该是不如现在的,不过也没看到过有人对比这个。
- “Note that some documents in DocRED ex- ceed the maximum context size of BERT (512 BPE tokens). In this case we train the remaining position embeddings from scratch.” 没懂
- 本文在使用 DocRED 时,把标注有错的剔除了,以后可以考虑用它的数据集