一种垂直搜索引擎的查询信息纠错方法和系统的制作方法

文档序号:9787379阅读:624来源:国知局
一种垂直搜索引擎的查询信息纠错方法和系统的制作方法
【技术领域】
[0001]本发明涉及搜索引擎技术领域,特别是涉及一种垂直搜索引擎的查询信息纠错方法和系统。
【背景技术】
[0002]随着现代社会互联网的迅速发展,搜索引擎已经成为人们从拥有海量数据的互联网获取信息的主要方式之一,而用户与搜索引擎交互的方式来自用户输入的查询,查询内容的正确性是提高搜索结果准确性至关重要的因素。所以,搜索引擎的查询纠错对于提高查询结果准确度和改善用户体验有着十分重要的意义。
[0003]对于垂直搜索引擎(例如视频搜索引擎),常见的中文查询错误类型主要有:1、同音别字错误(如:“盗墓笔记”写成“盗墓笔纪” );2、模糊拼音错误(如:“北京爱情故事”写成“北金爱情故事”);3、多字少字错误(如:“快乐大本营”写成“快大本营”);4、形近字错误(如:“西游记”写成“酉游记”);5、语义错误(如:“明日边缘”写成“昨日边缘”)。
[0004]针对以上错误类型,常见的垂直搜索引擎查询信息纠错方法主要有以下几种:
[0005]第一种,基于最小编辑距离的纠错方法,该纠错方法是根据用户输入的查询信息,在词典中找到最相似(即编辑距离最小)的正确查询信息进行纠错。该方法一方面在查找最小编辑距离的候选查询信息时需要大量的计算;另一方面,编辑距离最小的候选查询信息存在多个时,无法很好的解决“歧义”的问题。可见,第一种纠错方法不仅计算量大、且纠错准确性低。
[0006]第二种,基于N-Gram和HMM(隐马尔可夫模型,Hidden Markov Model)等模型的查询纠错方法。基于模型的纠错方法需要对大量的数据进行训练才能得到模型,这种方法纠错的准确性很大程度上依赖于训练数据的准确性和规模。可见,若无法保证模型的规模以及训练数据的准确性,则这种基于模型的查询纠错方法的准确性也较低。
[0007]第三种,基于纠错词典,该方法在纠错词典中收集所有的错误查询信息和相应的正确查询信息,当用户输入查询信息时,检索查询信息(或者查询的子串)是否在该纠错词典中,如果在纠错词典中则用对应的正确查询信息替换。根据纠错词典条目创建的方式又可以分为:拼音纠错词典,用以解决错误类型I和2的错误;多字少字纠错词典,用以解决错误类型3的错误;其他纠错词典。
[0008]基于纠错词典的方法的特点是算法简单、效率高、准确率高;缺点是召回率低(很难保证纠错词典完整,只有出现在纠错词典中的查询信息才能纠错)、纠错词典难构建。拼音纠错词典和多字少字纠错词典相对来说好构建,基于分词词典即可构建出来,能较好的解决错误类型1、2和3。但是,对于错误类型4和5,无法进行有效准确的纠错,纠错准确性低。
[0009]可见,现有的垂直搜索引擎的查询信息纠错方案,无法适用于全部错误类型,即便是勉强能够进行纠错但纠错准确性低。

【发明内容】

