一、任务定义
阅读理解任务根据答案类型,可以分为如下四种形式:
- 完形填空:给定上下文
C
C
C,一个词或者实体
a
∈
C
a \in C
a∈C被移除,预测
a
a
a, 即最大化条件概率
P
(
a
∣
C
−
{
a
}
)
P(a | C-\{a\})
P(a∣C−{a}).
- 多项选择:给定上下文
C
C
C,问题
Q
Q
Q, 候选答案集合
A
A
A, 要求模型从
A
A
A中选择正确的答案
a
i
a_i
ai,即最大化条件概率
P
(
a
i
∣
C
,
Q
,
A
)
P(a_i|C,Q,A)
P(ai∣C,Q,A).
- 区间提取:给定上下文
C
C
C和问题
Q
Q
Q, 片段抽取任务要求模型从
C
C
C中抽取连续子序列
a
∈
C
a \in C
a∈C作为正确答案。即最大化条件概率
P
(
a
∣
Q
,
C
)
P(a | Q, C)
P(a∣Q,C)
- 自由问答: 给定上下文
C
C
C和问题
Q
Q
Q, 需要模型预测出正确答案
a
∈
C
o
r
a
∉
C
a \in C \ or \ a \notin C
a∈C or a∈/C, 且最大化条件概率
P
(
a
∣
C
,
Q
)
P(a | C, Q)
P(a∣C,Q)
二、数据集
- 完形填空:CNN & Daily Mail 、CBT、LAMBADA、Who-did-What、CLOTH、CliCR
- 多项选择:MCTest、RACE
- 区间提取:QuAD、NewsQA、TriviaQA、DuoRC
- 自由问答:bAbI、MS MARCO 、SearchQA、NarrativeQA、DuReader
三、评价指标
针对完形填空、多项选择、区间提取任务,使用经典的Pre、Rec、F1
即可。针对自由问答,有必要详细分类解释。参考[2], 自由问答评价指标可以分为检索类\生成类\基于学习类\人工评测
四类。下面一一阐述。
3.1 检索类
检索类方法是信息检索任务中的一大类评估方法,比如最常用的Recall@k, 即给定一个query
,选择k
个最有可能的response
,看正确的是否在这k
个里。
3.2 生成类
生成类方法是现在比较常用的评价指标, 其又可以分为以下几类
3.2.1 词重叠评价指标
比如BLEU, ROUGE, METEOR
等,其详细解释可以参考[3].
3.2.2 词向量评价指标
比如Embedding avrage score, Greedy matching score, Vector extrema score
等,详细解释仍然可以见[3]
3.3 基于学习的评价指标
使用机器学习/深度学习来学习一个好的评价指标,使得模型打分和人工打分更接近。
3.4 人工评测
人工判断结果。