田峰文,張琳
(上海海事大學(xué)信息工程學(xué)院,上海201306)
一個(gè)集裝箱知識(shí)自動(dòng)問答系統(tǒng)的設(shè)計(jì)
田峰文,張琳
(上海海事大學(xué)信息工程學(xué)院,上海201306)
航運(yùn)領(lǐng)域的發(fā)展隨著中國自由貿(mào)易區(qū)的建立蓬勃發(fā)展,但到目前為止還沒有成型的關(guān)于航運(yùn)領(lǐng)域的自動(dòng)問答系統(tǒng),這就限制航運(yùn)領(lǐng)域發(fā)展的便利。在問答系統(tǒng)的研究和設(shè)計(jì)中發(fā)現(xiàn)集裝箱知識(shí)屬于專業(yè)領(lǐng)域范疇,而其他領(lǐng)域的知識(shí)庫不能直接被該領(lǐng)域的問答系統(tǒng)所引用,因此專門構(gòu)建一個(gè)關(guān)于集裝箱知識(shí)的FAQ庫。以FAQ庫為基礎(chǔ)構(gòu)建一個(gè)集裝箱知識(shí)的自動(dòng)問答系統(tǒng),在句子相似度計(jì)算模塊中采用反義詞信息判定的技術(shù)。通過實(shí)驗(yàn)對(duì)比發(fā)現(xiàn)反義詞判定能夠提高系統(tǒng)的準(zhǔn)確率。
自動(dòng)問答系統(tǒng);關(guān)鍵詞得分過濾;FAQ庫;相似度算法
大數(shù)據(jù)的興起,使得各行各業(yè)的數(shù)據(jù)呈現(xiàn)海量、雜亂、冗余式的增長。傳統(tǒng)的搜索引擎根據(jù)輸入的關(guān)鍵字(或者關(guān)鍵字的邏輯組合)來檢索航運(yùn)領(lǐng)域的知識(shí),這或許就能夠滿足用戶查找信息的需求,但是傳統(tǒng)的搜索引擎輸入的是關(guān)鍵字或詞這并不符合人們的語言習(xí)慣和邏輯習(xí)慣,返回的這些鏈接有的甚至是“死鏈接”,這就需要用戶花費(fèi)時(shí)間和精力在眾多的網(wǎng)頁中再做一個(gè)掃描過程,尋找真正需要的信息。盡管這些搜索引擎簡單、易用,但對(duì)于老年人或不便打字的場(chǎng)合這些系統(tǒng)的優(yōu)勢(shì)就顯得微不足道;此外關(guān)鍵字的漏寫就可能導(dǎo)致檢索千差萬別?;谝陨系脑蛉藗兙托枰粋€(gè)這樣的系統(tǒng)——可以接受用戶以自然語言提問,返回的是盡可能簡潔、準(zhǔn)確的答案。在該系統(tǒng)中用戶使用更便捷、更快速的自然語言將大大提高查找信息的準(zhǔn)確度和效率,從而提高人們信息處理的能力。
(1)國外研究現(xiàn)狀
國外對(duì)問答系統(tǒng)的研究起步比國內(nèi)起步早,同時(shí),英文自然語言處理相比中文語言處理更加容易。因此到目前,研究者已設(shè)計(jì)并實(shí)現(xiàn)了針對(duì)英文的問答系統(tǒng),例如START、ASKJeeves等。
AskJeeves是一種在線的問答系統(tǒng),它的提問方式是用戶以自然語言的方式進(jìn)行提問,它能回答有關(guān)地理、歷史、文化、娛樂及科技方面的簡單問題。該系統(tǒng)在回答問題時(shí),首先給出的是在知識(shí)庫中存在的答案,然后才是網(wǎng)站鏈接。AskJeeves返回的答案可能是包含網(wǎng)頁的URL,而不是用戶期望的答案本身,另外AskJeeves使用了預(yù)先編輯好的主謂關(guān)系對(duì),實(shí)際上是一個(gè)受限領(lǐng)域的問答系統(tǒng),因此它還不能打破傳統(tǒng)問答系統(tǒng)的劣勢(shì)也就不能算是真正意義上的問答系統(tǒng)。另外該系統(tǒng)目前支持十種語言,均為拉丁語系,但中文暫時(shí)不在這十種語言的范圍之內(nèi)。
(2)國內(nèi)研究現(xiàn)狀
與國外的研究相比,面向中文的問答系統(tǒng)不管是技術(shù)研究還是理論研究目前還是落后的。這主要是因?yàn)橹形恼Z言處理起來比英文困難,所以目前中文問答系統(tǒng)的準(zhǔn)確率也不盡人意。也正是如此,中文問答系統(tǒng)的研究往往具有更高的價(jià)值。目前在通用問答系統(tǒng)和領(lǐng)域問答系統(tǒng)范疇內(nèi)均沒有集裝箱領(lǐng)域的知識(shí),集裝箱領(lǐng)域問答系統(tǒng)的構(gòu)建對(duì)于國際貿(mào)易的發(fā)展是很重要的,它能夠節(jié)省貨物的運(yùn)輸時(shí)間和提高運(yùn)輸效率;它適合于各行各業(yè)人員的使用,對(duì)于沒有航運(yùn)背景的人而言使用該系統(tǒng)可以查詢到自己想要了解的內(nèi)容;它在航運(yùn)領(lǐng)域的發(fā)展和國際交流中發(fā)揮著重要作用。
本文通過系統(tǒng)分析的方法,設(shè)計(jì)了一種關(guān)于集裝箱知識(shí)的自動(dòng)問答系統(tǒng),主要包括“問題-答案”對(duì)知識(shí)庫的設(shè)計(jì)、預(yù)處理模塊、問句相似度計(jì)算。在實(shí)現(xiàn)該系統(tǒng)后用戶能夠快速得到問題的答案,這比從網(wǎng)絡(luò)中尋找信息節(jié)省了時(shí)間、提高了工作效率。
傳統(tǒng)問答系統(tǒng)主要包括以下幾個(gè)模塊:問句預(yù)處理、問句相似度計(jì)算和FAQ庫更新[9]。
2.1問句預(yù)處理
問句預(yù)處理中主要對(duì)句子進(jìn)行斷詞(中文分詞)、根據(jù)停用詞列表去停用詞、提取關(guān)鍵詞和進(jìn)行詞性標(biāo)注。
2.2句子相似度計(jì)算
在傳統(tǒng)的問答系統(tǒng)模型中采用的是基于向量空間模型的TF-IDF計(jì)算方法,該方法在基于統(tǒng)計(jì)的基礎(chǔ)上利用詞語在句子中出現(xiàn)的頻率進(jìn)行相似度計(jì)算。
該方法以關(guān)鍵詞的表面特征來衡量兩個(gè)句子的相似度,沒有對(duì)句子的內(nèi)容進(jìn)行深入理解,計(jì)算簡單易行,但也存在著缺點(diǎn):沒有考慮反義詞及否定詞的信息;沒有考慮詞序、詞距等因素對(duì)句子的影響。
2.3FAQ更新
為了保證FAQ庫的及時(shí)性和有效性,對(duì)于在常問問題集庫里沒有的問題和答案,要將用戶的問題和對(duì)應(yīng)的答案加入到FAQ庫中。
但是傳統(tǒng)的模型弱化了反義詞在句子中作用,也沒有深入分析詞形、句子長度、詞序等對(duì)句子相似度計(jì)算的影響。這就導(dǎo)致系統(tǒng)的準(zhǔn)確率達(dá)不到人們期望的水平。因此傳統(tǒng)的問答系統(tǒng)模型還有待于改進(jìn)。
改進(jìn)后的問答系統(tǒng)的流程圖如圖2所示。
3.1反義詞信息判定
目前不管是已有的或是已經(jīng)應(yīng)用到實(shí)際系統(tǒng)當(dāng)中的相似度算法所考慮的語義信息大部分都是詞語間的同義、近義詞的信息,僅僅考慮這兩者是不夠,因?yàn)槌诉@兩者之外還有反義詞。如果忽略反義詞的作用,那么在計(jì)算含有關(guān)鍵詞信息基本相同但一個(gè)句子含有否定或反義詞的句子時(shí),得到的結(jié)果與實(shí)際的情況有很大的差別。例如:句子一:我喜歡用這種大型的集裝箱;句子二:我不喜歡用大型的集裝箱。如果使用現(xiàn)有的算法,那么得出的結(jié)論是這兩個(gè)句子相似度接近0.85,但是實(shí)際情況與之相反。因此,根據(jù)這一情況本文將句子相似度計(jì)算進(jìn)行改進(jìn),以求達(dá)到更加精確的結(jié)果。
圖1 改進(jìn)后的問答系統(tǒng)流程圖
圖2 改進(jìn)后的問答系統(tǒng)流程圖
根據(jù)語言學(xué)的知識(shí),否定的否定表達(dá)的是一種肯定態(tài)度,因此我們可以將此方法用到算法中。在計(jì)算時(shí)首先觀察句子中是否含有否定詞以及反義詞,如果有那么判定否定詞及反義詞是否表達(dá)出了反義的信息;然后把去除否定詞及反義詞后剩余的句子按改進(jìn)后的算法進(jìn)行計(jì)算,求出相似度;最后將反義部分的結(jié)果與改進(jìn)后的句子相似度結(jié)果結(jié)合得出最終的句子相似度。假設(shè)句子S、T,其反義部分的判定結(jié)果是:neg(s,t),去除否定詞及反義詞后句子的相似度為S(s,t),那么兩個(gè)句子的相似度總結(jié)為:
其中neg(s,t)=1,表示句子中含有否定詞并且否定詞表達(dá)的是與要否定的句子相反的意思;
neg(s,t)=0,表示兩個(gè)句子要表達(dá)的是相同的意思。
3.2改進(jìn)后的句子相似度計(jì)算
在傳統(tǒng)的問答系統(tǒng)模型中采用的是基于向量空間模型的算法,該算法只考慮了關(guān)鍵詞的詞頻信息,忽略了關(guān)鍵詞的數(shù)量、問句長度、關(guān)鍵詞的順序和關(guān)鍵詞的距離對(duì)句子相似度的影響。本文綜合以上幾個(gè)方面并對(duì)距離相似度進(jìn)行改進(jìn):傳統(tǒng)的編輯距離算法對(duì)字符進(jìn)行插入、刪除和替換操作時(shí)只是對(duì)相鄰位置和計(jì)算點(diǎn)之前的字符進(jìn)行操作,但在漢語句子中對(duì)字符操作并不僅僅限于這兩者,此外還包括非相鄰字符的操作和計(jì)算點(diǎn)之后的操作。因此傳統(tǒng)的算法容易導(dǎo)致計(jì)算結(jié)果出現(xiàn)偏差,影響系統(tǒng)的準(zhǔn)確率。
圖3
(1)距離相似度。編輯距離(Levenshtein Distance)由Levenshtein于1966年中提出的,通過編輯距離計(jì)算源字符串S與目標(biāo)字符串T相似度。將字符串S變化到T所需要的最小編輯操作的數(shù)量記為ld。Levenshtein所提出的編輯操作是指對(duì)字符串的某一個(gè)位置的字符進(jìn)行刪除、插入、替換的操作。改進(jìn)后的計(jì)算方法為:
(1)Dij=Di-k-1,j-k-1+1當(dāng)Si-k…Si=tj…tj-k
(2)Dij=Di-k-1,j-k-1+1當(dāng)0≤k≤min(m,n)且Si-k…Si=tj…tj+k
假設(shè)Dij=D(s1…si,t1…tj)0≤i≤m,0≤j≤n,m,n分別表示源字符串S和目標(biāo)字符串T的長度,Dij表示從s1…si到t1…tj的編輯距離。經(jīng)過對(duì)交換操作的拓展得到(m+1)×(n+1)階矩陣Dij的計(jì)算公式:
根據(jù)上面的方法求出字符串的編輯距離(ld)后,結(jié)合最長公共字符串長度Lcs(s,t)記為Lcs,可以得到編輯距離的相似度計(jì)算公式:
(2)詞形相似度。詞形相似度是通過計(jì)算兩個(gè)問句相同詞或者同義詞的個(gè)數(shù)來計(jì)算相似度的。兩個(gè)問句的相同詞個(gè)數(shù)越多,那么相似度越大。
問句S是由若干詞組成的一個(gè)序列,S的長度Len(S)即是S中詞的個(gè)數(shù),SameW(S,T)是問句S和T中相同詞的個(gè)數(shù),若一個(gè)詞在句中出現(xiàn)多次只算一次,那么詞形相似度的計(jì)算公式為:
(3)問句長度相似度。問句長度相似性在一定程度上反映了問句形態(tài)上的相似性。若是兩個(gè)句子的長度相差越小,那么兩個(gè)句子的相似可能性越大。
對(duì)于問句S,T,Len(S),Len(T)分別表示句子的長度,也就是兩個(gè)句子中詞的個(gè)數(shù)。那么問句長度相似度計(jì)算公式為:
綜上所述:問句的相似度可有(1)、(2)、(3)式求得:
其中a,b,c,d是各個(gè)因素的權(quán)重因子,并且滿足a+b+c=1,在系統(tǒng)中各個(gè)部分的相似度在句子中所起的作用不同,因此權(quán)重的大小也不相同,本文的研究背景是改進(jìn)自動(dòng)問答系統(tǒng)算法,側(cè)重點(diǎn)是編輯距離和反義詞判定,在本文中令a=b=0.3,c=0.4,此外為了更好地將改進(jìn)算法融入到實(shí)際系統(tǒng)中,本系統(tǒng)可以對(duì)不同權(quán)重因子進(jìn)行調(diào)節(jié).
0≤Sim(S,T)≤1,0表示不相似,1表示完全相似。由所求的數(shù)值與事先設(shè)置的閾值比較,大于閾值時(shí)就認(rèn)為這兩個(gè)句子相似。Sim(S,T)越大則表明句子的相似性越大。
為了驗(yàn)證改進(jìn)的問答系統(tǒng)模型比傳統(tǒng)模型更高效和更實(shí)用,本文根據(jù)設(shè)計(jì)的基于常問問題集的自動(dòng)問答系統(tǒng)進(jìn)行測(cè)試。因?yàn)樵跐h語模型的問答系統(tǒng)中相似度領(lǐng)域迄今還沒有統(tǒng)一的、標(biāo)準(zhǔn)的測(cè)評(píng)語料庫供人們參考和比對(duì)。所以本實(shí)驗(yàn)的測(cè)試語料是取自中國航運(yùn)和連云港航運(yùn)網(wǎng)中用戶的提問和專家的答疑組成“問題-答案”對(duì)。測(cè)試數(shù)據(jù)從用戶提問的記錄中選取50個(gè)問題。為了更加客觀地衡量改進(jìn)后的結(jié)果,實(shí)驗(yàn)主要采用以下性能指標(biāo)來評(píng)價(jià)模型的性能:
圖4 融合多種因素的句子相似度
為了驗(yàn)證改進(jìn)后的效果,我們將和葉正、林鴻飛[9]設(shè)計(jì)的傳統(tǒng)問答系統(tǒng)模型進(jìn)行比較,實(shí)驗(yàn)結(jié)果如下表所示:
表1 改進(jìn)后的問答系統(tǒng)模型與傳統(tǒng)模型實(shí)驗(yàn)結(jié)果比較
下圖是兩種問答系統(tǒng)比較的直觀圖:
圖5 兩種模型的比較圖
通過實(shí)驗(yàn)我們可以發(fā)現(xiàn)改進(jìn)后的問答系統(tǒng)模型在上述三種評(píng)價(jià)指標(biāo)上都有較好地改善,能夠使集裝箱領(lǐng)域的問答系統(tǒng)提高查詢精度,但該系統(tǒng)也有不足之處:該系統(tǒng)只考慮了詞語間的同義、近義和上下文關(guān)系,但是沒發(fā)揮關(guān)鍵詞信息的作用。這就可能導(dǎo)致計(jì)算結(jié)果出現(xiàn)大的偏差。因此接下來的工作是將關(guān)鍵詞得分過濾作為一個(gè)影響句子相似度的因素加入到模型中,這樣能更好的符合漢語習(xí)慣,也能提高計(jì)算精度。
[1]HALLP A V,DOWLING GR.Approximate String Matching[J].ACM Computer Survey,1980,12(4):381~402
[2]章成志.基于多層特征的字符串相似度計(jì)算模型[J].情報(bào)學(xué)報(bào),2005,24(6):696~701
[3]WAGNER R A,F(xiàn)ISCH ER M J.The String-to-String Correction Problem[J].Journal of the ACM,1973,21(1):168~173
[4]趙作鵬,尹志民,王潛平等.一種改進(jìn)的編輯距離算法及其在數(shù)據(jù)處理中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用,2009,29(2):424-428
[5]余超,蔡?hào)|風(fēng),張桂平.詞匯語義相似度計(jì)算中相關(guān)技術(shù)的分析[J].沈陽工業(yè)學(xué)報(bào)
[6]張亮,馮沖.基于語句相似度計(jì)算的FAQ自動(dòng)回復(fù)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[M].小型微型計(jì)算機(jī)系統(tǒng),2006,27(4)
[7]龐劍鋒,卜東波,白碩.基于向量空間模型的文本自動(dòng)分類系統(tǒng)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2001,9(9):23-26
[8]魏韡,向陽,陳千.計(jì)算術(shù)語間語義相似度的混合方法[J].計(jì)算機(jī)應(yīng)用,2010,30(6):1668~1671
[9]葉正,林鴻飛.基于空間向量模型的FAQ庫問答系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)
Automatic Answering System;Antonyms Information Determination;Questions Processing;Similarity Algorithm
Design of Automatic Answering System for a Container Know ledge
TIAN Feng-wen,ZHANG Lin
(College of Information Engineering,ShanghaiMaritime University,Shanghai 201306)
The development of shipping industry with the establishment of the Chinese free trade area development,but so far there is nomolding automatic question answering system in the area of shipping,it limits the development of convenience in the shipping field.In the study and design of the system,finds that container knowledge is professional field.Bulids a FAQ librarywhich is about the knowledge of container.Uses antonyms information determination as a core technique in the question answering system,and construction a container of knowledge question answering system which based on the FAQ library.Through the comparison,the antonyms information can improve the accuracy of the system.
1007-1423(2015)16-0032-05
10.3969/j.issn.1007-1423.2015.16.008
田峰文(1987-),男,山東臨沂人,碩士研究生,研究方向?yàn)槟J阶R(shí)別與智能處理、智能機(jī)器人
張琳(1973-),女,上海人,博士副教授,研究方向?yàn)楦酆叫畔⒒夹g(shù)、智能處理、信息檢索
2015-04-15
2015-06-02