杜睿山,張軼楠,田 楓,王 梅,李婷玉,張 蕾,程有為,趙崇志
(1.東北石油大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,黑龍江 大慶 163318;2.中國(guó)石油天然氣股份有限公司 冀東油田分公司,河北 唐山 063004)
肝病有多種,常見(jiàn)的肝病有病毒性肝炎、酒精性肝炎、非酒精性脂肪性肝病、原發(fā)性肝癌等,其中病毒性肝炎最常見(jiàn)的是乙肝。乙肝病毒傳染性極強(qiáng),遍布全球,其中母乳傳播比較明顯[1]。雖然中國(guó)現(xiàn)在脫掉了乙肝大國(guó)的帽子,乙肝治療技術(shù)和藥物研發(fā)也在不斷改進(jìn),2019年國(guó)內(nèi)乙型肝炎發(fā)病率仍達(dá)71.77/10萬(wàn)人,死亡率達(dá)0.032/10萬(wàn)人。脂肪肝這一疾病患者人數(shù)也在不斷攀增,因此對(duì)于健康人和肝病患者來(lái)說(shuō),及早熟悉肝病知識(shí)、匹配疾病與自身癥狀關(guān)系是非常重要的。
在肝病診斷時(shí),通常需要醫(yī)生與患者一對(duì)一診療和儀器檢查的配合。如果在問(wèn)醫(yī)之前患者就可以了解自己大概病癥,能夠快速地告知醫(yī)生自己的身體狀況,這無(wú)疑可以減少醫(yī)生的工作量。并且醫(yī)生少數(shù)情況下也會(huì)受到主觀因素的影響導(dǎo)致診斷不準(zhǔn)確,很多患者也因相關(guān)肝病知識(shí)的匱乏導(dǎo)致就醫(yī)不及時(shí),病情惡化。目前越來(lái)越多的在線醫(yī)療問(wèn)答小程序出現(xiàn),如“阿里醫(yī)生在線咨詢”、“平安好醫(yī)生”、“39健康網(wǎng)”等,患者可以及時(shí)在線咨詢相關(guān)疾病信息,方便快捷,但是這種問(wèn)答系統(tǒng)需要大量醫(yī)生入駐小程序并上線才能響應(yīng)患者的問(wèn)題。針對(duì)以上問(wèn)題,文中開(kāi)發(fā)了基于知識(shí)圖譜的肝病智能問(wèn)答系統(tǒng),基于垂直類醫(yī)療網(wǎng)站,囊括肝病絕大多數(shù)數(shù)據(jù),為病患提供肝病自助查詢服務(wù)。該問(wèn)答系統(tǒng)及時(shí)解決患者問(wèn)題,不用再等待,實(shí)現(xiàn)了醫(yī)療行業(yè)的智能化。
問(wèn)答系統(tǒng)概念提出的時(shí)間并不長(zhǎng),但發(fā)展迅速,已經(jīng)形成了一些相對(duì)完整的體系。國(guó)內(nèi)復(fù)旦大學(xué)開(kāi)發(fā)的原型系統(tǒng)(FDUQA)已經(jīng)具有初步效果,同時(shí)哈爾濱工業(yè)大學(xué)(金山客服)和中國(guó)科學(xué)院計(jì)算技術(shù)研究所也正在進(jìn)行這一領(lǐng)域的研究。國(guó)外發(fā)展比較成熟,全球第一個(gè)基于互聯(lián)網(wǎng)的問(wèn)答系統(tǒng),即START系統(tǒng),使用知識(shí)倉(cāng)庫(kù)+信息搜索混合模型,知識(shí)庫(kù)包括“START+KB”、“Internet+Public+Library”[2]。而華盛頓大學(xué)開(kāi)發(fā)的第一個(gè)自動(dòng)問(wèn)答系統(tǒng)——MULDER系統(tǒng)更進(jìn)一步,它沒(méi)有知識(shí)庫(kù),而是充分獲取互聯(lián)網(wǎng)的數(shù)據(jù)進(jìn)行分析并給出一組候選答案。每個(gè)候選答案都會(huì)被賦予一個(gè)置信度,可以被用戶當(dāng)作參考的條件[3]。
國(guó)內(nèi)的智能問(wèn)答技術(shù)發(fā)展較晚,這是由于中文的語(yǔ)法和語(yǔ)義十分復(fù)雜,現(xiàn)在是以人工模板和智能檢索技術(shù)為主,典型代表有華為小E、小米小愛(ài)等。國(guó)際上目前的主要智能問(wèn)答技術(shù)為計(jì)算機(jī)檢索、知識(shí)網(wǎng)絡(luò)、深度學(xué)習(xí)這三大技術(shù),蘋(píng)果的Siri、微軟的Cortana和谷歌的GoogleNow均十分具有代表性。與此同時(shí),知識(shí)圖譜的快速發(fā)展,為智能問(wèn)答系統(tǒng)的實(shí)現(xiàn)提供了優(yōu)質(zhì)的知識(shí)來(lái)源,大大加速了問(wèn)答系統(tǒng)在醫(yī)療領(lǐng)域的發(fā)展[4]。這項(xiàng)技術(shù)可以使專業(yè)人員更好地幫助用戶去學(xué)習(xí)、沉浸使用真實(shí)世界中各類實(shí)體概念之間的聯(lián)系。
知識(shí)圖譜(knowledge map)又稱科學(xué)知識(shí)圖譜,它在2012年由Google最先提出,并發(fā)表了基于Freebase[5]知識(shí)庫(kù)和維基百科的大規(guī)模知識(shí)圖,為世界以及領(lǐng)域知識(shí)的構(gòu)建提供了一個(gè)可借鑒的手段[6]。知識(shí)圖譜的結(jié)構(gòu)與圖是一樣的,都是由節(jié)點(diǎn)和邊組成的,圖中的節(jié)點(diǎn)對(duì)應(yīng)知識(shí)圖譜中的實(shí)體,邊表示實(shí)體與實(shí)體之間的關(guān)系[7]。
知識(shí)庫(kù)則比知識(shí)圖譜容納更多的知識(shí)信息,知識(shí)庫(kù)中的知識(shí)有很多種不同的形式,例如本體知識(shí)、關(guān)聯(lián)性知識(shí)、規(guī)則庫(kù)、案例知識(shí)。知識(shí)庫(kù)問(wèn)答(knowledge base question answer)任務(wù)是指利用知識(shí)庫(kù)中的一個(gè)或多個(gè)知識(shí)三元組〈Sub,Re,Obj〉來(lái)回答自然語(yǔ)言問(wèn)題。比如提出一個(gè)自然語(yǔ)言問(wèn)題“Where is Beijing?”可以運(yùn)用
相比兩者的概念,知識(shí)圖譜更加側(cè)重于關(guān)聯(lián)性關(guān)系的構(gòu)建和可視化,可借助知識(shí)推理(如規(guī)則等)快速進(jìn)行知識(shí)挖掘和推理獲取新知識(shí),發(fā)現(xiàn)實(shí)體或概念之間的新關(guān)聯(lián)。因此,文中基于知識(shí)圖譜進(jìn)行肝病問(wèn)答系統(tǒng)開(kāi)發(fā),這對(duì)于解決國(guó)內(nèi)優(yōu)質(zhì)醫(yī)療資源供給不足和醫(yī)療服務(wù)需求持續(xù)增加的矛盾將產(chǎn)生重要的作用[8]。
智能問(wèn)答系統(tǒng)開(kāi)發(fā)中所需的語(yǔ)義分析技術(shù),通過(guò)使用不同的方法,了解和學(xué)習(xí)一段文字所表示的語(yǔ)義內(nèi)容,對(duì)語(yǔ)言的各種理解可以被歸類為語(yǔ)義分析。一段文字一般由單詞、句子和段落組成,根據(jù)語(yǔ)言單元理解對(duì)象,語(yǔ)義分析可以分為詞匯級(jí)語(yǔ)義分析、句子級(jí)語(yǔ)義分析和章級(jí)語(yǔ)義分析[9-11]。
語(yǔ)義分析是編譯過(guò)程中不可或缺的邏輯階段,它對(duì)源程序上下文的相關(guān)性進(jìn)行分析檢查,保證代碼結(jié)構(gòu)必須正確。語(yǔ)義分析階段就是檢查源程序有無(wú)語(yǔ)義錯(cuò)誤,為代碼生成階段收集信息。
本系統(tǒng)主要運(yùn)用句子級(jí)語(yǔ)義分析,主要包括淺層語(yǔ)義分析和深層語(yǔ)義分析。
2.1.1 淺層語(yǔ)義分析
淺層語(yǔ)義分析,又被稱作語(yǔ)義單元表示(semantic unit representation)。這一現(xiàn)象將深層語(yǔ)義分析簡(jiǎn)單化,在文章中明示與文字研究相關(guān)的語(yǔ)義單元。比如施事者、受事者、時(shí)間和地點(diǎn)狀語(yǔ)等[12]。目前NLP技術(shù)和人工智能技術(shù)的成熟,可以令淺層語(yǔ)義分析真正在實(shí)踐中發(fā)揮作用,同時(shí)對(duì)于智能問(wèn)答、智能翻譯等功能系統(tǒng)產(chǎn)生巨大幫助。
2.1.2 深層語(yǔ)義分析
深層語(yǔ)義分析,又可直接稱作語(yǔ)義分析(semantic parsing)。它會(huì)將問(wèn)句翻譯為一種特定形式化體現(xiàn)出來(lái),不再以謂詞為中心。其在中英文轉(zhuǎn)換中經(jīng)常使用,由于漢語(yǔ)和英語(yǔ)的外層構(gòu)造之間聯(lián)系密切,對(duì)應(yīng)關(guān)系復(fù)雜,如果想要發(fā)現(xiàn)其中的規(guī)律是十分困難的,在進(jìn)行研究和使用過(guò)程中必須發(fā)現(xiàn)兩類不同語(yǔ)言之間共有的更深一層關(guān)系,即深層語(yǔ)義結(jié)構(gòu)。
本系統(tǒng)通過(guò)語(yǔ)義分析有監(jiān)督學(xué)習(xí)。也就是說(shuō),通過(guò)現(xiàn)有的訓(xùn)練樣本(即已經(jīng)知道的數(shù)據(jù)和對(duì)應(yīng)的輸出)進(jìn)行訓(xùn)練,獲得最好的模型(該模型屬于特定函數(shù)的集合,最優(yōu)模型表示在特定的評(píng)價(jià)準(zhǔn)則中是最好的)。然后利用該模型將所有輸出進(jìn)行相應(yīng)的映射,得到結(jié)果輸出,通過(guò)對(duì)該結(jié)果進(jìn)行簡(jiǎn)單的判斷來(lái)實(shí)現(xiàn)分類目的,同時(shí)也學(xué)習(xí)到了對(duì)未知數(shù)據(jù)進(jìn)行分類的能力。描述了知識(shí)圖譜對(duì)于用戶提出的問(wèn)句文本進(jìn)行語(yǔ)義理解過(guò)程,如圖1所示。
圖1 知識(shí)圖譜文本語(yǔ)義理解
智能問(wèn)答系統(tǒng)在用戶輸入問(wèn)題后,將問(wèn)題分為兩類,求知性問(wèn)題和求證性問(wèn)題。求知性提問(wèn)就是在知識(shí)圖譜中為用戶獲得他們的未知知識(shí),填充用戶問(wèn)題,比如“什么是乙肝”;求證性提問(wèn)則是在用戶對(duì)一個(gè)專業(yè)性問(wèn)題模棱兩可時(shí),向智能問(wèn)答系統(tǒng)尋求幫助。進(jìn)行提問(wèn)之前用戶已經(jīng)了解關(guān)于問(wèn)題的部分信息,主要目的是通過(guò)該系統(tǒng)對(duì)不完整知識(shí)或模糊信息進(jìn)行彌補(bǔ)、證明或肯定,比如“長(zhǎng)期大量酗酒、過(guò)度暴飲暴食是脂肪肝的病因嗎”。
從問(wèn)句的形式上來(lái)說(shuō),分為疑問(wèn)句、反問(wèn)句、設(shè)問(wèn)句和是非問(wèn)句、特指問(wèn)句[13-14];從問(wèn)題目的上分為查找數(shù)據(jù)、驗(yàn)證事實(shí)、收集信息等;從性質(zhì)上分為封閉型和開(kāi)放型問(wèn)句;按照問(wèn)題復(fù)雜程度分為七大類別:語(yǔ)境性問(wèn)題、是非問(wèn)題、推理性問(wèn)題、選擇問(wèn)題、特指性問(wèn)題、專家性問(wèn)題、概括性問(wèn)題。測(cè)試結(jié)果問(wèn)句如表1所示。
對(duì)于專家性問(wèn)題,目前分類不是很明確。因?yàn)樵擃悊?wèn)題應(yīng)該既包括推理性問(wèn)題,也會(huì)含有概括性問(wèn)題,特指性也較強(qiáng)。問(wèn)句進(jìn)行分類之后,對(duì)各個(gè)類型布置特定的答案抽取規(guī)則,能夠更加快速地在該階段利用規(guī)則來(lái)獲得問(wèn)題最終的結(jié)果。現(xiàn)在市面上大多智能問(wèn)答系統(tǒng)都是已經(jīng)提前將問(wèn)題歸好類,但是分類方法還不是很科學(xué),不確定因素太多,并且太繁雜,不能從根本上滿足用戶的需求。
表1 測(cè)試問(wèn)句結(jié)果
因此本系統(tǒng)通過(guò)構(gòu)建Aho-Corasick字符串匹配算法(AC算法)匹配問(wèn)句中的領(lǐng)域詞(醫(yī)學(xué)本身就是一個(gè)封閉領(lǐng)域[15]),同時(shí)收集問(wèn)句中提到的實(shí)體類型,確認(rèn)其中是否包含該實(shí)體類型中的特定特征詞,從而判斷問(wèn)句類型屬于哪一種。AC算法主要是解決多字符串匹配問(wèn)題,采用多模式串建立一個(gè)樹(shù)形有限狀態(tài)機(jī),即先以多模式串(短字符串)為基礎(chǔ)創(chuàng)建自動(dòng)機(jī)[16]。以主串(長(zhǎng)字符串)作為該自動(dòng)機(jī)的輸入,也是就把長(zhǎng)字符串在狀態(tài)機(jī)里面跑一遍,使?fàn)顟B(tài)機(jī)進(jìn)行各種狀態(tài)之間的轉(zhuǎn)換,當(dāng)?shù)阶詣?dòng)機(jī)達(dá)某些特定的狀態(tài)時(shí),用狀態(tài)表示字符是否匹配,即某些字符串是否匹配成功。
問(wèn)答系統(tǒng)中,除了語(yǔ)義分析和問(wèn)題分類十分重要外,不可或缺的還有問(wèn)句相似度的計(jì)算。系統(tǒng)需要對(duì)用戶提出的問(wèn)題進(jìn)行解析,并進(jìn)行問(wèn)句相似度計(jì)算,得出每個(gè)相似問(wèn)句的最終答案。
本系統(tǒng)采用新的問(wèn)句相似度計(jì)算方法,主要包括詞形相似度、問(wèn)句長(zhǎng)度相似度、詞序相似度和距離相似度等[17]。詞形相似度計(jì)算方法主要是計(jì)算兩個(gè)問(wèn)句等詞的數(shù)量,利用公式計(jì)算,兩個(gè)相同的疑問(wèn)句中同一詞的數(shù)量越多,兩個(gè)疑問(wèn)句就越相似。在分析問(wèn)句的語(yǔ)義時(shí),僅僅關(guān)注其中的詞語(yǔ)是遠(yuǎn)不夠的,還需要考慮詞語(yǔ)間的結(jié)構(gòu)[18]。因此,在詞性相似度計(jì)算方法的基礎(chǔ)上,引入了句法特征,從全新的角度考慮對(duì)應(yīng)句法成分間的詞語(yǔ)相似度,進(jìn)而衡量句子間的相似度。詞性相似度計(jì)算如公式(1)所示:
(1)
其中,q1和q2分別表示兩個(gè)問(wèn)句,Len()表示問(wèn)句的長(zhǎng)度,SameWc()表示兩個(gè)問(wèn)句中相同詞的個(gè)數(shù)。
若問(wèn)句的長(zhǎng)度相似,足以反映兩個(gè)問(wèn)句形態(tài)之間的相似性,兩個(gè)問(wèn)句的長(zhǎng)度相似的話,兩個(gè)疑問(wèn)句相似可能性很高。問(wèn)句長(zhǎng)度相似度計(jì)算如公式(2):
(2)
其中,q1和q2分別表示兩個(gè)問(wèn)句,Len()表示問(wèn)句的長(zhǎng)度。
關(guān)鍵詞匯的順序也可以反映出兩個(gè)問(wèn)句的相似度,因?yàn)閮蓚€(gè)問(wèn)句中如果相似或者相同意思的詞匯在同一位置上,足可以證明問(wèn)句較為相似。在一個(gè)詞匯或者短語(yǔ)整體被大幅移動(dòng)時(shí),使用詞序相似度判斷可以快速準(zhǔn)確地?cái)喽ㄊ欠衽c原來(lái)問(wèn)句相似。
編輯距離是計(jì)算將一個(gè)句子換成另一個(gè)句子時(shí)所需的最少操作數(shù),其中句子以文字為最小單元。編輯工作是指插入、刪除、替換,但是以字為單位的編輯操作代價(jià)太大,便用詞匯代替一個(gè)字的單詞,詞匯作為最基本的編輯單元參與計(jì)算,對(duì)于不同的編輯操作賦予不同的權(quán)重以代表相應(yīng)的重要程度。
本系統(tǒng)是基于知識(shí)圖譜的智能問(wèn)答,使用Python編程語(yǔ)言基于Github開(kāi)源智能問(wèn)答系統(tǒng)代碼進(jìn)行開(kāi)發(fā)。需要實(shí)現(xiàn)計(jì)算機(jī)與用戶快速對(duì)話的功能,可以在醫(yī)療領(lǐng)域肝臟疾病方面為用戶解惑,通過(guò)后臺(tái)數(shù)據(jù)庫(kù)智能分析給出準(zhǔn)確答案,減輕醫(yī)生負(fù)擔(dān)。系統(tǒng)整體操作簡(jiǎn)單,適合不同年齡的用戶使用。問(wèn)答系統(tǒng)的開(kāi)發(fā)分為問(wèn)句分類、問(wèn)句解析、查詢結(jié)果三個(gè)功能模塊。系統(tǒng)框架如圖2所示。
圖2 系統(tǒng)框架
問(wèn)句分類實(shí)現(xiàn)步驟如下:定義問(wèn)題分類,在類中定義關(guān)鍵詞、詞典、領(lǐng)域樹(shù)、問(wèn)句疑問(wèn)詞等成員變量。特征詞除了七類實(shí)體關(guān)鍵詞以外,還包括了由這些實(shí)體詞構(gòu)成的領(lǐng)域詞匯、否定詞匯。問(wèn)句疑問(wèn)詞包括用戶較常用的疾病屬性詞匯,構(gòu)建領(lǐng)域樹(shù)和詞典均為調(diào)用函數(shù)實(shí)現(xiàn),構(gòu)建領(lǐng)域樹(shù)函數(shù)是通過(guò)Ahocorasick庫(kù)實(shí)現(xiàn)。
Ahocorasick是一種字符串匹配算法,由兩種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn):Trie和Aho-Corasick(AC)自動(dòng)機(jī)。Trie是一個(gè)字符串索引的詞典,檢索相關(guān)項(xiàng)時(shí)時(shí)間和字符串長(zhǎng)度成正比。AC自動(dòng)機(jī)能夠在一次運(yùn)行中找到給定集合所有字符串。AC算法其實(shí)就是在Trie樹(shù)上實(shí)現(xiàn)KMP,可以完成多模式串的匹配。
Sharmila Parmanand用六句話(六個(gè)話題)闡述了本場(chǎng)辯論的總話題(實(shí)行幫助婦女在立法機(jī)構(gòu)保持一定席位的特殊政策)擬解決的問(wèn)題,即婦女在當(dāng)?shù)鼗驀?guó)家層面的政治機(jī)構(gòu)中仍然沒(méi)有足夠的代表的問(wèn)題。
通過(guò)問(wèn)句類型_屬性函數(shù),根據(jù)七類實(shí)體構(gòu)造詞典,即關(guān)鍵詞+關(guān)鍵詞類型。利用函數(shù)進(jìn)行對(duì)用戶問(wèn)句的檢查,看其中是否有關(guān)于該系統(tǒng)包含實(shí)體類型的領(lǐng)域詞匯,若檢測(cè)到便進(jìn)行問(wèn)句過(guò)濾。
問(wèn)句過(guò)濾則是通過(guò)Ahocorasick庫(kù)中特有的iter()函數(shù)來(lái)匹配領(lǐng)域詞,過(guò)濾具有相同字符的領(lǐng)域詞,選取字符串最長(zhǎng)的領(lǐng)域詞并返回為用戶問(wèn)句中的領(lǐng)域詞和詞匯對(duì)應(yīng)的實(shí)體類型。
獲得問(wèn)句領(lǐng)域詞和相關(guān)領(lǐng)域后,與問(wèn)句相關(guān)的實(shí)體類型整合,調(diào)用相關(guān)函數(shù)判斷問(wèn)句類型。比如用戶問(wèn)題是疾病類型,那么返回關(guān)于該疾病的詳細(xì)信息;如果類型是藥物,那么返回該藥品的一切詳細(xì)信息。將所有結(jié)果合并整理,返回字典放置。
問(wèn)句解析則是將問(wèn)句分類結(jié)果傳入主函數(shù)后,調(diào)用提取關(guān)鍵詞函數(shù),返回實(shí)體類型和領(lǐng)域詞形式的字典,然后將每一個(gè)問(wèn)題類型都轉(zhuǎn)換為Cyper語(yǔ)言,便于查詢。需要注意的是疾病的附加癥狀需要雙向查詢;用戶問(wèn)題可能是對(duì)于疾病節(jié)點(diǎn)的屬性提問(wèn),也可能查詢相連關(guān)系;食物包含用戶具體吃了什么和推薦吃什么;用戶提問(wèn)藥物相關(guān)問(wèn)題需要添加在售藥品和推薦藥品。
利用Neo4j圖數(shù)據(jù)庫(kù)進(jìn)行知識(shí)圖譜的可視化,將肝病信息爬取后以三元組的形式導(dǎo)入其中。Neo4j使用圖形清楚明了地展示出數(shù)據(jù)之間的關(guān)系,其基本單元是節(jié)點(diǎn)、關(guān)系與屬性。本系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)屬性關(guān)系信息表如表2、表3所示,實(shí)體關(guān)系知識(shí)圖譜可視化如圖3~圖5所示。
表2 實(shí)體類型信息
表3 屬性信息
圖3 疾病所需檢查關(guān)系
圖4 藥品所在企業(yè)關(guān)系
圖5 藥品在售藥品關(guān)系
智能問(wèn)答系統(tǒng)完全基于規(guī)則匹配實(shí)現(xiàn),匹配關(guān)鍵字用于對(duì)問(wèn)題進(jìn)行分類。對(duì)醫(yī)學(xué)領(lǐng)域知識(shí)采用窮舉的方式逐一進(jìn)行劃分,并使用Cypher的Match來(lái)查找Neo4j,根據(jù)返回的數(shù)據(jù)組裝問(wèn)題答案,最后返回結(jié)果。問(wèn)答框架則是通過(guò)三部分:?jiǎn)柧浞诸?、?wèn)句解析、查詢結(jié)果,調(diào)用大量函數(shù)實(shí)現(xiàn)的。Aho-Corasick字符串匹配算法負(fù)責(zé)構(gòu)建封閉領(lǐng)域詞,使得系統(tǒng)可以更加快速地剔除用戶問(wèn)句中重復(fù)的醫(yī)學(xué)知識(shí),保留最長(zhǎng)的領(lǐng)域詞后返回詞和詞對(duì)應(yīng)的實(shí)體類型。問(wèn)答框架如圖6所示。
圖6 基于知識(shí)圖譜的問(wèn)答框架
為了驗(yàn)證文中開(kāi)發(fā)的基于肝病知識(shí)圖譜的智能問(wèn)答系統(tǒng)的可行性與實(shí)用性,利用試用實(shí)驗(yàn)的方法,隨機(jī)抽取出50名用戶作為測(cè)試對(duì)象,用戶在系統(tǒng)中輸入自己對(duì)于肝病知識(shí)的問(wèn)題,再對(duì)用戶的疑惑是否得到解決進(jìn)行調(diào)查以判斷該系統(tǒng)的可行性與實(shí)用性。測(cè)試包含三類問(wèn)題:
(2)針對(duì)用戶提出的問(wèn)題知識(shí)是否包括在構(gòu)建的知識(shí)圖譜中,準(zhǔn)確度為96%;
(3)針對(duì)用戶提出的問(wèn)題能否被準(zhǔn)確解析并響應(yīng)答案,準(zhǔn)確度為76%。
通過(guò)測(cè)試結(jié)果,可以看出該系統(tǒng)具有一定的實(shí)際應(yīng)用價(jià)值,對(duì)其進(jìn)行一個(gè)初步評(píng)估,主要反映出以下兩類問(wèn)題:
(1)問(wèn)題分類的不全面,個(gè)別問(wèn)題類別系統(tǒng)無(wú)法識(shí)別,不能給出確切的答案;
(2)知識(shí)圖譜構(gòu)建不全面,超出肝病知識(shí)的實(shí)體無(wú)法進(jìn)行問(wèn)答。
本系統(tǒng)基于肝病專業(yè)醫(yī)療知識(shí)建立了肝病知識(shí)圖譜,并在該知識(shí)圖譜的基礎(chǔ)上,通過(guò)問(wèn)句分類、問(wèn)句解析、查詢結(jié)果三個(gè)步驟,調(diào)用大量函數(shù)構(gòu)建問(wèn)答框架。基于規(guī)則匹配的問(wèn)答系統(tǒng)沒(méi)有復(fù)雜的算法,一般采用模板匹配的方式尋找最優(yōu)答案,響應(yīng)結(jié)果依賴于判斷問(wèn)句類型是否準(zhǔn)確、知識(shí)庫(kù)覆蓋是否全面。用戶拋出一個(gè)知識(shí)圖譜中涵蓋的問(wèn)題,可以及時(shí)準(zhǔn)確地給出全面的答案。但是整個(gè)問(wèn)答系統(tǒng)的優(yōu)劣過(guò)度依賴于知識(shí)圖譜中知識(shí)的數(shù)量與質(zhì)量,本系統(tǒng)還存在一定缺陷,如知識(shí)圖譜覆蓋面較窄(數(shù)據(jù)提取和推理演繹較為困難)、問(wèn)句分類的算法不夠高效、在自然語(yǔ)言處理方面存在不足等,未來(lái)還需進(jìn)一步完善。