「知識星球」這幾年人臉都有哪些有意思的新資料集被整理出來?

AIBigbull2050發表於2020-03-13
2020-03-01 13:10:48

機器閱讀理解,筆者認為他是NLP中最有意思的任務了。機器閱讀一份文件之後,可以“理解”其中的內容,並可以回答關於這份文件的問題。聽上去,有一種很強的“人工智慧”的Feel。

這篇文章介紹機器閱讀理解(Machine Reading Comprehension),包括MRC的概況、做法以及主要模型。

作者&編輯 | 小Dream哥

目標

目前來講,還沒有一種NLP技術,能夠端到端的實現對文字的理解。通常是轉化位不同的NLP任務,來實現對文字不同層面的“理解”,例如如下的任務:

  1. 詞性識別
  2. 命名實體識別
  3. 句法依存
  4. 句法依存

MRC也是一種理解文字的任務,它的大體模式是: 機器閱讀文件,並回答相關的問題

這跟我們做英語的閱讀理解題目是非常的相似,閱讀一篇英文章之後,基於此,做後面的幾道選擇題或者填空題。

MRC發展概況

在MRC的早期主要是一些基於規則和機器學習方法的MRC系統:

  1. 1997,QUALM system
  2. 1999. Reading Comprehension dataset by Hirschman et al
  3. 1999 Deep Read System (rule-based BOW model)
  4. 2000 QUARC system (rule-based)
  5. 2013-2015 MCTest(and 4 on1) and ProcessBank(Y/N) dataset
  6. 2014 Statistical Model
  7. Machine learning Models(map the question to formal queries)

上述基於規則的系統,通常能夠獲得30-40%的準確率,機器學習模型取得了一些進展,但也有一些問題,例如:

  1. 嚴重依賴一些基於語法和語言學的工具
  2. 資料集太小
  3. 基於現有的語言學工具,很難特徵構建有效的特徵

隨著深度學習時代的到來,這種情況得到了很大的改上,出現瞭如下的模型是資料集:

  1. 2015. The Attentive Reader(Hermann et al). Achieved 63% accuracy
  2. 2015 CNN and Daily Mail
  3. 2016 Children Book Test
  4. 2016 The Stanford Question Answer Dataset (SQUAD 1)
  5. 2017 Match-LSTM,BiDAF,TrivalQA,R-net,RACE
  6. 2018. QANet, NarrativeQA ,BiDAF+self-attention+ELMO,SQuAD 2.0, The Standford Attentive Reader,BERT, HotPotQA

我們現在來正式的定義一下基於神經網路的MRC:

給定一個訓練資料集{P,Q,A},目標是學習一個函式f:

f(p,q)-> a

其中,P是文件集,Q是問題集,A是答案集。

根據Answer的型別,我們可以把目前的MRC系統分為以下4類:

  1. 完形填空型別(cloze)
  2. 多項選擇(Multiple Choice)
  3. Span Prdiction
  4. Free-From answer

The Standford Attentive Reader

如下圖所示,展示了Stanford Attentive Reader模型結構圖

「NLP」詳聊NLP中的閱讀理解(MRC)

這裡的SAR主要用來解決的是span prediction的MRC問題。設給定一篇文章p,長度位l1;同時給定一個問題q,長度位l2;目的是預測一個span(start,end),start和end是P上詞位置,並且這個span是這個問題的答案。

模型將這個任務轉化為序列上的二分類問題,即對於文章中的每個詞,都預測這個詞分別是start和end的得分,最後用這個分數來預測span。

1)question部分的編碼

主要是對question進行編碼,先經過embedding層,而後用BiLSTM進行序列建模,最終每個詞的表徵為:

「NLP」詳聊NLP中的閱讀理解(MRC)

然後,接一個帶權重的softmax,得到一個編碼向量q,如下的公式所示:

「NLP」詳聊NLP中的閱讀理解(MRC)

2)Passage編碼部分

Passage的編碼也是先經過embedding,再透過BiLSTM進行序列建模,最終每個詞的表徵為:

「NLP」詳聊NLP中的閱讀理解(MRC)

需要注意的是,輸入BiLSTM的emdedding向量是由4部分concate而成的:

  1. Glove生成的embedding
  2. embedding對齊特徵,透過與q的embedding做attention而得到
  3. 詞性特徵
  4. 實體型別特徵

3)prediction部分

簡單來說就n個二分類,根據q和p分別預測每個詞是start及end的機率:

「NLP」詳聊NLP中的閱讀理解(MRC)

4)損失函式

訓練過程中採用的損失函式如下:

「NLP」詳聊NLP中的閱讀理解(MRC)

這個模型還可以轉化為上述的cloze,multiple-choice等型別的MRC任務,做一些簡單的調整即可。


我們前面還介紹過,如何基於BERT來做MRC的任務,感興趣的讀者可以看看:

「NLP」如何利用BERT來做基於閱讀理解的資訊抽取

基於MRC可以完成知識抽取、QA等重要的NLP任務,讀者務必熟悉。





來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2679772/,如需轉載,請註明出處,否則將追究法律責任。

相關文章