一种ES搜索引擎的拼写纠错方法及系统技术方案

技术编号:14173603 阅读:158 留言:0更新日期:2016-12-13 01:46
本发明专利技术公开了一种ES搜索引擎的拼写纠错方法及系统,涉及信息技术领域,所述方法包括采用ansj分词器将用户输入的拼写内容分为若干个词条;对每一个词条依次进行错误检测,若存在错误词条,则在错误模型库中查找与错误词条匹配的错误模型,并在匹配的错误模型中获取与错误词条对应的纠正候选词;根据匹配的错误模型计算每个纠正候选词在每种匹配的错误模型下的得分,并根据每种匹配的错误模型下的得分构成得分向量;采用L2R模型对得分向量进行处理,生成错误模型的评分,并根据错误模型的评分和语言模型确定出每个纠正候选词的总分;确定总分中得分最高的纠正候选词作为正确的候选词进行显示。本发明专利技术提高了拼写纠错的准确度。

Spelling correction method and system for ES search engine

The invention discloses a spelling error correction method and system ES search engine, relates to the field of information technology, the method includes the segmentation ansj user input spelling content is divided into a plurality of entries; followed by error detection for each entry, if there is wrong entries, error model search in error model library with the entry error matching, and obtain the correct candidate words and wrong entries in the corresponding error model matching; correct calculation of each candidate word in each matching error model of the error model, according to the score, and according to each kind of matching error model scores constitute score vector using L2R model; to deal with the score vector, generating an error model of the score, and according to the error model and the language model score is determined to correct each candidate word to determine the total score; The candidate words in the correct score the highest correct candidate words as display. The invention improves the accuracy of spelling error correction.

【技术实现步骤摘要】

