康 準,王德軍
(中南民族大學 計算機學院,湖北 武漢 430074)
基于知識圖譜[1]提供的語義層面上的支持,問答系統作為下一代搜索引擎,支持用戶通過自然語言查詢的方式,獲得得到所需的答案[2],并通過知識的鏈接發掘更多知識。
問答系統支持的最重要的一類問題是事實類問題,事實類問題中最為基礎的稱為基礎事實類問題[3],它是針對事物屬性或聯系的提問,不需要進行復雜的邏輯推理。
國內在這方面也有了一定的研究[4-6],張克亮[5]等人設計并實現的航空領域問答系統,根據航空領域的問題構建大量的本體三元組,并在航空領域數據集上提高了問答算法的準確性和召回率,杜澤宇[6]基于電商領域實體的特殊性并結合依賴縮減算法實現了電商領域的問答系統。目前基礎教育方面還缺少一套基于知識圖譜的不僅可以解答學生問題,還可以更好連接和發散知識。國家的基礎教育,決定民族的興衰,經濟的強弱。然而,我國基礎教育存在著某些缺失和偏差現象,造成后續教育的被動和困難,直接影響并制約建設事業的有序進程,這是我們必須面對和思考的問題。主要問題表現在:1. 由于國家教育資源分配的不一致,導致偏遠地區的學生缺少教師資源和獲取知識的途徑;2. 應試教育使得學生對學習新知識產生抗拒心理,教育不應止步于學校,也不應只針對考試。通過構建基礎教育學科領域的知識圖譜問答,在教師資源匱乏的地區,學生可以可以實時的獲取知識。同學可以根據自己的喜好或困惑自主地獲取知識,而不再是被動的被灌輸知識。本文專注于生物學科基礎教育領域,針對生物學科實體特殊性提出一種結合文檔遷移距離(Word Mover Distance,WMD)[7]和邏輯回歸模型的生物學科領域實體鏈接算法。在問句理解上,以往問答系統主要分為三種,(1)通過基于模板匹配的方式,該類方式準確率高,但是覆蓋率低,需要大量的人工操作;(2)基于句法樹的語義提取,對于口語化的問題解析能力不強;(3)基于短文本相似度的語義提取,會丟失語義網本身的鏈接特征;本文采用基于短文本相似度的語義提取,通過構建標注問答庫,將問句語義理解問題簡化,并結合深度學習模型進行問句語義匹配。
生物學科領域知識問答系統(Question Answering System Base on Knowledge Graph In Biology Domain,B-KBQA)是針對中文生物學科基礎知識庫領域知識的問答系統,重點解決將如何理解中文問句,并轉換為Cyhper查詢語句從知識圖譜中獲取相關知識,最終完成問答。系統整體系統框架如圖1所示。(1)自然語言輸入:輸入生物學科基礎知識相關問題,例如“肝臟的分泌液是什么?”。

