来源: ICLR
作者:清华大学、UCB
内容:可以发现其他没有被KG schema预先定义的关系,自动建立完善知识图谱。
创新点:
预训练的语言模型:
词嵌入(Word Embedding):Word2Vec和Glove
上下文嵌入(Context Word Embedding): CoVe和ELMO
预训练模型: GPT和BERT
改进型和领域定制型: 改进型代表为ALBERT和XLNet;领域定制化代表为SciBert (Scientific Bert) 和BioBert(Biomedical Bert)
beam search搜索算法:
从搜索过程中返回具有最高匹配度(匹配度是通过在预先训练的线性模型的注意权重矩阵中搜索而得到的)的candidate
fact。
模型图
- 获取基本原料
输入:
(1).文本语料库,例如英语维基百科,包含段落和句子。
(2).预先训练的语言模型LM,例如bert,GPT-2/3。
- Match(自动抽取三元组作为候选集Candidata Facts)
提取实体和关系
具体:
先用开源工具抽取出它的所有实体,构成我们可能建立的关系候选。按照他们在句子中出现的顺序,分为头实体和尾实体。然后再利用BERT这类预训练模型的注意力权重来提取实体间的关系。
【1】对于一个(头实体,尾实体)对,用Beam search方法从一个头实体出发生成一个到尾实体的序列,比如:图中从Dylan出发,以songwriter结束。
【2】 对于每一位置,我们看注意力权重矩阵里attend到这个实体的这一列,并且只关注在句子中当前位置之后的token的注意力权重,选择权重最大的下一个token加入当前序列。比如:从Dylan出发,看注意力权重矩阵中第一列选择了is(权重0.3)这个token,然后重复之前的操作看is这一列,选songwriter(权重0.4)这个token,那么搜索结束,我们就得到了一个(Dylan,is, songwriter)的序列。
【3】对于关系提取加入一些限制条件:
(1)只保留注意力权重和大于阈值的序列,防止BERT这类模型单纯地提取出符合语言模型的序列,而不是那些对实体有特殊意义的关系。
(2)提取出来的关系必须在整个语料中出现足够多的次数,防止出现一些过于细节偏门的关系。
(3)关系序列必须是句子中出现的连续token,防止提取出没有意义的关系。
- Map
将这些candidate中的entity和relation匹配到已有的KG schema中;同时对部分无法匹配的entity和relation进行保留,最终得到整个知识图谱。
实验效果
使用目前比较成熟的实体链接和关系抽取方法,证明MAMA无论在准确率还是召回率上都超过了之前的方法。
MAMA的一大亮点,可以发现其他没有被schema预先定义的关系:
(1)蓝色的关系是在预定义schema中出现的部分
(2)黄色是MAMA额外生成的33%的新关系
例子:
Dylan和其他歌手曾经合作过,曾经是某个乐队的成员等,这样的信息是人工schema中所没有的,但对于歌手来说却是很重要。
如果可以自动完善知识图谱和schema的构建,那就解决了KG中很难穷尽所有关系的难题了。
缺点:没有和其他的SOTA进行比较,效果尚未可知。
论文链接: https://arxiv.org/pdf/2010.11967.pdf
讲解视频: https://www.youtube.com/watch?v=NAJOZTNkhlI&t=276s