本专利技术涉及信息
,尤其涉及一种ES搜索引擎的拼写纠错方法及系统
技术介绍
Elastic Search(简称ES)是一个基于Lucene的搜索服务器,其提供了一个分布式多用户能力的全文搜索引擎,是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。目前,搜索引擎中的拼写纠错,也称拼写检查,是一种被各类搜索引擎广泛应用的功能,能够根据用户输入的错误的查询内容返回正确的查询请求。现有技术中的拼写纠错方法通常为:依据用户的搜索日志统计提供纠错词后用户点击输入查询词的搜索结果的次数、用户点击纠错词的次数以及点击纠错词的搜索结果的次数;利用统计的用户点击输入查询词的搜索结果的次数、用户点击纠错词的次数以及点击纠错词的搜索结果的次数计算纠错词的纠错优劣值,并依据纠错优劣值生成纠错词的检测结果。但上述现有技术中,只是根据用户的搜索日志进行统计的,若用户的搜索日志不全面,或用户的搜索日志内也存在错误词,则会导致检测结果不准确,即拼写纠错的准确度低。
技术实现思路
有鉴于此,本专利技术提供一种ES搜索引擎的拼写纠错方法及系统,其在扩展纠错种类的同时,提高了拼写纠错的准确度。本专利技术通过以下技术手段解决上述问题:本专利技术的一种ES搜索引擎的拼写纠错方法,包括:采用ansj分词器将用户输入的拼写内容分为若干个词条,其中,所述拼写内容包括拼音、汉字或英文;对每一个词条依次进行错误检测,若存在错误词条,则在错误模型库中查找与所述错误词条匹配的错误模型,并在匹配的错误模型中获取与所述错误词条对应的纠正候选词;根据匹配的错误模型计算每个纠正候选词在每种匹配的错误模型下的得分,并根据每种匹配的错误模型下的得分构成得分向量;采用L2R模型对每个纠正候选词的得分向量进行处理,生成错误模型的评分,并根据所述错误模型的得分和语言模型确定出每个纠正候选词的总分;确定每个纠正候选词的总分中得分最高的纠正候选词,并将得分最高的纠正候选词作为正确的候选词进行显示。进一步,所述语言模型为纠正候选词在文档中的出现次数与文档中所有字数的比值。进一步,所述错误模型库包括拼音索引模型;所述拼音索引模型IndexInput_PY=<PingYin,word1,word2......wordn>;其中,IndexInput_PY为拼音索引模型,PingYin是纠正候选词的拼音,word为拼音对应的汉字,n为大于等于1的整数。进一步,所述错误模型库还包括编辑距离模型;所述编辑距离模型其中,P1(w|c)为编辑距离模型,w为错误词条,c为正确的纠正候选词,Distedit(w,c)为错误词条到正确的纠正候选词之间的编辑距离,length(w)为错误词条的长度,length(c)为正确的纠正候选词的长度,MAX为取最大值。进一步,所述错误模型库还包括英文语音纠错模型,所述英文语音纠错模型是根据英文发音分别计算纠错候选词为英文的英语读音编码和错误词条为英文的英语读音编码,当c与w的英语读音编码相同时,则P2(w|c)=1;当c与w的英语读音编码不相同时,则P2(w|c)=0;其中,P2(w|c)为英文语音纠错模型,所述英语读音编码为Double Metaphone Code。进一步,所述错误模型库还包括汉语的拼音纠错模型;采用开源项目pinyin4j将纠正候选词为汉字的转化为汉语拼音,将错误词条为汉字的转化为汉语拼音,并根据所述编辑距离模型计算错误词条到正确的纠正候选词的汉语拼音之间的编辑距离,得到汉语的拼音纠错模型P3(w|c)。进一步,所述错误模型库还包括受控词汇纠错模型;将正确的纠正候选词与对应的受控词一一对应存储在受控词汇列表中,并记录P(s|c)=1,其中,P(s|c)为受控词汇纠错模型。进一步,所述错误模型库还包括用户日志纠错;根据预设时间间隔确定出用户日志的查询时间段,并通过所述编辑距离模型查找每个查询时间段内用户日志中的相似词,并根据预先存储的词频信息确定正确的候选纠错词与错误词条对,得到用户日志纠错模型其中,P3(w|c)为用户日志纠错模型,P(w,c)为用户日志中正确的候选纠错词与错误词条同时出现的概率,P(c)为用户日志中正确的候选纠错词出现的概率。本专利技术的一种ES搜索引擎的拼写纠错方法具有以下有益效果:本专利技术提供了一种ES搜索引擎的拼写纠错方法,若确定有错误词条,则在错误模型库中查找与错误词条匹配的错误模型,并在匹配的错误模型中获取与错误词条对应的纠正候选词,计算每个纠正候选词在每种匹配的错误模型下的得分,得到得分向量,最后采用L2R模型对得分向量进行处理,生成错误模型的评分,并根据错误模型的得分和语言模型确定出每个纠正候选词的总分,并将总分中得分最高的纠正候选词作为正确的候选词进行显示,从而实现了拼写纠错过程,上述拼写纠错过程中,结合了错误模型库中的多种错误模型,使得纠正错误的种类更加全面,同时采用L2R模型得出得分向量的评分,再根据得分向量的评分和语言模型最终确定出的每个纠正候选词的总分,且最终将得分最高的纠正候选词作为正确的候选词进行显示,提高了拼写纠错的准确度。综上所述,本专利技术在扩展纠错种类的同时,提高了拼写纠错的准确度。本专利技术的一种ES搜索引擎的拼写纠错系统,包括:处理单元,用于采用ansj分词器将用户输入的拼写内容分为若干个词条,其中,所述拼写内容包括拼音、汉字或英文;检测单元,用于对每一个词条依次进行错误检测,若存在错误词条,则在错误模型库中查找与所述错误词条匹配的错误模型,并在匹配的错误模型中获取与所述错误词条对应的纠正候选词;计算单元,用于根据匹配的错误模型计算每个纠正候选词在每种匹配的错误模型下的得分,并根据每种匹配的错误模型下的得分构成得分向量;确定单元,采用L2R模型对每个纠正候选词的得分向量进行处理,生成错误模型的评分,并根据所述错误模型的得分和语言模型确定出每个纠正候选词的总分;所述确定单元,还用于确定每个纠正候选词的总分中得分最高的纠正候选词,并将得分最高的纠正候选词作为正确的候选词进行显示。进一步,所述错误模型库包括拼音索引模型、编辑距离模型、英文语音纠错模型、汉语的拼音纠错模型、受控词汇纠错模型和用户日志纠错模型中的至少一种。本专利技术的一种ES搜索引擎的拼写纠错系统具有以下有益效果:本专利技术提供了一种ES搜索引擎的拼写纠错系统,若确定有错误词条,则在错误模型库中查找与错误词条匹配的错误模型,并在匹配的错误模型中获取与错误词条对应的纠正候选词,计算每个纠正候选词在每种匹配的错误模型下的得分,得到得分向量,最后采用L2R模型对得分向量进行处理,生成错误模型的评分,并根据错误模型的得分和语言模型确定出每个纠正候选词的总分,并将总分中得分最高的纠正候选词作为正确的候选词进行显示,从而实现了拼写纠错过程,上述拼写纠错过程中,结合了错误模型库中的多种错误模型,使得纠正错误的种类更加全面,同时采用L2R模型得出得分向量的评分,再根据得分向量的评分和语言模型最终确定出的每个纠正候选词的总分,且最终将得分最高的纠正候选词作为正确的候选词进行显示,提高了拼写纠错的准确度。综上所述,本专利技术在扩展纠错种类的同时,提高了拼写纠错的准确度。附图说明图1是本专利技术提供的一种ES搜索引擎的本文档来自技高网...
一种ES搜索引擎的拼写纠错方法及系统

