《Generating Factoid QuestionsWith Recurrent Neural Networks:nThe 30M Factoid Question...》閱讀筆記
原文鏈接:Generating Factoid QuestionsWith Recurrent Neural Networks: The 30M Factoid Question-Answer Corpus
問題介紹:缺少大規模訓練數據是構建問答經常遇到的問題,人工標註數據的代價很大,當領域變化時可能又需要重新標註數據。為了解決這個問題,這篇文章提出了一種基於知識庫生成問題的方法,生成了一個30M的大規模問答系統訓練語料。
主要方法:
這篇文章提出了一種利用知識庫信息生成簡單問題的方法。作者借鑒了machine translation的方法,但是輸入的是知識庫的三元組,輸出的是問題。用SimpleQuestion作為訓練語料,但是SimpleQuestion中的entity和relation相對Freebase來說特別少,這樣就學不到有用的信息。為此,作者先用TransE模型學習知識庫的entity和relation的特徵向量,將學習到的特徵向量作為模型的輸入。下面是整個模型的流程圖:
encoder部分:
主要是將三元組(s, o ,r)映射到用TransE學習到的特徵向量:
為三元組的s,o和r。fact embedding向量為F =[
,
,
].
decoder部分:
decoder主要是一個GRU的RNN神經網路
初始化的由F通過一個前饋神經網路得到。比較重要的一部分在於,文中說考慮到在生成問題時,不同時刻三元組不同部分的重要性不一樣,在生成問題的開始時s和o比較重要,在這個過程中r一直都比較重要。為此,文中引入了attention機制:
實驗
數據集:SimpleQuestion, Freebase
論文中採用了兩種評估方式,自動評估(使用machine translation和image caption generation中的BLEU和METEOR)以及人工評估。最後選擇最好的模型生成了30M的一個大數據集。
推薦閱讀:
※RNN Tutorial(1)
※阿里知識圖譜首次曝光:每天千萬級攔截量,億級別全量智能審核
※通俗講解平方損失函數平方形式的數學解釋?
※智能時代的怪獸四:語言的運算(上)
※cs.CL weekly 2016.08.29-2016.09.02