陳燕紅 謝衛國



摘 要: 農業知識庫檢索系統以“服務農民、助農民增收、提高農業科技水平”為目標,充分發揮農業信息在農業農村發展中的重要功能和巨大潛力,為涉農人員提供高效、準確的農業科技知識。對于新疆少數民族聚居地區的涉農人員來說,深入研究跨語種農業知識庫檢索技術非常必要。介紹漢-維跨語種農業知識庫檢索關鍵技術:Lucene全文檢索技術,維吾爾文處理以及漢維雙語倒排索引的創建與檢索。闡述了系統的設計要點:漢維雙語農業知識庫設計,知識錄入途徑以及語義檢索模型設計。最后,展示了系統的實現效果。目前,該系統已投入使用,取得了良好的應用效果。
關鍵詞: 漢-維跨語種; 農業知識庫; 語義檢索; 檢索系統
中圖分類號: TP311 ? ? ?文獻標志碼: A
Research on Retreval System of Chnese-Uygur
Cross-language Agrcultural Knowledge Base
CHEN Yanhong1, XE Weguo2*
(1. College of Computer and nformaton Xnjang Agrculture Unversty, Urumq 830052;
2. School of Marxsm, Xnjang Medcal Unversty, Urumq 830011)
Abstract: The retreval system of agrcultural knowledge base ams at servng farmers. t can ncrease ther ncome and mprove the level of agrcultural scence and technology, gve full play to mportant functon and great potental of agrcultural nformaton n agrcultural and rural development, and provde effcent and accurate agrcultural scence and technology knowledge for agrcultural personnel. t s necessary to ntensvely study the retreval system of cross-lngual agrcultural knowledge base for the farmers n Xnjang mnorty areas. Ths paper ntroduces key technologes of Chnese-Uygur cross-lngual agrcultural knowledge base retreval: Lucene full-text retreval technology, Uygur language processng, creaton and retreval of Chnese-Uygur blngual nverted ndex. Man ponts of system desgn are expounded as follows: desgn of Chnese-Uygur blngual agrcultural knowledge base, ways of knowledge nput and desgn of semantc retreval model. Fnally, mplementaton effect of the system s shown. At present, the system has been put nto use and acheved good applcaton results.
Key words: Chnese-Uygur cross-lngual; Agrcultural knowledge base; Semantc search; Retreval system
0 引言
農業知識庫檢索系統以“服務農民、助農民增收、提高農業科技水平”為目標,充分發揮農業科技信息在農業農村發展中的重要功能和巨大潛力,為涉農人員提供高效、準確的農業相關知識檢索服務,從而成為指導農牧民科學種植、科學養殖致富增收的重要手段[1]。面向新疆少數民族聚居地區的涉農人員,為了充分發揮信息技術在新疆農牧業中的支撐作用,緩解龐大的信息資源與用戶有限的接收能力之間的矛盾,適應用戶的現實信息需求及其發展變化,深入研究跨語種農業知識庫檢索技術非常必要。
隨著互聯網技術的快速發展和廣泛應用,針對新疆“三農”的特殊性以及互聯網農業信息的多樣性和復雜性,許多問題需要探討,本文研究并構建了漢-維跨語種農業知識庫檢索系統,重點介紹相關核心技術、系統設計要點以及系統的實現效果。
1 核心技術
1.1 Lucene全文檢索技術
漢-維跨語種農業知識庫檢索系統在Lucene全文檢索[2]的基礎上進行了二次開發。Lucene作為一個開源的全文檢索引擎工具包,雖不是一個完整的全文檢索引擎,但它很適合作為漢-維跨語種農業知識庫檢索系統的全文檢索架構,因為它提供了完整的查詢引擎、索引引擎和部分文本分析引擎。Lucene經過二次開發后具有如下突出特點:
(1)基于強大的查詢引擎,實現了模糊查詢、分組查詢等;
(2)設計了獨立于語言和文件格式的文本分析接口,用戶可以擴展新的語言和文件格式;
(3)提供了檢索接口,同時可以方便地擴充新功能;
(4)在倒排索引[3]的基礎上,實現了維-漢跨語種農業知識分塊索引,并能夠針對新的文件建立小文件索引,提升索引速度。之后,再與原索引進行合并,從而達到優化的目的。
(5)索引文件格式獨立于應用平臺。定義了一套以8字節為基礎的索引文件格式,使得兼容系統或者不同平臺的應用能夠共享漢-維跨語種農業知識庫檢索系統中生成的索引文件。
1.2 維吾爾文處理
1991年,Uncode學術學會與國際標準化組織SO共同為阿拉伯文形狀的所有文字(維吾爾文和阿拉伯文大體相同,形狀相似,很多字母相互共享)制定了一套從右到左書寫文本的通用編碼標準。1992年在漢城召開的SO會議產生的國際標準SO 10646中確定了維吾爾文國際編碼。漢-維跨語種農業知識庫檢索系統所基于的PC操作系統只對部分維吾爾文字符進行了自動選型而無法完整地輸入維吾爾文,因此,要處理維吾爾文除了需要Uncode字符編碼外,還需要先進的字庫編輯軟件。漢-維跨語種農業知識庫檢索系統使用Java語言編寫,該語言內部采用utf-8國際編碼,所以在運行程序時顯示的維吾爾文沒有出現亂碼。同時,還要保證操作系統、瀏覽器及后臺數據庫支持的維吾爾文編碼格式都是utf-8,否則,在檢索系統運行過程中維吾爾文顯示就會出現亂碼。
漢-維跨語種農業知識庫檢索系統基于空格對維吾爾文進行分詞。系統構建索引時也是將空格隔開的數據保存到索引庫中,檢索時按空格隔開的關鍵詞來檢索索引中的內容。
1.3 漢維雙語倒排索引的創建與檢索
漢-維跨語種農業知識庫檢索系統使用漢維雙語倒排索引來存儲全文搜索下某個單詞在一個文檔或者一組文檔中存儲位置的映射和排序。利用倒排索引,可以根據查詢詞快速獲取包含這個單詞的漢維文檔列表。漢-維跨語種農業知識庫檢索系統的倒排索引主要由兩部分構成:漢維雙語詞典、倒排文件。倒排索引是本系統的關鍵部分,其最關鍵的四個域:中文詞條、維文詞條、表名和記錄編號。其中,中文詞條、維文詞條是用于檢索的域,表名、記錄編號則用于定位用戶檢索后需從知識庫讀取的記錄。
在對創建好的漢維雙語倒排索引進行檢索時,前端檢索頁面先將查詢句發送至后臺業務邏輯,查詢句通過分詞器處理后變成多個單獨的關鍵詞。系統在倒排索引的四個檢索域中進行檢索,任何一個域包含查詢關鍵詞,則該條記錄就會作為檢索結果返回。索引的檢索結果會進行相關性排序,其排序算法為:
score(q,d)=cord(q,d)×queryNorm(q)×∑t n q(tf(t n d)×
df(t)2×t·get Weght()×norm(t,d))
式中:
cord(q,d)——協調因子[3],表示詞條t在文檔d和查詢句q中出現次數的比率。如果查詢句q經過解析器處理后,得到詞條t的個數為m,而詞條t在文檔d中出現的次數為n,則協調因子為n/m,因此,在文檔中出現查詢詞條的個數越多,則協調因子值就越高。
queryNorm(q)——查詢歸一化因子,其并不影響檢索結果的排序情況,主要用于使排序結果在不同查詢條件之間可以進行比較。該因子根據每個查詢項權重的平方和運算得到。計算式為式(1)。
queryNorm(q)=
1q·get Weght()2×∑t n q(df(t)×t·get Weght())2
(1)
tf(t n d)——詞頻,表示查詢句中的詞條t在結果文檔d中出現的頻率。t出現的次數越多,表示出現的頻率越高,則文檔d的檢索得分就越高。為了避免數值過大,這里使用次數的平方根作為頻率tf的值。
df(t)——倒文檔頻,表示當詞條t在文檔中出現的頻率越低,則詞條t就越重要。計算式為式(2)。
df(t)=1.0+log(numDocs/(docFreq+1))
(2)
其中:
numDocs——文檔總數。
docFreq——出現詞條t的文檔數。
t·get Weght()——獲得詞條t的權重,可用于在查詢句中設定詞條t的重要程度。
norm(t,d)——標準化因子,計算式為式(3)。
norm(t,d)=d·getWeght()×lengthNorm(feld)×
∏f n df·getWeght()
(3)
其中:
d·getWeght()——獲得文檔d的權重,在創建索引階段寫入nrm文件,表明文檔的重要程度。
lengthNorm(feld)——域feld的標準化長度,域feld中包含的詞條總數numTerms越多,該值越小,否則該值越大。計算式為式(4)。
lengthNorm(feld)=1.0numTerms
(4)
f·getWeght()——獲得域f的權重,在創建索引階段寫入nrm文件,表明該域的重要程度。
2 系統設計
漢-維跨語種農業知識庫檢索系統是在新疆農村農資信息匱乏、信息不暢通的情況下應運而生的。該系統是農業科技信息服務三農的重要信息平臺,其以互聯網技術為基礎大力宣傳農技、農資信息。該系統將為新疆廣大農牧民提供便捷的漢維雙語檢索服務。
2.1 漢維雙語農業知識庫設計
漢-維跨語種農業知識庫依據“農業信息分類標準草案” [4],同時根據系統實際需求進行改進后,將農業信息分為四級,其中,一級分類共包括8項,分別為:林業、畜牧業、漁業、園林、農業生產資料、農業機械、種植業及制品、植物病理;二級分類包括48項,三級分類包括226項,四級分類包括1 270項。分別設計8張表來存放一級分類中的8項信息,這些表的結構均相同,以畜牧業表為例,表結構如表1所示。
在向知識庫錄入知識的過程中,需明確將錄入的知識所屬的分類級別,因此,需要設計四級級聯菜單,從而保證在一級分類選定后,下一級菜單就會自動更新為對應的下級分類[5]。在此設計了對應四級分類的四張編碼表,來實現級聯菜單功能。這四級分類編碼表結構如圖1所示。
圖1中,Code1為一級編碼表,表中的code_1為一級類別編碼,name為類別名稱;Code2為二級編碼表,表中的code_2為二級類別編碼,code_1則為二級類別所對應的一級父類編碼;Code3為三級編碼表,表中的code_3為三級類別編碼,code_2為三級類別所對應的二級父類編碼;Code4為四級編碼表,表中的code_4為四級類別編碼,code_3為四級類別所對應的三級父類編碼。這四張編碼表通過主、外鍵關聯實現四級聯動效果。
2.2 漢維雙語農業知識錄入
本系統所使用的農業知識庫信息主要來源于四種途徑:
(1)將前期積累的大量農業科技資料規范、翻譯后錄入漢維雙語知識庫;
(2)組織大批農業專業技術人員根據自身經驗總結農業常見問題(如棉花常見問題1000問),規范、翻譯后錄入知識庫;
(3)利用網絡爬蟲從互聯網中獲取農業相關網頁,并依據規則進行篩選后,加入漢維雙語倒排索引中。如果從知識庫中檢索不到所需結果,則系統會通過倒排索引進行檢索;
(4)通過以上三種途徑用戶都沒能查詢到結果,則系統會自動記錄用戶所提問題,之后組織專業人員進行解答并錄入知識庫。
通過這四種途徑就可以不斷豐富知識庫,從而保證系統的檢索效果。
2.3 檢索模型設計
漢-維跨語種農業知識庫檢索系統主要面向新疆廣大涉農人員,而該類用戶由于受到知識背景、語言習慣等制約,常無法提出“好”的查詢句,這樣的查詢句無法準確表達用戶的真正需求,這會嚴重影響最終的檢索效果[6]。因此漢-維跨語種農業信息知識庫檢索系統對Lucene的檢索模塊進行了較大改進,可以根據需要選擇兩種檢索模式:快捷模式、語義模式[7,8]。其中,快捷模式首先在知識庫中進行查詢,如果檢索成功則返回結果,否則,利用漢維雙語倒排索引實現快速檢索;語義模式則是在知識庫中無法查詢到結果時,對倒排索引進行語義檢索,利用潛在語義分析[9]將基于隨機索引語義空間[10]檢索出的初選文檔列表,進行擴展和重新排序,從而實現優化檢索效果的目的。
語義檢索模式的基本思路是將檢索過程分解為兩個階段:(1)利用改進后的隨機索引技術,將漢維雙語倒排索引生成文檔空間和詞空間,然后將查詢句的語義向量,與文檔空間中的向量進行相似度比較,從而獲得初選文檔列表;(2)基于潛在語義分析生成文檔相似度矩陣,并計算文檔間的相似度值,再對隨機索引分析出的初選文檔列表中大于指定閾值的文檔進一步查找相關文檔,從而獲得結果文檔列表并按相似度值排序后返回給用戶。語義檢索模式的基本流程如圖2所示。
3 系統實現
基于系統設計和前期研究成果,項目組實現了功能較完備的漢-維跨語種農業知識庫檢索系統,從知識庫管理到相關資料經過濾和處理后建立漢維雙語倒排索引,再經過進一步的語義分析后,建立雙層語義索引,最終該系統能夠為新疆涉農人員提供方便、準確的漢維雙語農業科技信息檢索服務。系統的主要實現效果如圖3、圖4、圖5所示。
4 總結
面對海量的信息資源,如何快捷、準確地獲取多語言的農業科技知識已成為新疆農業信息化迫切需要解決的問題。漢-維跨語種農業知識庫檢索系統針對新疆“三農”科技信息獲取的特殊性,實現了通過靈活設置選擇快捷模式或語義模式兩種檢索模型的功能,從而為新疆涉農用戶提供高效、準確的漢維雙語農業科技信息檢索服務。然而,本系統中的檢索模型還有待進一步改進,從而既有效提高基于倒排索引的快捷檢索的性能,同時,又能提高語義檢索的效率。
參考文獻
[1] 胡毅,劉波,方逵.農業知識庫知識檢索系統研究與實現[J].農機化研究,2013(6):13-18.
[2] 侯天峰,陸亞祥.一種全文檢索系統的研究與實現[J].微型電腦應用,2017(5):52-55.
[3] Rcardo Baeza-Yates, Berther Rbero-Net.現代信息檢索[M].王知津,譯.北京:機械工業出版社,2012.
[4] 李永可,李悅,陳燕紅,等.農業知識檢索系統的設計與實現[J].電腦知識與技術,2014,10(23):5449-5452.
[5] Chandurkar Avan, Bansal Ajay.nformaton retreval from a structured knowledgeBase[C]. EEE 11th nternatonal conference on semantc computng,San Dego, CA, USA, 2017(1):27-34.
[6] 黃利斌.基于本體的農業知識庫檢索關鍵技術研究[D].長沙:湖南農業大學,2017.
[7] Frber Mchael, Zhang Le, Rettnger Achm. Kuph-An nvestgaton tool for searchng for and va semantc relatons[C]. European semantc web conference,Cham, Swtzerland, 2014(5):103-119.
[8] 來驥,馬躍,吳舜,等.基于語義分析的運維數據關聯知識庫構建方法[J].科學技術與工程,2018(19):218-223.
[9] Khatavkar Vabhav, Kulkarn Parag. Comparson of Support Vector Machnes wth and wthout Latent Semantc Analyss for Document Classfcaton[M]. Sngapore: Sprnger, 2019.
[10] Sandn Fredrk, Emrul Blerm, Sahlgren Magnus. Random ndexng of multdmensonal data[J]. Knowledge and nformaton Systems,2017,52(1):267-290.
(收稿日期: 2019.05.14)
基金項目:新疆維吾爾自治區自然科學基金面上項目(2019D01A50)
作者簡介:陳燕紅(1979-),女,新疆,副教授,博士研究生,研究方向:多語言自然語言處理、農業信息化。
通信作者:謝衛國(1976-),男,河南,講師,碩士,研究方向:科學技術哲學、農業信息化。文章編號:1007-757X(2020)01-0059-05