新一代行业知识全文检索方法技术

技术编号:10106537 阅读:189 留言:0更新日期:2014-06-01 21:00
一种新一代行业知识全文检索方法,1,构建分词词典:构建分词词典,并将词典信息存入数据库;2,构建全量索引:对已经存在的全文文档“也称为知识点文档”进行读取、分词和分析,建立索引文件;3,构建增量索引:对新增的文档进行处理,更新硬盘上的索引文件;4,构建内存索引,构建内存分词词典:将分词词典数据读入内存,构建内存分词词典数据结构;步骤5,全文检索,标准化用户问题,分词,语义理解,语义扩展,获取候选文档,排序候选文档其中,系统初始化的时候,构建分词词典;构建全量索引:读取所有的知识点文档,全量构建硬盘索引文件“简称索引文件”;新增全文文档的时候,构建增量索引,这三个活动,独立于全文检索模块,独立运行。

【技术实现步骤摘要】
【专利摘要】一种,1,构建分词词典:构建分词词典,并将词典信息存入数据库;2,构建全量索引:对已经存在的全文文档“也称为知识点文档”进行读取、分词和分析,建立索引文件;3,构建增量索引:对新增的文档进行处理,更新硬盘上的索引文件;4,构建内存索引,构建内存分词词典:将分词词典数据读入内存,构建内存分词词典数据结构;步骤5,全文检索,标准化用户问题,分词,语义理解,语义扩展,获取候选文档,排序候选文档其中,系统初始化的时候,构建分词词典;构建全量索引:读取所有的知识点文档,全量构建硬盘索引文件“简称索引文件”;新增全文文档的时候,构建增量索引,这三个活动,独立于全文检索模块,独立运行。【专利说明】
本专利技术涉及全文检索领域,尤其是行业知识的全文检索领域,提出了一种新的行业知识全文检索系统和方法。
技术介绍
全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。全文检索是一种将文件中所有文本与检索项匹配的文字资料检索方法。全文检索系统是按照全文检索理论建立起来的用于提供全文检索服务的软件系统。全文检索是将存储于数据库中整本书、整篇文章中的任意内容信息查找出来的检索。它可以根据需要获得全文中有关章、节、段、句、词等信息,也可以进行各种统计和分析。例如,它可以回答“《红楼梦》一书中“林黛玉” 一共出现多少次? ”的问题。传统的全文检索系统只是基于关键字、关键词的匹配,缺乏英文、拼音、错别字、同义词、近义词等多方位的语义识别和纠错的能力。随着客户需求的智能要求越来越高,传统的全文检索系统越发显得落后。为了解决存在的问题,急需一种新的全文检索系统,它可以让检索更智能,具体表现为:可以实现最普遍的拼音、汉字、英文互相表达,比如用户输入“shengka”,系统可以理解出,用户可能查询的内容是“声卡”;可以实现错别字纠错,可以实现语义理解和语义扩充。如:用户输入“商务领航”、“上午领航”、“shangmilinghang”、“Shwlh”都可达到“商务领航”的搜索效果;用户输入“宽带怎么办理”、“怎么安装宽带”、“给俺弄个宽带”、“我想开通宽带”等等意思相近的甚至口语化的检索形式,也能正确返回相关“宽带办理”的答案。
技术实现思路
针对上述问题,本专利技术在传统的基于关键字、词匹配的全文检索系统基础上,增加了英文、拼音、错别字、同义词、近义词等多方位的语义识别和纠错功能,又增加了上下位、属性识别等语义扩展能力。本专利技术是一款具有语义理解语义扩展功能的全文检索系统。技术方案:为了解决以上问题本专利技术提供了一种,其特征在于:包括以下步骤: 步骤1,构建分词词典:构建分词词典,并将词典信息存入数据库; 步骤2,构建全量索引:对已经存在的全文文档“也称为知识点文档”进行读取、分词和分析,建立索引文件; 步骤3,构建增量索引:对新增的文档进行处理,更新硬盘上的索引文件; 步骤4,构建内存索引,包括: 步骤4-1,构建内存分词词典:将分词词典数据读入内存,构建内存分词词典数据结构; 步骤4-2,构建全量内存索引:从硬盘上读取索引文件,全量构建内存索引; 步骤4-3,构建增量内存索引:对新增的文档进行处理,实现内存索引增量更新; 步骤5,全文检索,包括: 步骤5-1,标准化用户问题:接受用户咨询的问题并进行标准化处理“也称规范化 处理”,去掉冗余词、去掉不影响语义信息的没用的标点符号,识错纠错、别称标准化; 步骤5-2,分词:对标准化后的问题进行分词; 步骤5-3,语义理解:对分词结果进行处理,提取出问题中出现的分词的所属词类或 者标准词,获取分词语义信息; 步骤5-4,语义扩展:对分词语义信息进行语义扩展,得到扩展后的语义信息,这些 语义扩展信息,使用一些词或词类表示; 步骤5-5,获取候选文档:利用语义扩展后得到的词或者词类“这些词或词类代表 扩展后的语义信”,根据内存索引信息,搜索相应的全文文档,作为候选文档; 步骤5-6,排序候选文档:对候选文档进行多角度的评分排名,评分越高,排名越 靠前,排序后的候选文档成为最终的全文检索结果; 其中,系统初始化的时候,构建分词词典;构建全量索引:读取所有的知识点文档,全量构建硬盘索引文件“简称索引文件”;新增全文文档的时候,构建增量索引。这三个活动,独立于全文检索模块,独立运行。步骤I所述的构建分词词典,主要是实现分词词典的构建,构建的分词词典是“二级分词词典”,其构造方法如下: 步骤1-1,根据《通用分词词表》+《业务词表》,构成一级分词; 其中,《通用分词词表》采用中科院计算所词表作为通用分词词表,《业务词表》包含了行业相关的专有名词,可通过导入行业内的业务名称构建; 步骤1-2,自动将一级分词进行细分,构成候选二级分词; 步骤1-3,人工筛选候选二级分词; 构建后的二级分词词典格式如下:一级分词二级分词数组(用I分割)。步骤2所述的构建全量索引,主要功能是实现数据索引文件的全量构建,其主要过程如下: 步骤2-1,读取每一个知识点文档,对知识点文档进行分词:分词过程中将普通的分词词典和具有了语义关系的上下位词典结合在一起,产生了多组分词结果,并且根据每组结果中所包含的词的个数以及词的长度进行了排序,分词的时候,按行读取,然后在将每一行按照一些标点符号进行截取,得到小段的文字,依照分词词典和上下位词类“所谓词类就是具有同样或者相近意思的一组词的一个统称”词典进行分词,对于到底是用词类还是用词来建立索引,做了以下的规定, ①如果一个词有词类并且只有一个词类“并且不是冗余词类”那么就用词类名来建立索引; ②如果一个词有词类并且不止一个,则需要对这个词的每一个词类“不包含冗余词类”建立索引; ③如果一个词在词典中,但是不存在词类,就用这个词的本事来建立索引; ④如果一个词在词典中,并且是冗余词类,则不对其建立索引;步骤2-2,建立索引,对每个词/词类建立索引结构。所述的步骤2-2还包括以下步骤: 步骤2-2-1,建立索引文件:索引是一种用来从索引词找到对应文档的方法,英文文本中单词直接用空白分隔进行分词,中文文本采用中国科学院计算技术研究所的分词工具ICTClass进行中文分词,分词后产生的词作为索引词直接进行词级或词类级的索引; 索引构建中采用倒排文件“inverted file”方式建立,其处理过程是:依次处理每篇文档记录它包含的每个词的出现位置,同时词属于词类,这样对每篇文档中出现的每个词可以产生一个三元组〈DocID(文档 ID), TermID (词 ID) |WordClassID (词类 ID),Positions(多个位置信息)>,其中Positions代表索引词TermID在DocID中出现的位置, 索引结构包括: 〈ItemID I WordClassID (词ID词类ID),〈DocID (文档的ID),〈词在文档中的起始位置和所在的行数 < 索引对象>>>> 此结本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:王卫民符建辉王石
申请(专利权)人:镇江诺尼基智能技术有限公司
类型:发明
国别省市:

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

1