image-20210529101303060

本文分享的是一篇 NAACL 2021 的论文。论文地址:Text Modular Networks: Learning to Decompose Tasks in the Language of Existing Models

0. Abstract

这篇文章提出了一个名为 TMNs (Text Modular Networks) 的通用框架,通过一系列子模型,将数据集内的复杂问题分解为简单问题。子模型可以是任意模型,它们在框架中都被认为是黑盒模型。同时,这一分解过程是远程监督的,不需要人类标记数据。分解的子模型被称为 NextGen (Next question Generator)

随后,文章基于 TMNs 框架构建了一个问答系统 ModularQA。该系统由 a neural factoid single-span QA model 和 a symbolic calculator 组成。

经过实验证实,ModularQA 具有更通用、更好的可解释性、更稳定的特点。

1. Introduction

image-20210529102929924

  • 图1:ModularQA 模型思路分析图。将复杂问题分解为可回答的简单问题,从而解决这种多跳推理和数字推理的问题。

2. Related Work

文章分析了 modular network, question decomposition 和 multi-hop QA 的相关研究。

3. Text Modular Networks

image-20210529103637366

  • 图2:DROP 数据集样例。

3.1 Modeling QA Sub-Models

模型通过 NextGen 下一问题生成器 D 获取子问题,并通过 问答模型 A 回答子问题,直到下一问题生成器达到最终节点标记,问答模型返回最终结果。

image-20210529104441686

  • 图:下一问题生成器和问答模型的交互过程。问题被拆分为了一系列按顺序的子问题,问答模型结合当前子问题和上下文段落获取当前子问题答案。当子问题最终被 [EOQ] 标记时问答模型给出最终答案。

3.2 Training Decompositions via Distant Supervision

TMNs 的难点在于如何获取下一问题生成器 D。其实构建过程也不是特别有创新,就是问题生成的内容,和前面分享的一篇 自动阅读理解——问答和问题生成 的论文相关。这篇论文采用的问题生成其实就是加入了一点点创新,用一个暗示 z 来限制问题的生成,暗示包括上下文 p、答案 a 和问题词 v。问题词就是问题中提取的单词。详细可以看 4.2 节。

image-20210529105001368

  • 图:问题生成输入和输出样例。

image-20210529115559510

  • 图4:问题生成样例。前两个是采用下一问题生成器生成的问题,可以看到暗示包括答案 2003, 2002,段落是原段落,问题词是 {year, service, sector, rebound}。

image-20210529121230335

  • 图3:构建训练集的整体过程。

4. ModularQA System

4.1 QA Sub-Models, A

问答模型包括两种:SQuAD 问答模型和数学计算器模型。SQuAD 问答模型是在 SQuAD v2.0 上训练的问答模型,可以回答是否问题。数学计算器模型能处理多种问题。

image-20210529122411224

  • 图:数学计算器模型能处理的运算。

4.2 Sub-task Question Models, G

问题生成模型也有对应的两种:SQuAD 问题生成模型和数学问题生成模型。SQuAD 问题生成模型采用的是 BART-Large 生成模型,基于 SQuAD v2.0 的暗示集生成新问题。其中,问题词是非停用词的单词,包括名词、动词、数量词、介词、形容词等。数学问题生成模型将所有可能的问题都生成。最后过滤两个模型中没有答案和错误的答案,保留正确的问题。

4.3 Generating Training Decompositions

生成训练用的分解子问题,包括五种类型:Different, Comparison, Complementation, Composition, Conjunction。

Different 类型:比较不同,例如How many days before X did Y happen?。识别方法是找到类似 How many 这样的比较词组,或者 shorter 这样的比较词,或者找到两个能引导出答案的比较数据。找到相应的内容后,生成下列暗示:

image-20210529152337491

  • 图:Different 类型对应的 hint。

Comparison 类型:例如 Which event happened before: X or Y?。找到两个实体 e1, e2 和两个数据 n1, n2。生成下列暗示:

  • 图:Comparison 类型 hint。

Complementation 类型:互补类型,例如 What percent is not X?。我们要找到包含 not 的内容,以及一个数字 a。生成下列暗示:

image-20210529153032073

image-20210529153040049

  • 图:Complementation 类型 hint。

Composition 类型:复合问题一般包含多种类型,例如 Where was 44th President born?。要找到存在答案的段落 d2。

image-20210529155629753

  • 图:Composition 类型 hint。

Conjunction 类型:例如 Who acted as X and directed Y?

image-20210529155650412

  • 图:Conjunction 类型 hint。

4.4 Inference

推理部分比较复杂,用了 best-first search 找到最佳串,nucleus sampling 找到第一个子问题,[EOQ] 找到串结束。串得分包括新问题相较于老问题得到的新词和经过训练的 RoBERTa 模型的串得分进行求和,得分越低串的质量越好。

5. Experiments

实验采用 DROP 和 HotpotQA 进行。我们选择部分 DROP 和全部 Hard 类型的 HotpotQA 训练集,并拆分验证集为验证集和测试集。

5.1 Explanation and Interpretability

亚马逊众包人工评判证明,ModularQA 具有更好的可解释性、可信任性和更好的答案。

image-20210529151357592

  • 表1:ModularQA 推理样例。

image-20210529170132377

  • 表3:人工评判,ModularQA 具有更好的可阅读性。

5.2 Interpretable Cross-Dataset Models

因为没有跨 DROP 和 HotpotQA 的研究,因此采用了两种消融方法来进行比较。不采用 RoBERTa 评分和采用最可能的问题而不是搜索问题。结果 ModularQA 取得最好成绩。

image-20210529170111483

  • 表2:5.2,5.3和5.4的实验结果。

5.3 Comparison to Dataset-Specific Models

与特定任务训练的、可解释的模型比较,ModularQA 比 DecompRC 差,原因是该模型能选择采用单挑推理回答一些问题,同时针对 HotpotQA 采用了更多的人工工作。这里可以存疑。

5.4 Comparison to Black-Box Models

模型与 NumNet+V2 和 Quark 进行比较,结果都要略差一些。在这里进行了一些分析,说明了模型的主要问题。

5.5 Additional Benefits of TMNs

这部分介绍了 TMNs 除了可解释性以外的其他优势,包括稳定性和更少的数据。

image-20210529172754362

  • 图:稳定性。

image-20210529172809716

  • 图:更少的训练数据。

image-20210529173437325

  • 图5:推理过程。

image-20210529173453077

  • 表4:模型比较。

6. Conclusion & Future Work

本文提出的 TMNs 架构,并构建了一个 QA 模型 ModularQA,具有良好的可解释性、稳定性,需要更少的数据,就可以实现问答。

个人觉得这篇文章的优点包括:写的非常好,图也很不错,结构也很好。缺点是,实验结果被19年和20年的模型压制了。后续可以借鉴这篇模型的思路,通过自动阅读理解实现问答。