检索方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:19425237 阅读:18 留言:0更新日期:2018-11-14 10:37
本申请公开了一种检索方法、装置、计算机设备及存储介质。该方法包括:获取多个待分词的文本,将每一个待分词的文本进行分词,得到分词结果;将分词结果存储至分布式文档存储数据库,根据每一个待分词的文本及分词结果对应建立索引;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。该方法通过在分布式文档存储数据库创建中文文本的索引,通过索引实现了对海量中文文本的高效的全文检索。

【技术实现步骤摘要】
检索方法、装置、计算机设备及存储介质
本申请涉及文本检索
,尤其涉及一种检索方法、装置、计算机设备及存储介质。
技术介绍
目前中文全文检索的方法,用的最多的是基于Lucene内核(Lucene是一个开放源代码的全文检索引擎工具包)的Elasticsearch产品(ElasticSearch是一个基于Lucene的搜索服务器),所以Lucene固有的问题,同样存在于Elasticsearch中。Lucene内核的中文全文检索,存在以下问题:1)当Lucene文件索引库特别大的时候,容易发生内存溢出的错误(即提示OutOfMemory错误),查询也会变的非常的慢。2)Lucene不适合比较复杂的计算,并且没有对数据执行服务端脚本的能力。
技术实现思路
本申请提供了一种检索方法、装置、计算机设备及存储介质,旨在解决现有技术中基于Lucene内核的中文全文检索,在Lucene文件索引库特别大的时候,容易发生内存溢出的错误,导致查询效率低下的问题。第一方面,本申请提供了一种检索方法,其包括:获取多个待分词的文本,将每一个待分词的文本进行分词,得到分词结果;将分词结果存储至分布式文档存储数据库,根据每一待分词的文本及分词结果对应建立索引;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。第二方面,本申请提供了一种检索装置,其包括:分词单元,用于获取多个待分词的文本,将每一个待分词的文本进行分词,得到分词结果;索引建立单元,用于将分词结果存储至分布式文档存储数据库,根据每一待分词的文本及分词结果对应建立索引;查询分词单元,用于获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;查询结果发送单元,用于若索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。第三方面,本申请又提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请提供的任一项所述的检索方法。第四方面,本申请还提供了一种存储介质,其中所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行本申请提供的任一项所述的检索方法。本申请提供一种检索方法、装置、计算机设备及存储介质。该方法通过获取多个待分词的文本,将每一个待分词的文本进行分词,得到分词结果;将分词结果存储至分布式文档存储数据库,根据每一待分词的文本及分词结果对应建立索引;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。该方法通过在分布式文档存储数据库创建中文文本的索引,通过索引实现了对海量中文文本的高效的全文检索。附图说明为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种检索方法的示意流程图;图2是本申请实施例提供的一种检索方法的子流程示意图;图3为本申请实施例提供的一种检索方法的另一子流程示意图;图4为本申请实施例提供的一种检索方法的另一子流程示意图;图5为本申请实施例提供的一种检索方法的另一示意流程图;图6为本申请实施例提供的一种检索装置的示意性框图;图7为本申请实施例提供的一种检索装置的子单元示意性框图;图8为本申请实施例提供的一种检索装置的另一子单元示意性框图;图9为本申请实施例提供的一种检索装置的另一子单元示意性框图;图10为本申请实施例提供的一种检索装置的另一示意性框图;图11为本申请实施例提供的一种计算机设备的示意性框图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。请参阅图1,图1是本申请实施例提供的一种检索方法的示意流程图。该方法应用于服务器中。如图1所示,该方法包括步骤S101~S104。S101、获取多个待分词的文本,将每一个待分词的文本进行分词,得到分词结果。在本实施例中,当服务器端接收了由其他终端或服务器发送的海量的中文文本作为基础数据时,服务器端需对所接收的海量中文文本进行分词后再进行存储。在数据库中若以全文的方式存储文档,则服务器端接收到检索的关键词时,不能从数据库中提取到对应的全文文档。这是因为在计算机中只能识别词语,而不能识别整句和全文。服务器端将所获取的中文文本进行分词,确保了后续检索结果的准确性。在一实施例中,如图2所示,步骤S101包括:S1011、按从左至右的顺序从当前的待分词的文本中取出候选词;S1012、在预先存储的词典中查询与每一候选词对应的概率值,并记录每一候选词的左邻词;S1013、计算获取每一候选词的累积概率,及每一候选词的多个左邻词的累积概率,若每一候选词的多个左邻词中存在累积概率为多个左邻词的累积概率中最大值的左邻词,将累积概率中最大值的左邻词作为与候选词对应的最佳左邻词;S1014、以待分词的文本的终点词为起点,从右至左依次输出与每一候选词对应的最佳左邻词,得到与当前的待分词的文本所对应分词结果。在本实施例中,通过基于概率统计模型的分词方法对文本数据进行分词,例如,令C=C1C2...Cm,C是待切分的汉字串,令W=W1W2...Wn,W是切分的结果,Wa,Wb,….Wk是C的所有可能的切分方案。那么,基于概率统计的切分模型就是能够找到目的词串W,使得W满足:P(W|C)=MAX(P(Wa|C),P(Wb|C)...P(Wk|C))的分词模型,上述分词模型得到的词串W即估计概率为最大之词串。即对一个待分词的子串S,按照从左到右的顺序取出全部候选词w1、w2、…、wi、…、wn;获取文本中可能出现的所有词作为候选词,但要满足下列条件,即如果是长度大于1的词,则必须在词典中出现;如果是长度等于1,即为单字,可以不在词典中出现(例如对“有意见分歧”,从左到右进行一遍扫描,得到全部候选词:“有”,“有意”,“意见”,“见”,“分歧”);在词典中查出每个候选词的概率值P(wi),并记录每个候选词的全部左邻词;计算每个本文档来自技高网...