圖1 整體系統架構圖Fig.1 Overall system architecture diagram
(2)中文分詞:使用開源分詞工具包 Hanlp,結合生物領域詞典進行分詞處理。
(3)實體識別:得到分詞結果后,首先在三元組檢索庫中檢索得到相關的候選實體,本文借鑒WMD的思想,結合詞性標注和依存句法分析[8],抽取文本特征,再通過邏輯回歸模型進行候選實體與問題中實體的實體鏈接。
(4)語義相似度計算:檢索標注問題庫得到語義相關的候選問句,再通過深度學習模型計算輸入問句與候選問句的語義相似度,得到語義匹配的候選問句,獲取其標注的意圖信息。
(5)三元組構造:三元組是自然語言問句轉換為Cypher查詢問句的中間狀態,表示問句的基本語義,由三部分構成:主語、謂語、賓語。其中主語和賓語是從問句中提取出的實體,謂語是問句語義對應的知識圖譜中的關系或者多條關系組成的路徑。構造的三元組中主語和賓語其中之一會缺失,缺失元組即需要進行查詢獲得的結果,例如 Q1“肝臟的分泌液是什么?”和 Q2“膽汁是什么器官的分泌液?”,Q1的三元組表示為(s:肝臟,p:分泌液,o:None),Q2的三元組表示為(s:None,p:分泌液,o:膽汁)。
(6)Cypher構造:主要完成構造 Cypher的工作,通過謂語確定Cypher模板結合抽取的三元組得到最終的Cypher查詢語句。
Q1生成的Cypher語句為:
MATCH
(node_a {name:” 肝臟”})
-IOLOGY_SECRETORY_FLUID]->
(node_b)
RETURN node_b.name as name
Q2生成的Cypher語句為:
MATCH
(node_a {name:”%s”})
<-[r:BIOLOGY_SECRETORY_FLUID]-
(node_b)
RETURN node_b.name as name
(7)Neo4j服務:將Cypher語句用于查詢,獲得最終的結果。
傳統的實體識別包括人名,地名,機構名等命名實體識別,主流的算法是基于條件隨機場的命名實體算法或者基于隱馬科夫模型的命名實體識別[9]。而生物學科領域的實體不同于傳統的命名實體識別,主要以短語出現。例如“伴x染色體的顯性遺傳病”、“生態系統的信息傳遞”、“神經細胞”等,沒有類似于人名、地名和機構名構成單詞的特征,基于條件隨機場算法的識別效果差。同時同一實體可能有多種不同的表現形式,如:實體“能量傳遞效率”可表示為“能量傳輸的效率”,所以識別算法必須具備一定的魯棒性。針對生物學科領域實體的上述特點,通過改進文檔遷移距離算法抽取文本特征,結合邏輯回歸模型進行實體鏈接。
文檔遷移距離算法通過計算文檔A遷移到文檔B的距離衡量文檔A與文檔B的相似度。算法流程如下:
(1)假定已有詞向量矩陣 X ∈ Rd×n,包含n個單詞。第 ith單詞為 xi∈Rd,表示ith單詞在d維向量空間的向量表示。首先將文檔D中停用詞去除,并表示為詞袋模型 D ∈Rm,其中單詞i在文檔中出現ci次,如(1)式所示:

通過計算兩個文檔中單詞遷移距離,構建文檔遷移距離矩陣 C ∈ Rm×n,從文檔 Da中選取單詞i,從文檔 Db中選取單詞 j,單詞i與單詞 j的距離公式。

(2)得到文檔 Da與文檔 Db中單詞的遷移距離矩陣和文檔 Da與文檔 Db的詞袋模型,計算 Da與Db的相似度轉換為將 Da中所有單詞移動到 Db的最小轉移費用問題,矩陣 T ∈ Rn×n,其中 Ti,j≥0 ,表示文檔 Da中單詞i有多少轉移到文檔 Db中的單詞j,得到公式(3):

去除限制條件得到縮減文檔遷移距離算法(Relaxed Word Mover Distance,R-WMD)[7],得到公式(4):

本文對R-WMD算法進行如下改進:
(1)R-WMD算法認為句子中單詞對句子語義的貢獻是一致的,但實驗發現不同詞性和不同句法成分的單詞對句子語義的貢獻不同[8],所以通過對文檔D進行詞性標注和依存句法分析得到單詞的詞性和所屬句法成分,記 ith單詞 Di的句法成分得分為 ri,詞性得分為 si,得到公式(5):