【技术保护点】
一种ES搜索引擎的拼写纠错方法,其特征在于,包括:采用ansj分词器将用户输入的拼写内容分为若干个词条,其中,所述拼写内容包括拼音、汉字或英文;对每一个词条依次进行错误检测,若存在错误词条,则在错误模型库中查找与所述错误词条匹配的错误模型,并在匹配的错误模型中获取与所述错误词条对应的纠正候选词;根据匹配的错误模型计算每个纠正候选词在每种匹配的错误模型下的得分,并根据每种匹配的错误模型下的得分构成得分向量;采用L2R模型对每个纠正候选词的得分向量进行处理,生成错误模型的评分,并根据所述错误模型的得分和语言模型确定出每个纠正候选词的总分;确定每个纠正候选词的总分中得分最高的纠正候选词,并将得分最高的纠正候选词作为正确的候选词进行显示。

【技术特征摘要】
1.一种ES搜索引擎的拼写纠错方法,其特征在于,包括:采用ansj分词器将用户输入的拼写内容分为若干个词条,其中,所述拼写内容包括拼音、汉字或英文;对每一个词条依次进行错误检测,若存在错误词条,则在错误模型库中查找与所述错误词条匹配的错误模型,并在匹配的错误模型中获取与所述错误词条对应的纠正候选词;根据匹配的错误模型计算每个纠正候选词在每种匹配的错误模型下的得分,并根据每种匹配的错误模型下的得分构成得分向量;采用L2R模型对每个纠正候选词的得分向量进行处理,生成错误模型的评分,并根据所述错误模型的得分和语言模型确定出每个纠正候选词的总分;确定每个纠正候选词的总分中得分最高的纠正候选词,并将得分最高的纠正候选词作为正确的候选词进行显示。2.如权利要求1所述的一种ES搜索引擎的拼写纠错方法,其特征在于,所述语言模型为纠正候选词在文档中的出现次数与文档中所有字数的比值。3.如权利要求2所述的一种ES搜索引擎的拼写纠错方法,其特征在于,所述错误模型库包括拼音索引模型;所述拼音索引模型IndexInput_PY=<PingYin,word1,word2......wordn>;其中,IndexInput_PY为拼音索引模型,PingYin是纠正候选词的拼音,word为拼音对应的汉字,n为大于等于1的整数。4.如权利要求3所述的一种ES搜索引擎的拼写纠错方法,其特征在于,所述错误模型库还包括编辑距离模型;所述编辑距离模型其中,P1(w|c)为编辑距离模型,w为错误词条,c为正确的纠正候选词,Distedit(w,c)为错误词条到正确的纠正候选词之间的编辑距离,length(w)为错误词条的长度,length(c)为正确的纠正候选词的长度,MAX为取最大值。5.如权利要求4所述的一种ES搜索引擎的拼写纠错方法,其特征在于,所述错误模型库还包括英文语音纠错模型,所述英文语音纠错模型是根据英文发音分别计算纠错候选词为英文的英语读音编码和错误词条为英文的英语读音编码,当c与w的英语读音编码相同时,则P2(w|c)=1;当c与w的英语读音编码不相同时,则P2(w|c)=0;其中,P2(w|c)为英文语音纠错模型,所述英语读音编码为Double Metaphone Code。6...

【专利技术属性】
技术研发人员:刘桂良赖旦冉杨国辉宣明
申请(专利权)人:广州智索信息科技有限公司
类型:发明
国别省市:广东;44

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

1