李海闊 白強 康蕓瑋
摘要:隨著電子書閱讀的增加,人們往往需要從大量文本中抽取部分有用信息。基于文本信息檢索問題,首先對文本進行預處理,通過連續空間詞向量模型生成了文本詞向量,并利用剪支卷積神經網絡建立了問句向量的生成模型,之后通過長短期記憶卷積神經網絡對問題完成分類,再利用文檔列表法讓計算機通過排序學習對剩下的數據進行訓練打分。最后通過不斷訓練調整得到訓練結果最好的參數,將該參數下的打分函數投入到測試數據計算結果,并通過閾值計算和歸一化處理最終得到所有測試數據的標簽輸出,最終答案檢索的排名第一的準確率為65%以上,排名第二的答案準確率達到80%以上,一定程度上能夠達到輔助閱讀的作用。
關鍵詞:神經網絡;排序學習;文本檢索;閾值
引言
日常生活中人們要閱讀大量的txt文本,其內容可能是小說、教程、文集、詞典等。很多情況下我們只是需要從文本中查找某一些片段來解決我們的問題。比如,通過查找法律文獻中的一些段落來解決我們的法律疑惑,這時并不需要精讀整個法律文獻。因此我們希望智能閱讀技術能夠在這方面提供一些幫助。為此需將自然語言類的文本材料和相關問題轉化成計算機可識別語言,再通過對問題的分類和分析,實現計算機對自然語言問題[1-2]的讀取和理解,然后建立可靠模型對相關文本材料進行智能檢索[3-4],最終穩定地實現計算機對正確答案的準確定位,以滿足用戶的實際需求。
1 詞向量與問句向量
在進行所有操作前,首先對所有文本內容尤其是問題進行分詞、去停頓詞處理以及詞性標注等預處理工作。
由于計算機不能直接識別自然語言,因此將文本內容轉化成計算機可識別語言是必要的也是關鍵的一步。詞向量技術就是一種將單詞表征成為多維空間向量的方法,本文所采用的詞向量生成方法主要是由Mikolov等人提出的連續空間詞向量技術[5],該模型有效的避免了向量稀疏性和高維性等問題,具體方法是,首先隨機初始化訓練樣本中出現過單詞的向量,其次從訓練樣本中的第一個單詞開始,用訓練單詞的上下文單詞的向量更新訓練單詞的向量。
由于需要對文本進行檢索,因而對于問句也需要生成對應的向量。相比于圖像和語音識別領域,在自然語言處理中卷積神經網絡不需要表征那么復雜的信息,語句用淺層網絡表示即可。采用的問句向量生成模型對傳統卷積神經網絡進行了剪支處理,只保留了輸入層、卷積層、采樣層和輸出層四層卷積神經網絡[6]。問句向量生成模型的訓練目標下所示:
式中:為由卷積神經網絡生成的問句向量;為與向量屬于同一類的抽樣向量; 為不屬于向量所屬類的抽樣向量。
問句向量由采樣層經過全連接神經網絡轉換得到,采樣層變換到傳輸層的函數[]。
式中:表示輸出向量;表示采樣層向量;表示加權變換時的權值信息。
2 答案檢索
2.1 排序學習
進行答案檢索前,采用的是一種基于長短期記憶卷積神經網絡(LSTM-MFCNN)的方法[7]對問題進行聚類,以減少候選答案的選擇空間。排序學習[8]是指在排序生成和排序整合中用于構建排序模型的機器學習方法,旨在使用機器學習的方法,根據有標簽的數據解決排序問題。
對此針對性地采用了文檔列表方法進行排序。將每個查詢對應的搜索結果列表作為一個訓練樣例,通過優化最優評分函數F,對應新的查詢,評分F對每個文檔打分,然后根據得分由高到低排序,產生最終的結果,對于訓練集中的數據,通過排序學習對每個問題所對應的不同文檔中的各個段落不斷進行打分,通過不斷調整參數最終得到各段落的打分結果與段落0、1標簽匹配程度最高的評分函數F,用于測試階段對測試數據的打分排序操作。
2.2 參數訓練
通過排序學習對文檔進行評分之后,需要評定問題的答案是否位于該行,因而需要確定評分的閾值以完成對文檔行的標記,即評分大于等于閾值,標記為1;評分小于閾值,標記為0。閾值的計算公式如下:
式中:為i個問題對應的評分閾值,為第i個問題最高分,為i個問題最低分,為權重且。
顯然對于不同的問題,閾值選取并不相同,但要求使得整體的準確率較高,即:
因而需要對進行確定。評估指標F1為:
式中:為預測標簽為的材料數,為真實標簽為1的材料數。
3 結果展示
本文數據源于2018年第六屆泰迪杯數據挖掘競賽官網。
3.1 參數訓練結果
對文本進行處理后,通過排序學習對問題進行檢索,進而可對應生成各個passage的評分,同時還必須對對應passage進行標記,對于上優化模型,通過訓練集中的3萬條問題,通過排序學習生成評分,進而導入到優化模型,訓練得到L值與F1的關系如下圖。
顯然根據圖像,當L位于0.5-0.6之間時評價指標F1能夠達到最大,具體計算求得L=0.55,F1max=0.54。
3.2 結果分析
針對問題的文檔進行評分,顯然按照評分進行排序,評分越高,則其為正確答案概率就越高,則理應作為最佳推薦結果,但實際上在排序中發現,當某些文檔評分最高時,其卻往往不對應為正確答案,進而討論排名處于前三的為正確答案的比率,如下圖所示。
排名前三的累積答案準確率如下圖。
顯然,由圖可知排名為第一的對應答案準確率為65%以上,在排名前二答案中答案準確率超過80%,對于問題基本能夠滿足要求。
4 結語
結合數據,確定得分結果與標簽最佳匹配狀態下的最優參數,從而得到所有測試數據的標簽輸出。結果表明:得分最高的答案是正確解的比例達到 56.3%;得分前三包含正確解的概率達到83.8%,得分前五包含正確解的概率達到 92.9%。最終得到訓練集的F1值為 0.54。對于文本存在多選答案的情況,能夠起到較好的閱讀輔助作用。
參考文獻:
[1] 高明霞,劉椿年. 基于約束的自然語言問題到OWL的語義映射方法研究[J]. 電子學報,2007,35(8):1598-1602.
[2] 張琪玉. 關于自然語言檢索問題[J]. 圖書館論壇,2004,24(6):211-213.
[3] 郭慶琳,樊孝忠. 自然語言理解與智能檢索[J]. 信息與控制,2004,33(1):120-123.
[4] 晏創業,張玉峰. 智能檢索中的網絡數據挖掘技術探索[J]. 中國圖書館學報,2002,28(3):49-51.
[5] 胡學鋼,董學春,謝飛. 基于詞向量空間模型的中文文本分類方法[J]. 合肥工業大學學報(自然科學版),2007,30(10):1261-1264.
[6] 邢超. 智能問答系統的設計與實現[D]. 北京交通大學,2015:6-28.
[7] 謝逸,饒文碧,段鵬飛,等. 基于CNN和LSTM混合模型的中文詞性標注[J].武漢大學學報(理學版),2017,63(3):246-250.
[8] 李超,柴玉梅,南曉斐,等. 基于深度學習的問題分類方法研究[J]. 計算機科 ,2016,43(12):115-119.
作者簡介:
李海闊,男,1997,四川南充人,主要從事應用數學研究,15328079311,LHKfromswpu@163.com