(2)R-WMD算法僅考慮了單詞i與單詞 j的歐式距離,通過增加的單詞i與單詞 j的余弦距離,向量在方向和位置上描述分別描述實體與問句的語義特征。
傳統的語義理解方式包含三類:基于模式的語義理解[12],基于關鍵字的語義理解[13]和基于同義詞的語義理解[14]。基于模式的語義理解需要進行大量的人工標注活動,基于關鍵字或同義詞的缺陷僅通過單詞或短語確定問句語義,并未真正理解語義。本文通過構建標注問答庫,將問句語義理解問題被轉化為問句與標注庫中問句相似度計算問題。
問句標注庫的數據來源包括三部分,1)爬取百度知道,作業幫,新浪愛問,搜狗問問中生物相關問題,整理得到20100道生物相關問題;2)從歷年生物中考和高考試題通過人工整理和改寫得到2000道基礎事實類問題;3)抽取知識圖譜三元組結合設計的模板生成30500道問題,共計52600個。采用人工標注的方式確定問句的意圖和涉及的實體,再從中抽取1000道用于驗證系統性能,其余題目通過將意圖相同的問題進行組合得到正例樣本,意圖不同問句進行組合得到負例,獲得語義相似度模型訓練集。
本文選用在 Quora[15]數據集上評測結果準確率高于0.87的三個深度學習模型。深度學習模型是一種端到端模型,即模型自動抽取有用的特征,從而減少人為抽取特征造成的繁雜和不完備性。三種模型分別采用不同的特征表示兩個問句的相似度特征,BiMPM模型[16],通過BiLSTM抽取句子特征P和Q,然后從PQ→和QP→兩個方向的抽取句子匹配特征,再將匹配特征進行拼接表示相似度特征。LSTM with concatenation模型和LSTM with distance and angle模型[17],通過LSTM抽取兩個句子特征P和Q,前者將P和Q進行拼接表示相似度特征,后者計算P和Q的歐氏距離和余弦距離表示相似度特征。
實驗從三個方面驗證系統在生物基礎知識領域的有效性,利用準確率(P)、召回率(R)、F值(F)作為衡量指標:
(1)命名實體識別;
Pe_num是準確識別的實體數目, E ntry_Num是系統識別的實體數目,AucNum是驗證集的問題數目。

(2)問句匹配;
Pq_num是準確匹配的問題,Q uery_Num是系統匹配到的問題數目,AucNum是驗證集的問題數目。

(3)系統評測:
Ps_num是準確答案的數目,ResNum是系統給出的答案數目,AucNum是驗證集的問題數目。

實驗使用的生物學科基礎知識庫共 324194個三元組。測試集1000道,且通過人工標注確定了問題意圖和涉及的實體。
實驗對比R-WMD和改進的R-WMD抽取文本特征結合邏輯回歸模型進行命名實體識別。后者比前者在準確率、召回率和F值上都有所提升,如表1所示。
在生物學科知識領域,由于實體的特殊性,問答系統需要解決最重要的問題及領域內的實體識別和實體鏈接問題,從表1中可以發現改進的R-WMD算法抽取的文本特征比R-WMD算法抽取的特征更適合該領域的命名實體識別工作。由此說明,根據問句中單詞詞性和句法成分確定單詞重要性的方式比使用單詞詞頻設置單詞重要性更能反映句子的語義。

表1 命名實體識別實驗結果Tab.1 Named entity recognition experimental results
問句匹配實驗結果如表2所示,三種模型的準確率均在0.63以上,召回率均在0.44以上,F值均在0.52以上。
通過不斷的擴充訓練數據集,問句匹配的各項評價指標還有很大的提升空間,B-KBQA系統對生物基礎知識領域的問題已經初步具備了語義理解能力。BiMPM模型在準確率、召回率和F值上優于其他兩個模型,說明 BiMPM 更適合該問題的求解,后續工作中會通過嘗試新模型和優化 BiMPM 模型進一步提升模型效果。

表2 問句匹配實驗結果Tab. 2 Experimental results of question matching
系統評測對比了由DBpedia團隊設計的開源問答系統TBSL[13],同時在B-KBQA框架基礎上,實現了基于關鍵字的生物學科領域知識問答系統(Question Answering System Base on Knowledge Database In Biology Domain With Keywords,B-KBQA-keywords)和基于同義詞的生物學科領域知識問答系統(Question Answering System Base on Knowledge Database In Biology Domain With Synonym,B-KBQA-synonym)。與B-KBQA的區別在于問句解析的方式不同,B-KBQA-keywords采用基于問句特征關鍵字的方式確定問句語義,B-KBQA-synonym在B-KBQA-keywords基礎上,通過同義詞擴展問句特征關鍵字,實驗結果如表3所示。