[0010]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的垂直搜索引擎的查询信息纠错方法和系统。
[0011]为了解决上述问题,本发明公开了一种垂直搜索引擎的查询信息纠错方法,包括:将用户输入的查询信息进行分词;初始化游标后按照设定规则以分词为单位移动所述游标,得到子查询信息;其中,所述查询信息包含多个子查询信息,每个子查询信息包含至少一个分词;从纠错词典中获取所述子查询信息对应的纠错信息;其中,所述纠错词典依据初始别字表以及通过分析查询日志得到的扩充别字表创建生成;采用所述纠错信息替换所述查询信息中的所述子查询信息得到纠错后的查询信息;判断通过移动所述游标遍历所述查询信息的操作是否结束;若否,则返回执行所述通过按照设定规则移动所述游标得到子查询信息的步骤;若是,则将所述纠错的查询信息作为用户输入的查询信息的纠错结果。
[0012]优选地,所述方法还包括:接收输入的初始别字表;通过对设定时间段内的查询日志进行分析,确定扩充别字表;将所述初始别字表与所述扩充别字表整合为纠错别字表;通过所述纠错别字表以及所述设定时间段内的查询日志中包含的各查询信息生成所述纠错词典。
[0013]优选地,所述通过对设定时间段内的查询日志进行分析,确定扩充别字表的步骤包括:从所述设定时间段内的查询日志中确定各查询对应的五元组,其中,五元组包括以下:正确查询信息、正确查询信息输入的频次、错误查询信息、错误查询信息输入的频次以及查询信息的长度;针对每个查询,依据所述查询对应的五元组包含的参数对所述查询进行筛选;分别将筛选后剩余的查询中包含的正确查询信息以及错误查询信息进行比对,以确定别字对;将各别字对组合生成所述扩充别字表。
[0014]优选地,所述方法还包括:通过对设定时间段内的查询日志进行分析,确定扩充别字对;将所述扩充别字对与所述纠错别字表进行整合,得到更新后的纠错别字表;通过所述更新后的纠错别字表、以及所述设定时间段内的中包含的各查询信息生成纠错信息对;将所述纠错信息对添加到所述纠错词典中,以实现对所述纠错词典的扩充。
[0015]优选地,在所述将用户输入的查询信息进行分词的步骤之前,所述方法还包括:判断用户输入的所述查询信息是否在纠错黑名单中;若在所述纠错黑名单中,则不对用户输入的所述查询信息进行纠错;若不在所述纠错黑名单中,则执行所述将用户输入的查询信息进行分词的操作。
[0016]优选地,所述纠错黑名单通过手动输入生成;或者,所述纠错黑名单通过以下步骤生成:获取设定时间段内的全部查询对应的历史点击信息,其中,每个查询对应的点击信息包括:用户输入的查询信息、纠错后查询信息、纠错后用户点击输入的查询信息的点击率、用户点击纠错后的查询信息的点击率;针对每个查询,当所述纠错后用户点击输入的查询信息的点击率大于第一设定阈值、且所述用户点击纠错后的查询信息的点击率小于第二设定阈值时,则将所述查询对应的用户输入的查询信息添加到黑名单中。
[0017]优选地,在所述初始化游标后按照设定规则以分词为单位移动所述游标得到子查询信息的步骤之后,所述方法还包括:判断所述子查询信息是否在分词保护表中,其中,所述分词保护表中包括无需进行纠错的子查询信息;若是,则执行所述判断通过移动所述游标遍历所述查询信息的操作是否结束的步骤;若否,则执行所述从纠错词典中获取所述子查询信息对应的纠错信息的步骤。
[0018]为了解决上述问题,本发明还公开了一种垂直搜索引擎的查询信息纠错系统,包括:分词模块,用于将用户输入的查询信息进行分词;游标模块,用于初始化游标后按照设定规则以分词为单位移动所述游标,得到子查询信息;其中,所述查询信息包含多个子查询信息,每个子查询信息包含至少一个分词;纠错信息获取模块,用于从纠错词典中获取所述子查询信息对应的纠错信息;其中,所述纠错词典依据初始别字表以及通过分析查询日志得到的扩充别字表创建生成;替换模块,用于采用所述纠错信息替换所述查询信息中的所述子查询信息得到纠错后的查询信息;第一判断模块,用于判断通过移动所述游标遍历所述查询信息的操作是否结束;执行模块,用于若所述第一判断模块的判断结果为否时,则调用所述游标模块;用于若所述第一判断模块的判断结果为是时,则将所述纠错的查询信息作为用户输入的查询信息的纠错结果。
[0019]优选地,所述垂直搜索引擎的查询信息纠错系统还包括:接收模块,用于接收输入的初始别字表;第一扩充模块,用于通过对设定时间段内的查询日志进行分析,确定扩充别字表;第一整合模块,用于将所述初始别字表与所述扩充别字表整合为纠错别字表;纠错词典生成模块,用于通过所述纠错别字表以及所述设定时间段内的查询日志中包含的各查询信息生成所述纠错词典。
[0020]优选地,所述第一扩充模块具体用于:从所述设定时间段内的查询日志中确定各查询对应的五元组,其中,五元组包括以下:正确查询信息、正确查询信息输入的频次、错误查询信息、错误查询信息输入的频次以及查询信息的长度;针对每个查询,依据所述查询对应的五元组包含的参数对所述查询进行筛选;分别将筛选后剩余的查询中包含的正确查询信息以及错误查询信息进行比对,以确定别字对;将各别字对组合生成所述扩充别字表。
[0021]优选地,所述垂直搜索引擎的查询信息纠错系统还包括:第二扩充模块,用于通过对设定时间段内的查询日志进行分析,确定扩充别字对;第二整合模块,用于将所述扩充别字对与所述纠错别字表进行整合,得到更新后的纠错别字表;纠错信息对生成模块,用于通过所述更新后的纠错别字表、以及所述设定时间段内的中包含的各查询信息生成纠错信息对;纠错词典扩充模块,用于将所述纠错信息对添加到所述纠错词典中,以实现对所述纠错词典的扩充。
[0022]优选地,所述垂直搜索引擎的查询信息纠错系统还包括:第二判断模块,用于在所述分词模块将用户输入的查询信息进行分词之前,判断用户输入的所述查询信息是否在纠错黑名单中;第二执行模块,用于若在所述纠错黑名单中,则不对用户输入的所述查询信息进行纠错;若不在所述纠错黑名单中,则调用所述分词模块。
[0023]优选地,所述垂直搜索引擎的查询信息纠错系统还包括:纠错黑名单接收模块,用于手动输入的所述纠错黑名单;或者,纠错黑名单生成模块,用于获取设定时间段内的全部查询对应的历史点击信息,其中,每个查询对应的点击信息包括:用户输入的查询信息、纠错后查询信息、纠错后用户点击输入的查询信息的点击率、用户点击纠错后的查询信息的点击率;针对每个查询,当所述纠错后用户点击输入的查询信息的点击率大于第一设定阈值、且所述用户点击纠错后的查询信息的点击率小于第二设定阈值时,则将所述查询对应的用户输入的查询信息添加到黑名单中。
[0024]优选地,所述垂直搜索引擎的查询信息纠错系统还包括:第三判断模块,用于在所述游标模块按照设定规则以分词为单位移动所述游标得到子查询信息之后,判断所述子查询信息是否在分词保护表中,其中,所述分词保护表中包括无需进行纠错的子查询信息;第三执行模块,用于若所述第三判判断模块的判断结果为是,则调用
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1