藏文期刊论文检索系统研究
2018-07-10仁青东主安见才让
仁青东主 安见才让
(青海民族大学计算机学院,青海 西宁 810007)
1 引言
随着国家教育事业的飞速发展,国内藏区教育教学水平也得到了全方位的提高,而期刊论文发表是其中一项非常重要的组成部分,其主要目的是分享科学研究成果,进行学术交流。为用户提供一个在最短的时间内要找到自己需要的信息的平台是现实迫切的需求。本系统目的就是将分散在各处杂志上的论文收集整理,并按照论文结构分类存储到一个数据库中,并提供统一的查询接口,方便用户在更大的范围内查找所需内容,提高查询效率,同时也增加了电子论文潜在的读者。以上这些问题引出了本课题的研究内容:藏文期刊论文检索系统的研究。
2 藏文期刊论文检索系统相关技术分析
在自然语言处理中,词是最小的、能独立活动的、有意义的语句成分,而英文、汉文、藏文对字符、字、词各有不同的含义。英文是以词为单位的,词与词之间按照空格进行分割,划分很明显,即字与词是合二为一的,而词是由字符构成,界限很清楚;汉文是以字为单位,根据汉文组词的语法规则构成词语,词与词之间又没有明显的标记区分,即由字构成词,而字与字符是合二为一的;藏文同汉文,也是以字为单位根据组词规则由字构成词,而字又由字符构成,即藏文中字符构成字、字构成词,只是字与字之间由音节符隔开,以此可以区分字与字符。例如,英文句子“He is a teacher”,翻译成汉文“他是一名老师”,翻译成藏文计算机可通过空格识别“teacher”是一个单词,但是无法识别也是一个单词,所以需引入分词技术。
2.1 最大概率法分词技术
本研究使用了最大概率法分词技术,其主要思路是:(1)一个待切分的藏文字符串可能包括多种分词结果;(2)将其中概率最大的分词结果作为该文本的分词结果。我们用这个例子来进行说明,该字符串各种可能的分词结果可以用一个有向图1来显示如下:
图 1 “ ”正向与逆向切分结果的有向图表示
其中(1)表示正向分词结果,(2)表示逆向分词结果,把这两种分词结果分别表示为W1和W2,则有如下两种分词结果:
W1如果采用最大匹配法进行分词,W1是正向最大匹配的结果,W2是逆向最大匹配结果。对于这个例子来说,很显然,W2是正确的分词结果。如果用最大概率法来进行分词,就是计算W1和W2的概率P(W1)和P(W2),从中挑选一个概率大的作为分词结果输出。P(W)的概率可以有不同的计算方法,其中最为简便直接的一种是将W中的各个词看作互不相干的独立事件,以每个候选词的概率乘积来求得整个词串的概率。公式如下:
而P(Wi)可由词语在一定规模的语料库中的出现频次来近似估计,即
词语的概率信息可以按公式2事先计算好,存储在词典中。假设词典中记录有概率信息如下表1,则可以计算相应的概率值,并选择最大的作为词串输出。
通过计算可以发现P(W2)>P(W1),从概率角度看,词串W2比W1具有更大的可能性[4]。
2.2 基于排序法的索引创建技术
排序法在创建索引期间,始终占用固定的分配空间,以保存索引的中间结果和词典信息,当分配空间被占满时,将中间结果导入磁盘,内存空间就得到了释放,为下一次保存索引中间结果做准备。可见,这种方法占用的内存空间是固定的,从而可对不同大小的文档集合创建索引,详见下图2。
图2为排序法创建索引的流程图。在读取文档后,立即对文档作编号处理,不仅使每个文档都有专属的ID,还完成了文档内容解析。对于经常出现的单词,可运用查词典法将单词转换为相匹配的单词ID,如果在词典中未发现这个单词,表明这是首次遇到这个单词,同时将赋予ID并存储至词典。
表1 词语概率信息表
图2 排序法
3 论文检索模块设计
检索模块分为普通检索和相关性检索两种方式。普通检索时,先让用户选择检索方式,即论文的题目、作者、期刊、关键字等,输入检索内容之后可预览论文基本信息。如果需要阅读详细内容,就要双击题目进行PDF格式阅览。操作界面如图3所示:
图3 检索结果预览界面
为了进一步提高用户的检索体验,当用户输入错误关键词不知道如何检索关键词时,通过借鉴系统提供的相关检索,从而可以提高检索质量,能够快速地找到自己所需的论文。首先要对论文进行分词处理,然后要对分词好的论文进行词频统计,根据词频计算逆文档频率,得到了逆文档频率就能得到相应的词项权重值[1]。相似度计算模块界面由两个小模块组成。第一个小模块是相关检索,相关检索根据计算查询词条与论文之间的相似度,按照相似度的评分高低,对查询结果列表进行排序。第二个模块是根据用户输入的词条检索与此相关的词条,对论文进行查询,例如查询词条,意思为导师,跟导师相关的词条有老师,通过建立相关词词典,能够实现类似查询[2]。
4 实验—压力测试
压力测试是一个必不可少且有益的过程,它提供了对Web和移动应用程序在极端负载下的性能测试,可确定应用程序中的潜在漏洞,并在出现问题前对其进行更正[3]。Visual Studio 2017企业版自带测试功能。为了确保网站的效能及容量可以满足上线需求,首先需要预设负载测试时间、并发人数。本次实验预设并发人数为200人,从初始10个用户开始,每10秒增加30个用户,直到200个用户为止,测试时间为5分钟。
在系统压力测试中通过逐渐增加用户访问人数的方法,从初始的10个用户到200个用户同时访问网页的实验中,我们可以发现随着用户数量的增多,响应时间最高达到1.81秒,最低响应时间是1.07秒,平均响应时间是1.52秒。实验证明,该系统基本上能够达到预期效果。
5 结论
图4 相关性检索模块界面
图5 测试响应时间图
本文实现了最基本的藏文期刊论文检索功能,该系统基本上能够达到预期效果,但仍存在不足之处,离实际的藏文期刊论文检索系统的标准还有一定的差距,在下一步的研究工作中将继续改善。比如,当两个句子意义相似而使用了不同的词性时,借助近义词典进行替换,由于近义词典的词量相对较少,因此,该算法的计算结果与人的主观判断误差较大。因此,需要更科学、适用的藏文近义词典,尽可能减少相似度计算误差。
[1]陈玉忠,李保利,俞士汶.藏文自动分词系统的设计与实现[J].中文信息学报,2006,20(5):10-16.
[2]安见才让.藏语句子相似度算法的研究[J].中文信息学报,2011(4):111-113.
[3]伊文斌,郑剑.基于Load Runner的Web负载测试[J].江西理工大学学报,2008,29(04):13-15.
[4]王瑞雷,栾静,潘晓花,等.一种改进的中文分词正向最大匹配算法[J].计算机应用与软件,2011,28(3):195-197.