表3 系統評測實驗結果Tab 3 Experimental results of system evaluation
對比其他三個問答系統B-KBQA在準確率、召回率和F值上均得到最高分,說明基于標注問題庫和短文本相似度計算的系統框架對于生物學科知識領域的問答不僅可以回答更多問題,而且更為準確。現有實驗說明B-KBQA的整套框架可以在生物學科知識領域知識圖譜上提供面向基礎事實類問題的問答服務,且各模塊間相互獨立,有利于進一步優化系統整體性能。
本文結合改進R-WMD和邏輯回歸模型進行生物學科的實體識別和實體鏈接,并通過對比R-WMD算法,結果將單詞詞性及句法特征應用于 R-WMD可以有效提升實體識別及實體鏈接的準確率。最后對通過對比TBSL,B-KBQA-keywords和B-KBQA-synonym三個問答系統,實驗結果表明B-KBQA系統在問答準確率,召回率及F值上均優于其他系統,B-KBQA在生物學科知識問答領域具有一定的應用價值。然而本文也存在著不足,實體識別及實體鏈接的準確率直接影響最終問答的準確率,目前使用的方法在此方面還有很大的提升空間,未來工作中需要進一步研究。
[1] 劉嶠, 李楊, 段宏, 劉瑤, 秦志光. 知識圖譜構建技術綜述[J]. 計算機研究與發展, 2016, 53(3): 582-600.
[2] 常超. 基于網絡問答社區的專家排名算法分析[J]. 軟件,2015, 36(11): 120-122.
[3] 劉家瑋, 劉波, 沈岳. 知識圖譜在農業信息服務中的應用進展[J]. 軟件, 2015, 36(3): 26-30.
[4] 黎航宇. 命名實體識別中適應性特征的跨領域與跨風格特性研究[J]. 軟件, 2014, 35(10): 100-106.
[5] 張克亮, 李偉剛, 王慧蘭. 基于本體的航空領域問答系統[J]. 中文信息學報, 2015.
[6] 杜澤宇. 基于中文知識圖譜的電商領域問答算法設計與系統實現[D]. 華東師范大學, 2016.
[7] KUSNER M J, SUN Y, KOLKIN N I, et al. From word embeddings to document distances[J]. 2015: 957-966.
[8] CUI W, WANG H, WANG H, et al. KBQA: learning question answering over QA corpora and knowledge bases[J].Proceedings of the Vldb Endowment, 2017, 10(5): 565-576.
[9] OU S, ORASAN C, MEKHALDI D, et al. Automatic Question Pattern Generation for Ontology-based Question Answering[C]// International Florida Artificial Intelligence Research Society Conference, May 15-17, 2008, Coconut Grove,Florida, Usa. DBLP, 2008: 183-188.
[10] JIANG L, CHANG S, NIKHIL D. Semantic Question Matching with Deep Learning[EB/OL]. (2017-02-13) [2017-02-13]. https://engineering.quora.com/Semantic-Question-Matching-with-Deep-Learning.
[11] UNGER C, CIMIANO P. Pythia: Compositional Meaning Construction for Ontology-Based Question Answering on the Semantic Web[C]// International Conference on Natural Language Processing and Information Systems. Springer-Verlag, 2011: 153-160.
[12] UNGER C, BUHMANN L, LEHMANN J, et al. Templatebased question answering over RDF data[C] //Proceedings of the 21st International Conference on World Wide Web.Lyon, France: ACM, 2012: 639-648.
[13] UNGER C, LEHMANN J, NGONO A C N, et al. Templatebased question answering over RDF data[C]// International Conference on World Wide Web. 2012: 639-648.
[14] BOWMAN S R, ANGELI G, POTTS C, et al. A large annotated corpus for learning natural language inference[J].Computer Science, 2015.
[15] AHAEBRAHIMIAN A. Quora Question Answer Dataset[C]//International Conference on Text, Speech, and Dialogue.Springer, Cham, 2017: 66-73.
[16] WANG Z, WAEL H and RADU F. Bilateral Multi-Perspective Matching for Natural Language Sentences [EB/OL].(2017-02-13) [2017-02-14]. https://arxiv.org/pdf/1702.03814.pdf.
[17] KENTER T, BORISOV A, RIJKE M D. Siamese CBOW: Optimizing Word Embeddings for Sentence Representations[J]. 2016.