基于神经网络的机器阅读理解综述学习笔记

基于神经网络的机器阅读理解综述学习笔记

一、机器阅读理解的任务定义

1、问题描述

机器阅读理解任务可以形式化成一个有监督的学习问题:给出三元组形式的训练数据(C,Q,A),其中,C 表示段落,Q 表示与之相关的问题,A 表示对应的答案。我们的目标是学习一个预测器 f,能够将相关段落 C 与问题 Q作为输入,返回一个对应的答案 A 作为输出:
f : ( C , Q ) → A f:(C,Q)\rightarrow A f:(C,Q)A
一般地,我们将段落表示为 C={w1C,w2C,w3C,…,wmC} ,将问题表示为 Q={w1Q,w2Q,w3Q,…,wmQ} ,其中,m 和 n 分别为段落 C 的长度和问题 Q 的长度,所有 w 都属于预先定义的词典V。由于数据集的类型不同,问题和答案会被表示成不同的形式, 6 种类型中具有代表性的数据集:CBT、SciQ、SquAD、CoQA、NarrativeQA以及HotpotQA。具体地,可以将数据集定义为以下 6 种类型。

  • 完形填空:在这类数据集中,机器的目标是根据问题和当前段落,从预定义的选项集合ࣛ中选出正确答案 a,并填入问题的空白处;
  • 多项选择:在这类数据集中,机器的目标是根据问题和当前段落信息,从包含正确答案的 k(k 一般为 4)个设定的选项集合A={a1,…,ak}中选出正确答案 a,a 可以是一个单词、一个短语甚至一个句子;
  • 抽取式:也可称为跨距预测类型数据集(span prediction),在这类数据集中,机器的目标是根据问题在当前段落中找到正确的答案跨距,因此在这类数据集中,我们可以将答案表示为(astart,aend),其中,1≤astart≤aend≤m;
  • 会话:在这类数据集中,目标与机器进行交互式问答,因此,答案可以是文本自由形式(free-text form),即可以是跨距形式,可以是“不可回答”形式,也可以是“是/否”形式等等;
  • 生成式:在这类数据集中,问题的答案都是人工编辑生成的(human manual generated),不一定会以片段的形式出现在段落原文中,机器的目标是阅读给出段落的摘要甚至全文,之后根据自身的理解来生成问题的答案;
  • 多跳推理:在这类数据集中,问题的答案无法从单一段落或文档中直接获取,而是需要结合多个段落进行链式推理才能得到答案。因此,机器的目标是在充分理解问题的基础上从若干文档或段落中进行多步推理,最终返回正确答案。
2、评价指标

机器阅读理解中对于模型的评价指标主要由数据集的类型决定。

  • 对于完形填空多项选择类型的任务,由于答案都是来源于已经给定的选项集合,因此使用Accuracy 这一指标最能直接反映模型的性能,即,在问题数据中模型给出的正确答案数 n 占总问题 m 的百分比:
    A c c u r a c y = n m Accuracy=\frac{n}{m} Accuracy=mn

  • 对于抽取式多跳推理类型的任务,需要对模型预测的答案字符串和真实答案进行比对,因此一般使用 Rajpurkar 等人提出的 **Exact Match(EM)**和 F1 值,以及两者结合得到最终的联合 EM 和 F1 值(joint EM,F1) 。

    • EM 是指数据集中模型预测的答案与标准答案相同的百分比;

    • F1 值是指数据集中模型预测的答案和标准答案之间的平均单词的覆盖率,P 代表准确率(precision),R 代表召回率(recall);

    • (joint EM,F1):
      F 1 = 2 × P × R ( P + R ) F1=\frac{2\times P\times R}{(P+R)} F1=(P+R)2×P×R

  • 对于会话类型的任务,由于其答案是文本自由形式,因此并没有一种通用的评价指标,该类任务的评价指标主要由数据集本身决定。

  • 对于生成式类型的任务,由于答案是人工编辑生成的,而机器的目标是使生成的答案最大限度地拟合人工生成的答案,因此该类任务一般使用机器翻译任务中常用的 BLEU-4和 Rouge-L两种指标。

    • BLEU 的本质是依靠计算共现词频率来判断机器生成答案和人工编辑答案的相似或接近程度,在这里,BLEU-4 指的是采用四元精度(4-gram precision)对原始的 BLEU 算法进行改进后的版本(N=4),其中,BP 是惩罚因子:
      P n = ∑ C ∈ { C a n d i d a t e s } ∑ n − g r a m ∈ C C o u n t c l i p ( n − g r a m ) ∑ C ~ ∈ { C a n d i d a t e s } ∑ n − g r a m ′ ′ ∈ C ~ C o u n t c l i p ( n − g r a m ′ ′ ) P_n=\frac{\sum\limits_{C\in \{Candidates\}}\sum\limits_{n-gram\in C}Count_{clip}(n-gram)}{\sum\limits_{\tilde{C}\in \{Candidates\}}\sum\limits_{n-gram''\in \tilde{C}}Count_{clip}(n-gram'')} Pn=C~{ Candidates}ngramC~Countclip(ngram)C{ Candidates}

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值