在中文语境中检索关键词的方法、装置及设备制造方法及图纸

技术编号:35727623 阅读:12 留言:0更新日期:2022-11-26 18:26
本发明专利技术的一种在中文语境中检索关键词的方法、装置及设备,属于信息检索技术领域,其方法包括:在计算机存储器中创建一个记载经过中文语料库统计之后的对应于汉字库中每个汉字的使用频度数值的字库字频表;根据字库字频表数据库中的记载并结合编址方式,通过对其读操作,分别查询所检索关键词中每个汉字的使用频度数值;将该使用频度数值按照由小到大的顺序排序,生成关键词字频排序表;在待检索中文语境中,将文本中任一汉字位置开始的一个连续汉字串都与检索关键词进行一轮单字比较,所生成的关键词字频排序表所表示的单字排列顺序,作为对检索关键词构成中各汉字之间与检索文本中对应位置字符作对比的先后顺序。本发明专利技术提高了关键词检索的效率。了关键词检索的效率。了关键词检索的效率。

【技术实现步骤摘要】
在中文语境中检索关键词的方法、装置及设备


[0001]本专利技术涉及一种在中文语境中检索关键词的方法、装置及设备,属于信息检索


技术介绍

[0002]以指定的关键词进行内容检索的技术,在计算机信息
正被广泛应用。所谓的检索操作,通常是指在检索文本(有时也称为正文串、主串等)中查找与检索关键词(有时也称为模式、子串等)相匹配的连续字符串的过程,如果匹配成功,通常需要返回检索关键词在检索文本中出现的每一处位置,否则返回匹配失败的检索结论。所检索的对象,除了保存于本地的电子文档之外,还有可能是含有文本数据的Web页面,甚至是含有文本数据的影像内容等;所应用的领域,通常涉及文献检索、搜索引擎、拼写检查、语言翻译、数据压缩等场景。
[0003]在关键词检索时,需要将关键词构成中的每一个字符逐一地与检索文本中对应位置的一个字符进行单独对比,从检索文本的起始位置开始,只有当检索文本中某个位置的字符串与整个检索关键词在字符构成与字符顺序上经比较后完全一致的情况下,方为关键词匹配的成功,否则从检索文本中起始位置的下一字符重新开始,继续进行下一轮的匹配计算,只有当检索文本中不存在任何一个与检索关键词完全对等的字符串时,方为匹配失败。
[0004]目前检索关键词的匹配过程,如图1和图2所示,其中图1以前三轮的匹配过程示意了在检索文本S中对检索关键词T查找时的单字对比情形尤其是单字对比顺序,图2则给出了关键词检索中进行每轮单字对比的全过程。参考图1和图2,检索文本S和检索关键词T均以字符数组的形式存储,检索文本S由字符S0、S1、S2……
S
(m

1)
构成,检索关键词T由字符T0、T1、T2……
T
(n

1)
构成,其中m和n分别为检索文本的长度和检索关键词的长度,即它们构成中的字符数量。在关键词匹配的每一轮单字对比中,均按照检索关键词T中字符构成的自然顺序或空间顺序即T0、T1、T2……
T
(n

1)
的排列顺序,将其与检索文本中相应位置的一个字符依次进行单字的对比。由此可见,人们已习惯性地以检索关键词构成中的字符排列顺序作为双方字符间对比的先后顺序,而并没有把检索关键词构成中各字符比较的先后顺序,作为一个问题进行考虑并将其作为提高检索效率的一种举措。
[0005]在检索文本中进行的关键词检索操作,于底层的计算机软件实现上,通常采用BF(Brute

Force)算法、KMP(Knuth、Morris及Pratt)算法或KMP优化算法,进行主串与子串之间的模式匹配。BF算法是一种朴素的模式匹配算法,因主串和子串的字符指针均存在回溯现象,故其算法执行效率相对较低。作为对BF算法的改进,KMP算法和KMP优化算法在每一轮匹配过程中出现字符比较不相同的情况时不需回溯主串的指针位置,而是利用已经得到的“部分匹配”的结果将模式向右“滑动”尽可能远的一段距离后继续进行比较,由于主串字符指针不需回溯而只有子串字符指针的回溯,故KMP算法和KMP优化算法的执行效率相对BF算法有所提升。
[0006]但值得注意的是,KMP算法及KMP优化算法虽均为BF算法的改进,仅当主串与子串之间存在许多“部分匹配”的情况下,它们才能体现出其效率提升的优势,故在字符库中字符数量较少、即任意两个字符之间比较结果为相同的概率相对较高,例如在主要由26个字母构成的英文语境下的关键词检索的情况下,KMP算法及KMP优化算法方可发挥其效率提升的优势,而对于中文语境下的关键词检索,由于汉字库中汉字的总数量较多,例如由国标GB/T2312

