陸國(guó)泉+彭琳+龐雪
摘要:以《同義詞詞林》為基礎(chǔ),結(jié)合云南種子植物特有屬領(lǐng)域知識(shí)補(bǔ)充了《同義詞詞林》中該領(lǐng)域的詞語(yǔ),并提出了一種基于同義詞詞林的詞語(yǔ)相似度改進(jìn)算法。經(jīng)過(guò)測(cè)試對(duì)比,在植物檢索領(lǐng)域該計(jì)算方法比一般的基于同義詞詞林的詞語(yǔ)相似度算法更加準(zhǔn)確,而且召回率得到了明顯提升,更適用于云南種子植物特有屬領(lǐng)域信息的檢索。
關(guān)鍵詞:同義詞詞林;詞語(yǔ)相似度算法;云南;種子植物;特有屬
中圖分類號(hào):Q949;G354.4 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):0439-8114(2017)07-1356-03
DOI:10.14088/j.cnki.issn0439-8114.2017.07.040
Research on Algorithm for Calculating Word Similarity in the Field of Endemic Genera of Seed Plants in Yunnan
LU Guo-quan,PENG Lin,PANG Xue
(Key Laboratory of Agricultural Information Technology in Yunnan,Yunnan Agricultural University,Kunming 650201,China)
Abstract:An improved word similarity algorithm put forward based on cilin combined with the knowledge of the endemic genera of seed plants in Yunnan supplement the words about this field. Experiment results illustrate that this improved algorithm for calculating word similarity based on “cilin” is more precise than general algorithm for calculating word similarity based on “cilin” and recall has been significantly improved. Therefore,this improved algorithm is more suitable for the semantic retrieval system in the field of endemic genera of seed plants in Yunnan.
Key words:cilin;algorithm for calculating word similarity;Yunnan;seed plants;endemic genera
詞語(yǔ)語(yǔ)義相似度來(lái)源于計(jì)算機(jī)語(yǔ)言學(xué)等領(lǐng)域,它可以度量術(shù)語(yǔ)、詞匯、概念之間的相似程度,被看作概念在分類上的相似程度[1]。詞語(yǔ)語(yǔ)義相似度的計(jì)算在語(yǔ)義檢索、自動(dòng)問(wèn)答、文本聚類等應(yīng)用中起著重要作用[2-4]。傳統(tǒng)的檢索方式仍基于關(guān)鍵字匹配和倒排索引[5],幾乎沒(méi)有任何語(yǔ)義功能。通常,傳統(tǒng)檢索方式不能理解用戶的查詢意圖,一旦用戶輸入不準(zhǔn)確的查詢?cè)~就會(huì)得到許多不相關(guān)的結(jié)果。將詞語(yǔ)語(yǔ)義相似度計(jì)算引入檢索系統(tǒng)后,檢索系統(tǒng)便具備了語(yǔ)義功能,就算用戶輸入模糊的查詢?cè)~,檢索系統(tǒng)也能檢索出用戶所關(guān)心的信息。
目前,對(duì)于詞語(yǔ)語(yǔ)義相似度的計(jì)算方法主要集中在以下幾方面:①基于統(tǒng)計(jì)的方法,假設(shè)語(yǔ)義詞語(yǔ)相似的詞語(yǔ)之間具有相同的上下文關(guān)系,以上下文信息的概率分布作為依據(jù),利用詞語(yǔ)之間的相關(guān)性來(lái)計(jì)算詞語(yǔ)相似度[6];②基于本體的方法,依據(jù)領(lǐng)域內(nèi)專家建立的領(lǐng)域本體,利用該領(lǐng)域知識(shí)的語(yǔ)義樹(shù)來(lái)計(jì)算詞語(yǔ)間距離詞語(yǔ)的相似度[7];③基于語(yǔ)義詞典的方法,利用語(yǔ)言專家編撰好的語(yǔ)義詞典進(jìn)行語(yǔ)義相似度計(jì)算。
由于基于同義詞典的詞語(yǔ)相似度算法具有實(shí)現(xiàn)簡(jiǎn)單、高效、直觀、易于理解且不需要訓(xùn)練的特點(diǎn),因此基于同義詞詞典的詞語(yǔ)相似度算法在各個(gè)領(lǐng)域得到了廣泛的應(yīng)用[8]。但是目前還存在以下問(wèn)題:①詞典的詞條更新不及時(shí)。由于基于同義詞典的詞語(yǔ)相似度的計(jì)算依賴于語(yǔ)義詞典,而編撰詞典通常需要多名頂級(jí)語(yǔ)言專家共同完成,網(wǎng)絡(luò)時(shí)代的知識(shí)爆炸使得詞典滯后于新興詞語(yǔ)的出現(xiàn)。②領(lǐng)域內(nèi)的專業(yè)詞匯收錄不全。每個(gè)領(lǐng)域有不同的專業(yè)知識(shí)和詞語(yǔ),語(yǔ)言專家作為語(yǔ)言領(lǐng)域的專家,在編撰語(yǔ)義詞典的時(shí)候很難將所有專業(yè)領(lǐng)域內(nèi)的詞語(yǔ)囊括其中。
面向云南種子植物特有屬領(lǐng)域的語(yǔ)義檢索能最大限度地集成和利用各類云南種子植物特有屬相關(guān)信息資源,快速、完整、智能地提供各種信息服務(wù),這已成為研究和保護(hù)云南特有種子植物的新需求。目前,在這個(gè)領(lǐng)域沒(méi)有專業(yè)的語(yǔ)義詞典,并且沒(méi)有較好的詞語(yǔ)相似度算法,從而導(dǎo)致了云南種子植物特有屬領(lǐng)域語(yǔ)義檢索精度不高、擴(kuò)展性不強(qiáng)等問(wèn)題。
針對(duì)上述問(wèn)題,本研究協(xié)同植物學(xué)領(lǐng)域的研究人員完善了《同義詞詞林》并在此基礎(chǔ)上提出了一種改進(jìn)詞語(yǔ)相似度的算法,并對(duì)該算法進(jìn)行了試驗(yàn)。
1 材料與方法
1.1 同義詞詞林結(jié)構(gòu)
在國(guó)外通常采用WordNet作為語(yǔ)義詞典來(lái)計(jì)算詞語(yǔ)相似度,而在國(guó)內(nèi)由于中文本身的特點(diǎn)以及起步相對(duì)較晚,在這方面的研究較少。本研究采用的詞典是由哈爾濱工業(yè)大學(xué)梅家駒教授等主編的《同義詞詞林》[9]。該詞典參照多部電子詞典資源,并按照人民日?qǐng)?bào)語(yǔ)料庫(kù)中詞語(yǔ)的出現(xiàn)頻率在第一版的基礎(chǔ)上剔除了14 706個(gè)罕用詞和非常用詞。為了獲得進(jìn)一步的性能,該詞典結(jié)合多方面相關(guān)資源將詞典詞條擴(kuò)充到了77 343條,基本能滿足本研究的需求?!锻x詞詞林》按照樹(shù)狀的層次結(jié)構(gòu)把所有收錄的詞語(yǔ)組織在一起,編碼相同的詞語(yǔ)要么詞義相同,要么具有很強(qiáng)的相關(guān)性[9]。該詞典采用八位五級(jí)編碼,前七位表示該詞條所處的位置而第八位的“=”、“#”、“@”分別表示同義詞、相關(guān)詞以及只有本身一個(gè)詞。具體的編碼規(guī)則如表1所示。
1.2 同義詞典的詞條補(bǔ)充
將同義詞詞林的詞語(yǔ)相似度計(jì)算方法應(yīng)用于云南種子植物特有屬領(lǐng)域語(yǔ)義檢索,由于這部通用的語(yǔ)義詞典在本領(lǐng)域內(nèi)的應(yīng)用存在一定的局限,故本研究結(jié)合該領(lǐng)域知識(shí)對(duì)《同義詞詞林》進(jìn)行補(bǔ)充和調(diào)整。該詞典是TXT格式的文本,因此進(jìn)行調(diào)整后并不影響系統(tǒng)的運(yùn)行。如酸竹屬是云南種子植物特有屬的一個(gè)屬,酸竹屬下還有粉酸竹、酸竹、毛花酸竹、福建酸竹、黎竹等品種。由于《同義詞詞林》并沒(méi)有收錄這些詞語(yǔ),因此本研究結(jié)合詞典知識(shí)和云南種子植物特有屬在《同義詞詞林》中補(bǔ)充了125個(gè)同義詞集合,共計(jì)246條詞語(yǔ)。如在詞典增加編號(hào)“Bh08A54=”來(lái)表示詞語(yǔ)集合:粉酸竹、酸竹、毛花酸竹、福建酸竹、黎竹。因此當(dāng)用戶想要了解“酸竹屬”的知識(shí)時(shí),只要輸入編號(hào)“Bh08A54=”中任何一條詞語(yǔ)就能檢索出相應(yīng)的知識(shí)。
1.3 改進(jìn)的詞語(yǔ)相似度算法
《同義詞詞林》詞典不僅詞條豐富而且具有良好的編碼規(guī)則,所以可以根據(jù)詞語(yǔ)編碼計(jì)算出兩個(gè)詞語(yǔ)間的相似度Sim(W1,W2),Sim(W1,W2)取值范圍為[0,1],1代表同義詞,0代表不相關(guān),Sim(W1,W2)越靠近1則表示W(wǎng)1,W2相似度越高。本研究在《同義詞詞林》編碼規(guī)則的基礎(chǔ)上結(jié)合特有屬領(lǐng)域知識(shí)的特點(diǎn)提出了如下公式來(lái)度量相似度:
Sim(W1,W2)=1-■■×■(1)
式中,i表示第i級(jí)編碼,k表示第i級(jí)編碼之差的絕對(duì)值,n表示第i級(jí)編碼較大值。當(dāng)最后一位編碼為“=”時(shí),不同編碼的詞語(yǔ)按照公式(1)計(jì)算相似度,相同編碼詞語(yǔ)的相似度為1。由于本領(lǐng)域的知識(shí)在詞林中主要呈現(xiàn)同類的特點(diǎn),而不等的情況出現(xiàn)相對(duì)較少,如:編號(hào)為“Bh12B03#”,其詞語(yǔ)集合為“稻苗、稻秧、禾苗、種苗等”。很明顯,這些詞語(yǔ)是相關(guān)的。因此當(dāng)最后一位編碼為“#”時(shí),本研究根據(jù)用戶需求分為以下兩種情況:當(dāng)用戶只關(guān)心查詢?cè)~本身不關(guān)心其同類時(shí),若詞語(yǔ)的編碼相同,其相似度設(shè)置為0;當(dāng)用戶關(guān)心查詢?cè)~同類事物時(shí),若詞語(yǔ)的編碼相同,其相似度設(shè)置為1。不同編碼詞語(yǔ)按公式(1)計(jì)算,所得結(jié)果為詞語(yǔ)相似度。當(dāng)最后一位編碼位為“@”時(shí),表示自我封閉,沒(méi)有同義詞,因此設(shè)置相似度為0。如Sim[種子(Bh13B01=),種仁(Bh13B02=)]=1-(1/32)×(sqrt(02-01)/02)=0.977 903。
1.4 試驗(yàn)設(shè)計(jì)
1.4.1 試驗(yàn)一 隨機(jī)選取10對(duì)在云南種子植物特有屬領(lǐng)域知識(shí)中常見(jiàn)的詞語(yǔ)進(jìn)行相似度計(jì)算,分別使用本研究提出的方法與目前以文獻(xiàn)[10]為代表的基于同義詞典的詞語(yǔ)相似度通用計(jì)算方法進(jìn)行相似度計(jì)算。
1.4.2 試驗(yàn)二 試驗(yàn)數(shù)據(jù):110篇關(guān)于福建酸竹的文獻(xiàn),17篇關(guān)于黎竹的文獻(xiàn),19篇關(guān)于粉酸竹的文獻(xiàn),35篇關(guān)于毛花酸竹的文獻(xiàn),245篇關(guān)于酸竹的文獻(xiàn)以及768篇關(guān)于計(jì)算機(jī)領(lǐng)域的文獻(xiàn)作為噪聲集。
試驗(yàn)步驟:在試驗(yàn)一的基礎(chǔ)上分別使用上述兩種不同的方法獲取查詢?cè)~語(yǔ)的擴(kuò)展詞集合,然后將擴(kuò)展詞集合作為新的查詢?cè)~在lucene全文檢索框架中進(jìn)行檢索,最后對(duì)結(jié)果進(jìn)行評(píng)價(jià),試驗(yàn)流程如圖1所示。
評(píng)價(jià)標(biāo)準(zhǔn):精度表示檢出文獻(xiàn)中相關(guān)文獻(xiàn)的比例,計(jì)算公式為P=■。其中P表示精度,R表示相關(guān)文獻(xiàn),A表示檢出文獻(xiàn)。召回率表示相關(guān)文獻(xiàn)被檢出的比例。計(jì)算公式為r=■。其中r表示召回率[11]。F值綜合考量了精度和召回率[10],只有當(dāng)精度和召回率都較高時(shí)才具有較高的值,計(jì)算公式為F=■。
2 結(jié)果與分析
2.1 試驗(yàn)一結(jié)果
由表2可知,使用本研究方法計(jì)算云南種子植物特有屬領(lǐng)域知識(shí)詞語(yǔ)相似度的效果與人工測(cè)試出來(lái)的主觀結(jié)果沒(méi)有明顯出入,同時(shí)在本領(lǐng)域內(nèi)的詞語(yǔ)相似度更加準(zhǔn)確??梢钥闯?,本研究所提出的詞語(yǔ)相似度計(jì)算方法,相對(duì)于一般的基于同義詞詞林的詞語(yǔ)相似度計(jì)算方法的優(yōu)點(diǎn):①?zèng)]有引入人工參數(shù),使得結(jié)果更加客觀;②一般的計(jì)算方法把第一級(jí)編碼不同的詞語(yǔ)相似度統(tǒng)一定義為0.1,有些籠統(tǒng),而本研究的方法則考慮了這個(gè)問(wèn)題;③本研究考慮了將用戶的查詢需求分成兩個(gè)接口,當(dāng)用戶選擇精確檢索時(shí),進(jìn)入后將最后一位編碼為“#”,且編碼相同的詞語(yǔ)的相似度定為0的接口;當(dāng)用戶希望再擴(kuò)大其檢索范圍時(shí),則進(jìn)入后將這對(duì)詞語(yǔ)的相似度定為1的接口。而一般的計(jì)算方法過(guò)于籠統(tǒng),只是將最后一位編碼為“#”,且編碼相同的詞語(yǔ)統(tǒng)一定義為0.5,顯然不能滿足用戶需求。
2.2 試驗(yàn)二結(jié)果
由表3可知,使用本研究計(jì)算方法的召回率比使用通用計(jì)算方法的召回率有了明顯的提升,說(shuō)明使用本研究方法可以提升查詢?cè)~擴(kuò)展的性能。同時(shí)使用本研究計(jì)算方法的F值也得到了明顯提升,說(shuō)明本研究計(jì)算方法比一般通用計(jì)算方法具有更好的檢索性能。
3 小結(jié)
針對(duì)云南種子植物特有屬領(lǐng)域語(yǔ)義檢索缺乏性能良好的詞語(yǔ)相似度算法的問(wèn)題,本研究提出的算法在云南種子植物特有屬領(lǐng)域語(yǔ)義檢索中更加接近人類思維,可以很好地解決查詢?cè)~擴(kuò)展不準(zhǔn)確及檢索結(jié)果打分不合理等問(wèn)題,并且直觀明了、容易實(shí)現(xiàn)。但本研究提出的詞語(yǔ)相似度計(jì)算方法也存在不足,《同義詞詞林》作為一本通用的語(yǔ)義詞典,對(duì)于專業(yè)領(lǐng)域的應(yīng)用尚存在一定的局限性。在后讀研究中,將補(bǔ)充完善領(lǐng)域內(nèi)的詞條,再提出更加優(yōu)化的且適用面更廣的詞語(yǔ)相似度計(jì)算方法來(lái)提高檢索的精度。
參考文獻(xiàn):
[1] 李 文,孫 新,張常有,等.一種本體概念的語(yǔ)義相似度計(jì)算方法[J].自動(dòng)化學(xué)報(bào),2012,38(2):229-235.
[2] 劉亞軍,徐 易.一種基于加權(quán)語(yǔ)義相似度模型的自動(dòng)問(wèn)答系統(tǒng)[J].東南大學(xué)學(xué)報(bào),2004,34(5):609-612.
[3] 顏 偉,荀恩東.基于語(yǔ)義網(wǎng)計(jì)算英語(yǔ)詞語(yǔ)相似度[J].情報(bào)學(xué)報(bào),2006,25(1):712-716.
[4] 焦芬芬.基于概念和語(yǔ)義相似度的文本聚類算法[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(18):136-141.
[5] 吳 秦,白玉昭,梁久禎.一種基于語(yǔ)義詞典的局部查詢擴(kuò)展方法[J].南京大學(xué)學(xué)報(bào)(自然科學(xué)),2014,50(4):526-533.
[6] 李 慧.詞語(yǔ)相似度算法研究綜述[J].現(xiàn)代情報(bào),2015,35(4):172-177.
[7] 孫海霞,錢(qián) 慶,成 穎.基于本體的語(yǔ)義相似度計(jì)算方法研究綜述[J].現(xiàn)代圖書(shū)情報(bào)技術(shù),2010(1):51-56.
[8] LI F,ZHU X H,CHEN H H,et al.An improved Chinese word semantic similarity algorithm based on Cilin[J].Journal of Information & Computation Science,2015,12(10):3799-3807.
[9] 梅家駒,竺一鳴,高蘊(yùn)琦,等.同義詞詞林[J].第二版.上海:上海辭書(shū)出版社,1996.
[10] 田久樂(lè),趙 蔚.基于同義詞詞林的詞語(yǔ)相似度計(jì)算方法[J].吉林大學(xué)學(xué)報(bào)(信息科學(xué)版),2010,28(6):602-608.
[11] RICARDO B Y,BERTHIER R N.現(xiàn)代信息檢索[M].第二版.北京:機(jī)械工業(yè)出版社,2012.