论文浅尝 | 通过文本到文本神经问题生成的机器理解
論文筆記整理:程茜雅,東南大學碩士,研究方向:自然語言處理,知識圖譜。
?????
Citation: Yuan X, WangT, Gulcehre C, et al. Machine comprehension by text-to-text neural question generation[J]. arXiv preprint arXiv:1705.02012, 2017.
?
動機
1、在智能系統里提出合適的問題有利于信息獲取。
2、學會提出問題有利于提高回答問題的能力。
3、在大多數QA(Question Answering)數據集中回答問題屬于抽取式(extractive)任務,相比較而言,提出問題屬于生成式(abstractive)任務。
4、提出一個好的問題所包含的技能遠超于回答問題所需的技能。因為一個問題通常只有一個答案,但是針對一個答案可能有多個問題。因此提出一個高質量的問題較難。
5、QG(Question Generation)應用廣泛。譬如:為QA生成訓練數據,自動導師系統等。
基于上述動機,本文構建了一個用于QG的神經模型,并將其應用在包含QA的任務中。這是第一個針對QG的端到端、文本到文本的模型。
方法
本文使用了encoder-decoder框架,其中encoder負責處理答案和文本,decoder負責生成問題。最后使用強化學習訓練模型。
1、Encoder-Decoder框架
(1)??Encoder
輸入問題的答案和與問題有關的文本這兩段序列。獲取它們的word embeddings。給文本中每個word embedding增加一個二元特征來表示文本中的單詞是否屬于答案。使用雙向LSTM神經網絡對文本進行編碼,得到每個單詞的annotation向量(其實就是隱狀態),并最終得到文本的語境向量。另外,將文中屬于答案的單詞的annotation向量組合起來,并且和答案的wordembedding一一對應聯結,并輸入到一個雙向LSTM神經網絡中進行編碼,將每個方向的隱狀態聯結起來得到基于文本的答案編碼向量(extractive condition encoding)。將該extractive condition encoding和文本的語境向量相聯結,得到最終的語境向量,送入decoder中。
(2)??Decoder
基于encoder的文本和答案,生成問題。并使用了pointer-softmax formulation,選擇從原文本中copy或者自己生成。使用LSTM和attention機制生成問題。
2、政策梯度優化
(1)??動機
因為在訓練encoder-decoder模型的過程中通常會使用teacher forcing,該方法存在一個弊端,它會阻止模型犯錯,進而無法從錯誤中學習。所以本文使用強化學習來緩解這個問題。
(2)??Rewards
本文在強化學習過程中使用了兩種rewards,分別是QA的精確度結果R_qa和流暢性R_ppl。
QA:將模型生成的問題和原文本輸入到QA模型中(本文用的是MPCM模型),得到答案,將該答案的精確度作為 reward R_qa,對模型進行激勵。
流暢性(PPL):衡量生成問題的流暢性和語法正確性作為reward R_ppl,本文使用了perplexity。
最后分別對R_qa和R_ppl賦予權重,并相加得到總的reward。
(3)??Reinforce
使用REINFORCE算法最大化模型的預期reward。
實驗
1、數據集
本文使用的是SQuAD數據集。
2、Baseline
使用包含attention和pointer-softmax的Seq2Seq模型作為baseline模型。該模型除了在獲取基于文本的答案編碼向量(extractive condition encoding)的方法上與本文的模型不同之外,其余部分和本文的模型一樣,baseline模型將所有文本的annoation向量取平均值作為基于文本的答案編碼向量(extractive condition encoding)。
3、評測方法
本文只使用了自動評測的方法。評測指標分別是:NLL(negative log-likelihood)、BLEU、F1、QA(MPCM生成的問題精度)和PPL(perplexity)。
?? 評測結果如下圖所示:
4、結論
(1)??模型的BLEU值很低,這是因為針對一個文本和答案,可能有多個不同的問題。
(2) baseline 模型生成的問題流暢但比較模糊,本文的模型生成的問題更加具體,但是流暢性低,存在錯誤。
下圖是各個模型針對text生成的問題。
(3)本文作者最后提出未來將研究人工評測來確定rewards和人類判斷之間的關系,以此提升模型的效果。
思考與所得
依我之見,這篇文章有兩個亮點值得借鑒。
??? 1、對answer的編碼處理方法。一般對于answer就是將它輸入到一個RNN中,得到最后的隱狀態。這種方式有一種弊端,得到的答案語境向量是脫離原文本而存在的,與文本的關聯性較小。于是本文從輸入的原文中找到對應于答案的annotation向量,將其組合起來,并將其一一和答案的word embedding相聯結,輸入到LSTM中進行編碼,得到基于文本的答案向量。這樣子就增強了答案向量和文本的相關性。
??? 2、使用了政策梯度優化的強化學習方法訓練模型。由于一般在訓練過程中使用的teacher forcing無法讓模型犯錯,無法從錯誤中學習,所以本文用了強化學習的方法解決這個問題,其中針對本文的QG任務使用了兩個特定的rewards。
OpenKG
開放知識圖譜(簡稱 OpenKG)旨在促進中文知識圖譜數據的開放與互聯,促進知識圖譜和語義技術的普及和廣泛應用。
點擊閱讀原文,進入 OpenKG 博客。
總結
以上是生活随笔為你收集整理的论文浅尝 | 通过文本到文本神经问题生成的机器理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文小综 | Using Externa
- 下一篇: 论文浅尝 - AAAI2020 | 多通