当前位置:   article > 正文

【Day 1】机器阅读理解——机器阅读理解简介

机器阅读理解

引言

本系列文章会介绍机器阅读理解相关技术和模型。主要按照以下线路:

image-20211103080154867

机器阅读理解介绍

NLP四大基本任务:

  • 序列标注:分词、词性标注
  • 分类任务:文本分类、情感分析
  • 句子关系:问答系统、对话系统
  • 生成任务:机器翻译、文章摘要

阅读理解一般基于NLU(自然语言理解)和NLG(自然语言生成),是比较特殊的,无法简单的归类与上面某类。

阅读理解 指通过阅读从文本中抽取信息并理解意义的过程。

机器阅读理解(Machine Reading Comprehension,MRC) 是QA问题的子集,含有contexts,通过交互从文字中提取与构造文章语义。

机器阅读理解

给定上下文 C C C和问题 Q Q Q,需要模型给出关于问题 Q Q Q的正确答案 A A A,通过学习某个函数 F \mathcal{F} F,比如 A = F ( C , Q ) A=\mathcal{F}(C,Q) A=F(C,Q)

典型的应用场景有:搜索引擎、机器问答&智能客服等。

机器阅读理解也有四大任务:

  • 完形填空
  • 单项选择
  • 答案抽取
  • 自由回答

完形填空 从原文中除去若干单词或实体,需要模型填入正确的单词或实体。

单项选择 从给定的若干选择中选出正确答案。

答案抽取 回答限定是文章的一个子句,需要模在文章中标注正确答案的起始和终止位置。

片段抽取

给定包含 n n n个单词的上下文 C = { t 1 , t 2 , ⋯   , t n } C=\{t_1,t_2,\cdots,t_n\} C={t1,t2,,tn},和问题 Q Q Q,片段抽取(span extraction)需要从上下文 C C C中抽取连续的子序列 A = { t i , t i + 1 , ⋯   , t i + k } A=\{t_i,t_{i+1},\cdots,t_{i+k}\} A={ti,ti+1,,ti+k}作为问题 Q Q Q的答案,通过学习一个函数 F \mathcal{F} F,使 A = F ( C , Q ) A=\mathcal{F}(C,Q) A=F(C,Q)

自由回答 不限定模型生成答案的形式,允许模型自由生产数据(自己组织语言回答问题)。

下面列出各任务对应的数据集:

  • 完形填空:
    • CNN&Daily Mail
    • CBT
  • 单项选择:
    • MC Test
    • RACE
  • 答案抽取:
    • SQuAD
    • NewsQA
  • 自由回答:
    • MS MARCO
    • DuReader1

机器阅读理解模型架构

image-20211103230624502

总体架构如上。

Embedding

  • One-hot
  • Word2vec
  • Elmo
  • BERT

Feature Extraction

  • CNN
  • RNN
  • Transformer

Context-Query Interaction

  • 注意力机制

Answer Prediction

  • Word predictor
  • Option predictor
  • Span extractor
  • Answer generator

评估指标

Accuracy

准确率
Accuracy = n m \text{Accuracy} = \frac{n}{m} Accuracy=mn

F1

P = precision = T P T P + F P R = recall = T P T P + F N F1 = 2 × P × R P + R \text{P} = \text{precision} = \frac{TP}{TP +FP} \\ \text{R} = \text{recall} = \frac{TP}{TP +FN} \\ \text{F1} = \frac{2 \times P \times R}{P + R} P=precision=TP+FPTPR=recall=TP+FNTPF1=P+R2×P×R

Rouge-L

R l c s = L C S ( X , Y ) m P l c s = L C S ( X , Y ) n F l c s = ( 1 + β ) 2 R l c s P l c s R l c s + β 2 P l c s R_{lcs} = \frac{LCS(X,Y)}{m} \\ P_{lcs} = \frac{LCS(X,Y)}{n} \\ F_{lcs} = \frac{(1+\beta)^2R_{lcs} P_{lcs}}{R_{lcs} + \beta^2P_{lcs}} Rlcs=mLCS(X,Y)Plcs=nLCS(X,Y)Flcs=Rlcs+β2Plcs(1+β)2RlcsPlcs

其中 m m m指标准答案长度, n n n指模型答案长度。

NLP相关任务的基本流程

image-20211103233456885

文本特征工程一般应用在机器学习模型上,而深度学习模型一般不需要。

推荐阅读论文Neural Machine Reading Comprehension: Methods and Trends 2

Reference


  1. DuReader: a Chinese Machine Reading Comprehension Dataset from Real-world Applications ↩︎

  2. Neural Machine Reading Comprehension: Methods and Trends ↩︎

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/667280
推荐阅读
相关标签
  

闽ICP备14008679号