该论文可直接在网上下载。
1. Abstract & Introduction部分
1 QA(question answering)的主要目的是generalize to unseen questions. 使得系统能够泛化到回答没有见过的问题。通俗一点的理解就是,机器可以根据自己的理解,回答一些未知问题,从而获得一定程度的”智能“。
2 一个可能的问题是:annotation 会导致unintended annotator bias 无意识地标记偏见。这个其实是个很常见的套话,反正是人标记都会有bias,导致模型过度专注于bias而不是任务本身。
3 本文就提出了KTL(Knowledge Triplet Learning), 一个关于知识图谱(Knowledge Graphs)的自监督任务。对于一些常识和科学知识的人工合成图,提供了启发(propose heuristics to create synthetic graphs for commonsense and scientific knowledge)
4 为了研究QA的各种方面,业界提供了很多数据集:
抽取式的(Extractive):SQuaD, HotpotQA, Natural Questions
答案可选择式的(choose the correct answer from given set):SocialIQA, CommonsenseQA, Winogrande.
最近的很多模型表现的也挺好:BERT,XLNET,Roberta等
5 这里的Winogrande数据集需要经过carefully designed crowdsourcing procedure 仔细设计的多人作业流程的unbiases label 无偏标记。所以非常耗费人力。(因为crowdsourcing就是要让一堆人来标记)。
6 通常类型的annotation可能会导致Clever Hans Effect (观察者期望效应),这会导致实验设计者无意识地影响实验步骤和结果,或者是错误地按照自己的意识将实验结果解释成了他们想要的答案。题外话:所以需要双盲实验来抵消这种效应。
其中一个解决办法就是如1.5那样,另一种是忽视label,使用无监督学习QA,同时也是本文要注重的方式。
7 Recent works:有些研究利用如维基百科之类的语料库(text corpus) 来建立synthetic data(合成的数据)来解决Extractive QA。其他的人利用大规模pre-train预训练,如GPT-2,来生成知识,问题,答案,并且和已知答案做对比。
8 本文会利用到知识图谱中的information present(信息展示?), 比如ATOMIC模型,并且定义了KTL中的新任务。该文没有使用合适的知识图谱,而是使用人工合成的方式(synthetic)实现自己的图谱。
9 KTL有点像Knowledge Representation Learning 和 Knowledge Graph Completion,但不局限于此。其中前者用来学习–> 知识图谱中定义的实体(Entities) 和 关系的 低维映射(low-dimensional projected)和分布表示(distributed representation)。后者用来发现新的实体和关系,从而扩展未完成的知识图谱。

10 KTL中定义了三元组triplet, 如上图所示,知其二可以推三。这种三元关系(tri-directional)可以使得所有可能的关系都被学到,比如AB-C,AC-B,BC-A。然后把context, question, answer 映射成KTL三元组(h, r, t)。
11 定义两种不同的方式来实现自监督KTL。其中一种是表示生成任务(representation generation),另一种是masked language modeling(应该叫带掩码的语言建模?)
12 本文将尝试用在该任务上训练的模型(models trained on this task) 去实现zero shot QA,不加任何额外的监督。同样也会展示在该任务上预训练之后的模型(models pre-trained on this task),表现地非常好的那种,和在few-shot learning强预训练的模型(strongly pre-trained language models)
13 本文贡献:
a) 基于知识图谱定义了KTL,并且展示如何用来zero-shot QA.
b) 对上面的任务定义了两种策略
c) 提供了一些构建synthetic knowledge graphs的启发
d) 在之前提到的数据集上进行了实验
e) 在zero-shot上达到了state-of-the-art 很好的结果,为few-shot QA提供了强baseline。
2. KTL(Knowledge Triplet Learning)
14 定义G=(V,E)为知识图谱,V是定点,E是边。V包含了entities(可以是phrases和named-entities, 基于知识图谱) 。S是一系列的facts, S ⊆ V × E × V S\subseteq V \times E \times V S⊆V×E×V,基于(h, r, t)的格式。其中h, t属于V,r属于E。更详细地说就是,h和t就是之前图片中的head和tail,而r是这些实体之间的relation。
15 
这里原文给了个例子,PersonX信任Person Y, 问Person X是怎么被看作的的,答案是有信念的(faithful)。这里Head就是’PersonX信任Person Y’, tail 就是faithful, relation就是’How is PersonX sees as?’.
16 基于此定义的三元组(h, r, t), 可以获得三种function, f t ( h , r ) = > t , f r ( h , t ) = > r , f h ( r , t ) = > h ( 1 ) f_t(h, r)=> t, f_r(h, t) => r, f_h(r, t) => h \ (1) ft(h,r)=>t,fr(h,t)=>r,fh(r,t)=>

这篇博客介绍了KTL(Knowledge Triplet Learning)在自监督学习中的应用,用于解决知识驱动的问答问题,特别关注零样本和少量样本场景。它探讨了知识图谱合成、知识表示学习和自监督任务的定义,以及在SocialIQA等数据集上的实验结果。KTL通过定义自监督任务,如表示生成和带掩码的语言建模,推动了模型在常识和科学知识领域的智能问答性能。
最低0.47元/天 解锁文章
1251

被折叠的 条评论
为什么被折叠?