1980收录的基本汉字数量就达6763之多,检索关键词与检索文本之间“部分匹配”的概率相对较低,这导致KMP算法及KMP优化算法在中文语境下关键词检索的效率优势难以发挥出来。
[0007]另外,在中文语境下,尤其是在检索文本的体量较大且需频频调用检索操作的某些应用场景下,由于数据比较的运算量相应增加,检索操作执行效率的高低将直接影响着用户体验的好坏。在检索文本的规模较大(例如其中的汉字总数达100万以上),或者用户对检索操作结果的响应耗时过程较为敏感(例如在网络搜索引擎的应用环境中),如果仅仅是利用传统的三种模式匹配算法进行关键词检索的话,会难以实现用户体验的高标准要求。

技术实现思路

[0008]本专利技术所要解决的技术问题是,在中文检索文本中进行关键词检索操作时如何提升检索效率,更具体地说就是如何在整体上减少每轮匹配过程中单个汉字比对的次数,尤其是在面对中文检索关键词中前面的汉字因使用频度较高更可能与检索文本中对应汉字之间对比一致而后面的汉字因使用频度较低更可能对比不一致的情况下,如何尽可能地减少每轮匹配过程中单个汉字对比的次数。
[0009]本专利技术意欲从宏观的角度,充分利用各汉字之间使用频度相差较大的统计规律,对每轮匹配中构成检索关键词的各个汉字分别与检索文本中对应位置一个字符进行对比的先后顺序进行优化,以尽可能地减少关键词检索的每一轮匹配过程中单个汉字对比的次数。也即本专利技术要实现的理想化效果就是:尽量使每轮不成功的匹配都发生在检索关键词中首先对比的汉字上而非后续对比的汉字上,因为在第一时间中止本轮匹配也就意味着可使本轮匹配产生最少的单字对比次数。
[0010]为了解决上述问题,本专利技术提出了一种在中文语境中检索关键词的方法、装置及设备,用于提高中文语境中关键词检索的效率。
[0011]本专利技术为解决其技术问题所采取的技术方案是:第一方面,本专利技术实施例提供的一种在中文语境中检索关键词的方法,所检索的关键词由两个或两个以上的汉字构成,所述的方法包括以下步骤:在计算机存储器中创建一个字库字频表,在该字库字频表的数据库中记载经过中文语料库统计之后的对应于汉字库中每个汉字的使用频度数值;根据所述字库字频表数据库中的记载,并结合数据库记录的编址方式,通过对字库字频表的读操作,分别查询所检索关键词构成中每个汉字对应的使用频度数值;将所检索关键词构成中每个汉字对应的使用频度数值按照由小到大的顺序依次排序,生成关键词字频排序表;在待检索中文语境中,从文本的首字符位置开始一直到文本的尾部位置,将文本中任一汉字位置开始的一个连续汉字串都与检索关键词进行一轮单字比较,并且在检索关
键词的每轮单字比较中,均以所生成的关键词字频排序表所表示的单字排列顺序,作为对检索关键词构成中各汉字之间与检索文本中对应位置字符作对比的先后顺序。
[0012]作为本实施例一种可能的实现方式,所述创建一个字库字频表的过程,包括以下步骤:确立字库标准,该标准限于汉字库的国标文件或政府文件;采集中文语料,该中文语料为现代汉语且所含汉字总数达百万以上;统计字频数值,该字频数值为汉字库中每个汉字在中文语料库中出现的总次数。
[0013]作为本实施例一种可能的实现方式,所述字库字频表中记载的各汉字的使用频度数值,随着用户检索操作对各种检索文本的不断涉本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在中文语境中检索关键词的方法,所检索的关键词由两个或两个以上的汉字构成,其特征在于,所述的方法包括如下步骤:在计算机存储器中创建一个字库字频表,在该字库字频表的数据库中记载经过中文语料库统计之后的对应于汉字库中每个汉字的使用频度数值;根据所述字库字频表数据库中的记载,并结合数据库记录的编址方式,通过对字库字频表的读操作,分别查询所检索关键词构成中每个汉字对应的使用频度数值;将所检索关键词构成中每个汉字对应的使用频度数值按照由小到大的顺序依次排序,生成关键词字频排序表;在待检索中文语境中,从文本的首字符位置开始一直到文本的尾部位置,将文本中任一汉字位置开始的一个连续汉字串都与检索关键词进行一轮单字比较,并且在检索关键词的每轮单字比较中,均以所生成的关键词字频排序表所表示的单字排列顺序,作为对检索关键词构成中各汉字之间与检索文本中对应位置字符作对比的先后顺序。2.根据权利要求1所述的在中文语境中检索关键词的方法,其特征在于,所述创建一个字库字频表的过程,包括以下步骤:确立字库标准,该标准限于汉字库的国标文件或政府文件;采集中文语料,该中文语料为现代汉语且所含汉字总数达百万以上;统计字频数值,该字频数值为汉字库中每个汉字在中文语料库中出现的总次数。3.根据权利要求1所述的在中文语境中检索关键词的方法,其特征在于,所述字库字频表中记载的各汉字的使用频度数值,随着用户检索操作对各种检索文本的不断涉猎而持续更新;所述持续更新的过程为:在检索关键词的匹配过程中,将所读取的检索文本中的每一个汉字,查询其在字库字频表中的相应记录位置,并在该位置记载的该汉字原使用频度数值的基础上做加1运算。4.根据权利要求1所述的在中文语境中检索关键词的方法,其特征在于,所述关键词字频排序表,表示为检索关键词构成中每个汉字在该构成中位序数值的序列,并将每个位序数值依次储存在一个一维的整型数组中,通过该整型数组下位地址依次递增时所对应数组元素值的不断变化,形成检索关键词的每轮匹配运算中对其构成中各汉字的比较顺序,即所述关键词字频排序表所代表的汉字对比顺序。5.根据权利要求1所述的在中文语境中检索关键词的方法,其特征在于,所述待检索中文语境包括保存于计算机本地或服务器网页的一份单独文件的中文文本,或其一份文件内指定范围的中文文本,或其多份文件整体构成的中文文本。6.根据权利要求1所述的在中文语境中检索关键词的方法,其特征在于,在检索关键词的每轮单字比较过程中,一旦发现任一对应位置的两个单字不同,直接退出当前一轮的比较,只有当检索文本中的一个连续字符串与整个中文检索关键词在汉字构成与汉字顺序上完全相同,才认定当前一轮匹配的成功,直至将检索文本全文中所有与中文检索关键词等长的连续字符串与该中文检索关键词比较完毕。7.根据权利要求1

6任意一项所述的在中文语...

【专利技术属性】
技术研发人员:王利烨韩亚林徐捷田恒
申请(专利权)人:强企宝典山东信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1