Learning to Retrieve Reasoning Paths over Wikipedia Graph for Question Answering
论文:https://arxiv.org/abs/1911.10470
代码:https://github.com/AkariAsai/learning_to_retrieve_reasoning_paths
学习在维基百科中检索问题的推理路径
- 基于推理路径
任务
从维基百科中提取推理路径实现多轮问答。
-
多轮问答:
需要结合多篇文档的“知识推理”能得到最终答案。
方法(模型)
- 通过维基百科的超链接构建一个维基百科图网络,在不同的文档之间建模。
- 使用一个RNN给推理路径建模,从而找到最佳推理路径。
模型结构:
由一个提取器和阅读器组成
推理路径提取器(Reasoning Path Retrieval):根据维基百科之间的超链接关系得到若干推理路径。
阅读理解答案抽取器(Reading and Answering Reasoning Path):基于这些路径找到最可能的一条路径作为最终的答案。
将维基百科文章里的每个段落 p p p作为基本单元。给定问题 q q q,模型首先找到一条推理路径 E = [ p i , . . . , p k ] E = [p_i, . . . , p_k] E=[pi,...,pk],用 S r e t r ( q , E ) S_{retr}(q, E) Sretr(q,E)表示;然后在 E E E中找到答案 a a a,用 S r e a d ( q , E , a ) S_{read}(q, E, a) Sread(q,E,a)表示。
a r g m a x E , a S ( q , E , a ) s . t . S ( q , E , a ) = S r e t r ( q , E ) + S r e a d ( q , E , a ) \underset{E,a}{arg \ max} \ S(q, E, a) \ \ \ \ s.t. \ \ S(q, E, a) = S_{retr}(q, E) + S_{read}(q, E, a) E,aarg max S(q,E,a) s.t. S(q,E,a)=Sretr(q,E)+Sread