康 準(zhǔn),王德軍
(中南民族大學(xué) 計(jì)算機(jī)學(xué)院,湖北 武漢 430074)
基于知識圖譜[1]提供的語義層面上的支持,問答系統(tǒng)作為下一代搜索引擎,支持用戶通過自然語言查詢的方式,獲得得到所需的答案[2],并通過知識的鏈接發(fā)掘更多知識。
問答系統(tǒng)支持的最重要的一類問題是事實(shí)類問題,事實(shí)類問題中最為基礎(chǔ)的稱為基礎(chǔ)事實(shí)類問題[3],它是針對事物屬性或聯(lián)系的提問,不需要進(jìn)行復(fù)雜的邏輯推理。
國內(nèi)在這方面也有了一定的研究[4-6],張克亮[5]等人設(shè)計(jì)并實(shí)現(xiàn)的航空領(lǐng)域問答系統(tǒng),根據(jù)航空領(lǐng)域的問題構(gòu)建大量的本體三元組,并在航空領(lǐng)域數(shù)據(jù)集上提高了問答算法的準(zhǔn)確性和召回率,杜澤宇[6]基于電商領(lǐng)域?qū)嶓w的特殊性并結(jié)合依賴縮減算法實(shí)現(xiàn)了電商領(lǐng)域的問答系統(tǒng)。目前基礎(chǔ)教育方面還缺少一套基于知識圖譜的不僅可以解答學(xué)生問題,還可以更好連接和發(fā)散知識。國家的基礎(chǔ)教育,決定民族的興衰,經(jīng)濟(jì)的強(qiáng)弱。然而,我國基礎(chǔ)教育存在著某些缺失和偏差現(xiàn)象,造成后續(xù)教育的被動和困難,直接影響并制約建設(shè)事業(yè)的有序進(jìn)程,這是我們必須面對和思考的問題。主要問題表現(xiàn)在:1. 由于國家教育資源分配的不一致,導(dǎo)致偏遠(yuǎn)地區(qū)的學(xué)生缺少教師資源和獲取知識的途徑;2. 應(yīng)試教育使得學(xué)生對學(xué)習(xí)新知識產(chǎn)生抗拒心理,教育不應(yīng)止步于學(xué)校,也不應(yīng)只針對考試。通過構(gòu)建基礎(chǔ)教育學(xué)科領(lǐng)域的知識圖譜問答,在教師資源匱乏的地區(qū),學(xué)生可以可以實(shí)時(shí)的獲取知識。同學(xué)可以根據(jù)自己的喜好或困惑自主地獲取知識,而不再是被動的被灌輸知識。本文專注于生物學(xué)科基礎(chǔ)教育領(lǐng)域,針對生物學(xué)科實(shí)體特殊性提出一種結(jié)合文檔遷移距離(Word Mover Distance,WMD)[7]和邏輯回歸模型的生物學(xué)科領(lǐng)域?qū)嶓w鏈接算法。在問句理解上,以往問答系統(tǒng)主要分為三種,(1)通過基于模板匹配的方式,該類方式準(zhǔn)確率高,但是覆蓋率低,需要大量的人工操作;(2)基于句法樹的語義提取,對于口語化的問題解析能力不強(qiáng);(3)基于短文本相似度的語義提取,會丟失語義網(wǎng)本身的鏈接特征;本文采用基于短文本相似度的語義提取,通過構(gòu)建標(biāo)注問答庫,將問句語義理解問題簡化,并結(jié)合深度學(xué)習(xí)模型進(jìn)行問句語義匹配。
生物學(xué)科領(lǐng)域知識問答系統(tǒng)(Question Answering System Base on Knowledge Graph In Biology Domain,B-KBQA)是針對中文生物學(xué)科基礎(chǔ)知識庫領(lǐng)域知識的問答系統(tǒng),重點(diǎn)解決將如何理解中文問句,并轉(zhuǎn)換為Cyhper查詢語句從知識圖譜中獲取相關(guān)知識,最終完成問答。系統(tǒng)整體系統(tǒng)框架如圖1所示。(1)自然語言輸入:輸入生物學(xué)科基礎(chǔ)知識相關(guān)問題,例如“肝臟的分泌液是什么?”。
圖1 整體系統(tǒng)架構(gòu)圖Fig.1 Overall system architecture diagram
(2)中文分詞:使用開源分詞工具包 Hanlp,結(jié)合生物領(lǐng)域詞典進(jìn)行分詞處理。
(3)實(shí)體識別:得到分詞結(jié)果后,首先在三元組檢索庫中檢索得到相關(guān)的候選實(shí)體,本文借鑒WMD的思想,結(jié)合詞性標(biāo)注和依存句法分析[8],抽取文本特征,再通過邏輯回歸模型進(jìn)行候選實(shí)體與問題中實(shí)體的實(shí)體鏈接。
(4)語義相似度計(jì)算:檢索標(biāo)注問題庫得到語義相關(guān)的候選問句,再通過深度學(xué)習(xí)模型計(jì)算輸入問句與候選問句的語義相似度,得到語義匹配的候選問句,獲取其標(biāo)注的意圖信息。
(5)三元組構(gòu)造:三元組是自然語言問句轉(zhuǎn)換為Cypher查詢問句的中間狀態(tài),表示問句的基本語義,由三部分構(gòu)成:主語、謂語、賓語。其中主語和賓語是從問句中提取出的實(shí)體,謂語是問句語義對應(yīng)的知識圖譜中的關(guān)系或者多條關(guān)系組成的路徑。構(gòu)造的三元組中主語和賓語其中之一會缺失,缺失元組即需要進(jìn)行查詢獲得的結(jié)果,例如 Q1“肝臟的分泌液是什么?”和 Q2“膽汁是什么器官的分泌液?”,Q1的三元組表示為(s:肝臟,p:分泌液,o:None),Q2的三元組表示為(s:None,p:分泌液,o:膽汁)。
(6)Cypher構(gòu)造:主要完成構(gòu)造 Cypher的工作,通過謂語確定Cypher模板結(jié)合抽取的三元組得到最終的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服務(wù):將Cypher語句用于查詢,獲得最終的結(jié)果。
傳統(tǒng)的實(shí)體識別包括人名,地名,機(jī)構(gòu)名等命名實(shí)體識別,主流的算法是基于條件隨機(jī)場的命名實(shí)體算法或者基于隱馬科夫模型的命名實(shí)體識別[9]。而生物學(xué)科領(lǐng)域的實(shí)體不同于傳統(tǒng)的命名實(shí)體識別,主要以短語出現(xiàn)。例如“伴x染色體的顯性遺傳病”、“生態(tài)系統(tǒng)的信息傳遞”、“神經(jīng)細(xì)胞”等,沒有類似于人名、地名和機(jī)構(gòu)名構(gòu)成單詞的特征,基于條件隨機(jī)場算法的識別效果差。同時(shí)同一實(shí)體可能有多種不同的表現(xiàn)形式,如:實(shí)體“能量傳遞效率”可表示為“能量傳輸?shù)男省保宰R別算法必須具備一定的魯棒性。針對生物學(xué)科領(lǐng)域?qū)嶓w的上述特點(diǎn),通過改進(jìn)文檔遷移距離算法抽取文本特征,結(jié)合邏輯回歸模型進(jìn)行實(shí)體鏈接。
文檔遷移距離算法通過計(jì)算文檔A遷移到文檔B的距離衡量文檔A與文檔B的相似度。算法流程如下:
(1)假定已有詞向量矩陣 X ∈ Rd×n,包含n個(gè)單詞。第 ith單詞為 xi∈Rd,表示ith單詞在d維向量空間的向量表示。首先將文檔D中停用詞去除,并表示為詞袋模型 D ∈Rm,其中單詞i在文檔中出現(xiàn)ci次,如(1)式所示:
通過計(jì)算兩個(gè)文檔中單詞遷移距離,構(gòu)建文檔遷移距離矩陣 C ∈ Rm×n,從文檔 Da中選取單詞i,從文檔 Db中選取單詞 j,單詞i與單詞 j的距離公式。
(2)得到文檔 Da與文檔 Db中單詞的遷移距離矩陣和文檔 Da與文檔 Db的詞袋模型,計(jì)算 Da與Db的相似度轉(zhuǎn)換為將 Da中所有單詞移動到 Db的最小轉(zhuǎn)移費(fèi)用問題,矩陣 T ∈ Rn×n,其中 Ti,j≥0 ,表示文檔 Da中單詞i有多少轉(zhuǎn)移到文檔 Db中的單詞j,得到公式(3):
去除限制條件得到縮減文檔遷移距離算法(Relaxed Word Mover Distance,R-WMD)[7],得到公式(4):
本文對R-WMD算法進(jìn)行如下改進(jìn):
(1)R-WMD算法認(rèn)為句子中單詞對句子語義的貢獻(xiàn)是一致的,但實(shí)驗(yàn)發(fā)現(xiàn)不同詞性和不同句法成分的單詞對句子語義的貢獻(xiàn)不同[8],所以通過對文檔D進(jìn)行詞性標(biāo)注和依存句法分析得到單詞的詞性和所屬句法成分,記 ith單詞 Di的句法成分得分為 ri,詞性得分為 si,得到公式(5):
(2)R-WMD算法僅考慮了單詞i與單詞 j的歐式距離,通過增加的單詞i與單詞 j的余弦距離,向量在方向和位置上描述分別描述實(shí)體與問句的語義特征。
傳統(tǒng)的語義理解方式包含三類:基于模式的語義理解[12],基于關(guān)鍵字的語義理解[13]和基于同義詞的語義理解[14]?;谀J降恼Z義理解需要進(jìn)行大量的人工標(biāo)注活動,基于關(guān)鍵字或同義詞的缺陷僅通過單詞或短語確定問句語義,并未真正理解語義。本文通過構(gòu)建標(biāo)注問答庫,將問句語義理解問題被轉(zhuǎn)化為問句與標(biāo)注庫中問句相似度計(jì)算問題。
問句標(biāo)注庫的數(shù)據(jù)來源包括三部分,1)爬取百度知道,作業(yè)幫,新浪愛問,搜狗問問中生物相關(guān)問題,整理得到20100道生物相關(guān)問題;2)從歷年生物中考和高考試題通過人工整理和改寫得到2000道基礎(chǔ)事實(shí)類問題;3)抽取知識圖譜三元組結(jié)合設(shè)計(jì)的模板生成30500道問題,共計(jì)52600個(gè)。采用人工標(biāo)注的方式確定問句的意圖和涉及的實(shí)體,再從中抽取1000道用于驗(yàn)證系統(tǒng)性能,其余題目通過將意圖相同的問題進(jìn)行組合得到正例樣本,意圖不同問句進(jìn)行組合得到負(fù)例,獲得語義相似度模型訓(xùn)練集。
本文選用在 Quora[15]數(shù)據(jù)集上評測結(jié)果準(zhǔn)確率高于0.87的三個(gè)深度學(xué)習(xí)模型。深度學(xué)習(xí)模型是一種端到端模型,即模型自動抽取有用的特征,從而減少人為抽取特征造成的繁雜和不完備性。三種模型分別采用不同的特征表示兩個(gè)問句的相似度特征,BiMPM模型[16],通過BiLSTM抽取句子特征P和Q,然后從PQ→和QP→兩個(gè)方向的抽取句子匹配特征,再將匹配特征進(jìn)行拼接表示相似度特征。LSTM with concatenation模型和LSTM with distance and angle模型[17],通過LSTM抽取兩個(gè)句子特征P和Q,前者將P和Q進(jìn)行拼接表示相似度特征,后者計(jì)算P和Q的歐氏距離和余弦距離表示相似度特征。
實(shí)驗(yàn)從三個(gè)方面驗(yàn)證系統(tǒng)在生物基礎(chǔ)知識領(lǐng)域的有效性,利用準(zhǔn)確率(P)、召回率(R)、F值(F)作為衡量指標(biāo):
(1)命名實(shí)體識別;
Pe_num是準(zhǔn)確識別的實(shí)體數(shù)目, E ntry_Num是系統(tǒng)識別的實(shí)體數(shù)目,AucNum是驗(yàn)證集的問題數(shù)目。
(2)問句匹配;
Pq_num是準(zhǔn)確匹配的問題,Q uery_Num是系統(tǒng)匹配到的問題數(shù)目,AucNum是驗(yàn)證集的問題數(shù)目。
(3)系統(tǒng)評測:
Ps_num是準(zhǔn)確答案的數(shù)目,ResNum是系統(tǒng)給出的答案數(shù)目,AucNum是驗(yàn)證集的問題數(shù)目。
實(shí)驗(yàn)使用的生物學(xué)科基礎(chǔ)知識庫共 324194個(gè)三元組。測試集1000道,且通過人工標(biāo)注確定了問題意圖和涉及的實(shí)體。
實(shí)驗(yàn)對比R-WMD和改進(jìn)的R-WMD抽取文本特征結(jié)合邏輯回歸模型進(jìn)行命名實(shí)體識別。后者比前者在準(zhǔn)確率、召回率和F值上都有所提升,如表1所示。
在生物學(xué)科知識領(lǐng)域,由于實(shí)體的特殊性,問答系統(tǒng)需要解決最重要的問題及領(lǐng)域內(nèi)的實(shí)體識別和實(shí)體鏈接問題,從表1中可以發(fā)現(xiàn)改進(jìn)的R-WMD算法抽取的文本特征比R-WMD算法抽取的特征更適合該領(lǐng)域的命名實(shí)體識別工作。由此說明,根據(jù)問句中單詞詞性和句法成分確定單詞重要性的方式比使用單詞詞頻設(shè)置單詞重要性更能反映句子的語義。
表1 命名實(shí)體識別實(shí)驗(yàn)結(jié)果Tab.1 Named entity recognition experimental results
問句匹配實(shí)驗(yàn)結(jié)果如表2所示,三種模型的準(zhǔn)確率均在0.63以上,召回率均在0.44以上,F(xiàn)值均在0.52以上。
通過不斷的擴(kuò)充訓(xùn)練數(shù)據(jù)集,問句匹配的各項(xiàng)評價(jià)指標(biāo)還有很大的提升空間,B-KBQA系統(tǒng)對生物基礎(chǔ)知識領(lǐng)域的問題已經(jīng)初步具備了語義理解能力。BiMPM模型在準(zhǔn)確率、召回率和F值上優(yōu)于其他兩個(gè)模型,說明 BiMPM 更適合該問題的求解,后續(xù)工作中會通過嘗試新模型和優(yōu)化 BiMPM 模型進(jìn)一步提升模型效果。
表2 問句匹配實(shí)驗(yàn)結(jié)果Tab. 2 Experimental results of question matching
系統(tǒng)評測對比了由DBpedia團(tuán)隊(duì)設(shè)計(jì)的開源問答系統(tǒng)TBSL[13],同時(shí)在B-KBQA框架基礎(chǔ)上,實(shí)現(xiàn)了基于關(guān)鍵字的生物學(xué)科領(lǐng)域知識問答系統(tǒng)(Question Answering System Base on Knowledge Database In Biology Domain With Keywords,B-KBQA-keywords)和基于同義詞的生物學(xué)科領(lǐng)域知識問答系統(tǒng)(Question Answering System Base on Knowledge Database In Biology Domain With Synonym,B-KBQA-synonym)。與B-KBQA的區(qū)別在于問句解析的方式不同,B-KBQA-keywords采用基于問句特征關(guān)鍵字的方式確定問句語義,B-KBQA-synonym在B-KBQA-keywords基礎(chǔ)上,通過同義詞擴(kuò)展問句特征關(guān)鍵字,實(shí)驗(yàn)結(jié)果如表3所示。
表3 系統(tǒng)評測實(shí)驗(yàn)結(jié)果Tab 3 Experimental results of system evaluation
對比其他三個(gè)問答系統(tǒng)B-KBQA在準(zhǔn)確率、召回率和F值上均得到最高分,說明基于標(biāo)注問題庫和短文本相似度計(jì)算的系統(tǒng)框架對于生物學(xué)科知識領(lǐng)域的問答不僅可以回答更多問題,而且更為準(zhǔn)確?,F(xiàn)有實(shí)驗(yàn)說明B-KBQA的整套框架可以在生物學(xué)科知識領(lǐng)域知識圖譜上提供面向基礎(chǔ)事實(shí)類問題的問答服務(wù),且各模塊間相互獨(dú)立,有利于進(jìn)一步優(yōu)化系統(tǒng)整體性能。
本文結(jié)合改進(jìn)R-WMD和邏輯回歸模型進(jìn)行生物學(xué)科的實(shí)體識別和實(shí)體鏈接,并通過對比R-WMD算法,結(jié)果將單詞詞性及句法特征應(yīng)用于 R-WMD可以有效提升實(shí)體識別及實(shí)體鏈接的準(zhǔn)確率。最后對通過對比TBSL,B-KBQA-keywords和B-KBQA-synonym三個(gè)問答系統(tǒng),實(shí)驗(yàn)結(jié)果表明B-KBQA系統(tǒng)在問答準(zhǔn)確率,召回率及F值上均優(yōu)于其他系統(tǒng),B-KBQA在生物學(xué)科知識問答領(lǐng)域具有一定的應(yīng)用價(jià)值。然而本文也存在著不足,實(shí)體識別及實(shí)體鏈接的準(zhǔn)確率直接影響最終問答的準(zhǔn)確率,目前使用的方法在此方面還有很大的提升空間,未來工作中需要進(jìn)一步研究。
[1] 劉嶠, 李楊, 段宏, 劉瑤, 秦志光. 知識圖譜構(gòu)建技術(shù)綜述[J]. 計(jì)算機(jī)研究與發(fā)展, 2016, 53(3): 582-600.
[2] 常超. 基于網(wǎng)絡(luò)問答社區(qū)的專家排名算法分析[J]. 軟件,2015, 36(11): 120-122.
[3] 劉家瑋, 劉波, 沈岳. 知識圖譜在農(nóng)業(yè)信息服務(wù)中的應(yīng)用進(jìn)展[J]. 軟件, 2015, 36(3): 26-30.
[4] 黎航宇. 命名實(shí)體識別中適應(yīng)性特征的跨領(lǐng)域與跨風(fēng)格特性研究[J]. 軟件, 2014, 35(10): 100-106.
[5] 張克亮, 李偉剛, 王慧蘭. 基于本體的航空領(lǐng)域問答系統(tǒng)[J]. 中文信息學(xué)報(bào), 2015.
[6] 杜澤宇. 基于中文知識圖譜的電商領(lǐng)域問答算法設(shè)計(jì)與系統(tǒng)實(shí)現(xiàn)[D]. 華東師范大學(xué), 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.