APP下载

汉-维跨语种农业知识库检索系统研究

2020-05-11陈燕红谢卫国

微型电脑应用 2020年1期

陈燕红 谢卫国

摘 要: 农业知识库检索系统以“服务农民、助农民增收、提高农业科技水平”为目标,充分发挥农业信息在农业农村发展中的重要功能和巨大潜力,为涉农人员提供高效、准确的农业科技知识。对于新疆少数民族聚居地区的涉农人员来说,深入研究跨语种农业知识库检索技术非常必要。介绍汉-维跨语种农业知识库检索关键技术: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