【技术保护点】
1.一种检索方法,其特征在于,包括:获取多个待分词的文本,将每一个待分词的文本进行分词,得到分词结果;将分词结果存储至分布式文档存储数据库,根据每一个待分词的文本及分词结果对应建立索引;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。

【技术特征摘要】
1.一种检索方法,其特征在于,包括:获取多个待分词的文本,将每一个待分词的文本进行分词,得到分词结果;将分词结果存储至分布式文档存储数据库,根据每一个待分词的文本及分词结果对应建立索引;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。2.根据权利要求1所述的检索方法,其特征在于,所述将每一个待分词的文本进行分词,得到与每一个待分词的文本一一对应的分词结果,包括:按从左至右的顺序从当前的待分词的文本中取出候选词;在预先存储的词典中查询与每一候选词对应的概率值,并记录每一候选词的左邻词;计算获取每一候选词的累积概率,及每一候选词的多个左邻词的累积概率,若每一候选词的多个左邻词中存在累积概率为多个左邻词的累积概率中最大值的左邻词,将累积概率中最大值的左邻词作为与候选词对应的最佳左邻词;以待分词的文本的终点词为起点,从右至左依次输出与每一候选词对应的最佳左邻词,得到与当前的待分词的文本所对应分词结果。3.根据权利要求1所述的检索方法,其特征在于,所述根据每一待分词的文本及分词结果对应建立索引,包括:根据分词结果创建索引字典,所述索引字典中包括的每一个词语均对应中文文本的文档编号;将索引字典中包括的词语按照字典序进行排序;将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到索引。4.根据权利要求1所述的检索方法,其特征在于,所述获取索引项对应的查询结果并发送至客户端,包括:获取查询结果中查询分词对应的词语频次;根据查询分词的词语频次对查询结果进行降序排序,得到降序排序结果;将降序排序结果发送至客户端。5.根据权利要求1所述的检索方法,其特征在于,所述若索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端之后,还包括:获取用户所选定的查询结果,根据用户所选定的查询结果及所录入的查询语句作为预先构建的朴素贝叶斯模型的输...

【专利技术属性】
技术研发人员:陈飞
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东,44

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

1