一种对搜索结果进行排序的方法和装置的制作方法

文档序号:6363939阅读:190来源:国知局
专利名称:一种对搜索结果进行排序的方法和装置的制作方法
技术领域
本申请涉及计算机数据处理技术领域,特别是指一种对搜索结果进行排序的方法 和装置。
背景技术
在搜索引擎中,需要根据查询字串的几个词在检索结果(目标字串)中出现的位 置距离来估计检索结果与查询字串的匹配程度,距离近的通常具有更高的匹配程度,因而 获得更加靠前的排名。例如查询字串是“消毒机”,包含“消毒机”的检索结果通常比“消毒 工业洗衣机”更接近用户的意图,而后者又比“消毒设备、脱水器、烘干机”更接近用户的意 图,这都将影响检索结果的排名。计算查询字串的多个词语在目标字串中的距离的一种传统实现方式是最小滑动 窗口,即在目标字串中寻找一个长度尽量小的区间,该区间中包含查询字串的每一个字和 词,用这个区间的长度来描述查询词语在目标字串中的远近。例如查询字串是“我I看I风 景”,目标字串是“我I在I桥I上I看I风景I,I看I风景I的I人I在I桥I下I看 我I。”(竖线代表分词结果)则最小滑动窗口是“我I在I桥I上I看I风景”,长度为6个 词语。另一种计算词语长度的方法是编辑距离,跟最小滑动窗口不一样的是,它并不是 计算单一字串的词语长度,而是计算两个字串间的差异部分的长度之和。例如“我和你”和 “大和小”差异部分共两个词(第一和第三个词),编辑距离为2。目前,通常是根据长度或距离确定查询字串和目标字串的匹配程度,也就是说,如 果最小滑动窗口长度或编辑距离越小,则匹配程度越高,反之则匹配程度低。然而在某些情况下,简单的长度或距离并不能准确地反映匹配程度。例如查询字 串是“诺基亚电池”,检索结果A是“诺基亚电池”,B是“诺基亚手机,赠送电池”,C是“诺基 亚n73手机原装电池”。按照简单的距离计算,A的“诺基亚”和“电池”之间的距离为0,匹 配程度最好;B和C的“诺基亚”和“电池”之间的距离都是3个词,匹配程度都不够好。但 是实际上C的“π73手机”是跟“诺基亚”强烈相关的词语,“原装”也是跟“电池”强烈相关 的词语,虽然中间都是间隔了 3个词,但是C的匹配程度比B高很多。考虑不同词语在距离计算上的不同影响,前人已有一些研究,例如可以根据词性 (POS)来设定词语权重。但是这种根据词性设定权重的方法,仍旧过于简单,没有涉及一个 本质问题,就是查询字串和目标字串语义是否相关,因而得到的长度或距离不能准确地反 映出查询字串和目标字串的匹配程度,即不能保证和查询字串语义相关的目标字串被排在 前面。

发明内容
本申请提供一种对搜索结果进行排序的方法和装置,通过查询字串和目标字串的 语义关联度,能够更准确地对目标字串进行排序,反映出各目标字串与查询字串的匹配程度。本申请提供了一种对搜索结果进行排序的方法,包括服务器预先计算统计样本 中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;服务器对所述查询字串和目标字串分别进行分词,将查询字串的各分词依次与目 标字串的分词两两组合;查询词语权重表,获得每个分词组合的权重值;根据所述权重值获得加权词语长度,根据所述加权词语长度对每个目标字串进行 排序,并反馈给用户终端。其中,所述服务器预先计算统计样本中每两个词语之间的语义关联权重,获得词 语权重表的步骤包括服务器获取统计样本;从所述统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统 计样本中共同出现的次数C(第一词语,第二词语);统计第二词语在统计样本中出现的次数Σ C (Yi,第二词语),其中,所述Yi代表每 个跟第二词语共同出现的词语;计算所述第一词语在第二词语出现条件下的概率P(第一词语I第二词语)= C(第一词语,第二词语)/ Σ C(Yi,第二词语);在查询第二词语时,取第一词语与第二词语的语义相关权重为W= 1-P,其中,所 述W为权重,所述P为第一词语在第二词语出现条件下的概率;重复上述步骤,依次获得所述统计样本中每个词语相对其他词语的语义相关权 重,得到词语权重表。其中,所述统计样本的来源包括任何形式的文本或符号,所述文本包括网页文本、 用户搜索日志、用户点击日志。其中,所述加权词语长度为最小滑动窗口加权长度;根据所述权重值获得加权词语长度对每个目标字串进行排序的步骤包括分别取目标字串的各个分词在查询字串各分词的权重最小值;或者,分别取查询 字串的各个分词在目标字串各分词的权重最小值;对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度;比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之,排序在后。其中,计算每个目标字串的最小滑动窗口加权长度具体包括最小滑动窗口加权长度
权利要求
一种对搜索结果进行排序的方法,其特征在于,服务器预先计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;服务器对所述查询字串和目标字串分别进行分词,将查询字串的各分词依次与目标字串的分词两两组合;查询词语权重表,获得每个分词组合的权重值;根据所述权重值获得加权词语长度,根据所述加权词语长度对每个目标字串进行排序,并反馈给用户终端。
2.根据权利要求1所述的方法,其特征在于,所述服务器预先计算统计样本中每两个 词语之间的语义关联权重,获得词语权重表的步骤包括服务器获取统计样本;从所述统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统计样 本中共同出现的次数C(第一词语,第二词语);统计第二词语在统计样本中出现的次数Σ C (Yi,第二词语),其中,所述Yi代表每个跟 第二词语共同出现的词语;计算所述第一词语在第二词语出现条件下的概率P(第一词语I第二词语)=C(第一 词语,第二词语)/Σ C(Yi,第二词语);在查询第二词语时,取第一词语与第二词语的语义相关权重为W = 1-P,其中,所述W为 权重,所述P为第一词语在第二词语出现条件下的概率;重复上述步骤,依次获得所述统计样本中每个词语相对其他词语的语义相关权重,得 到词语权重表。
3.根据权利要求2所述的方法,其特征在于,所述统计样本的来源包括任何形式的文 本或符号,所述文本包括网页文本、用户搜索日志、用户点击日志。
4.根据权利要求1所述的方法,其特征在于, 所述加权词语长度为最小滑动窗口加权长度;根据所述权重值获得加权词语长度对每个目标字串进行排序的步骤包括 分别取目标字串的各个分词在查询字串各分词的权重最小值;或者,分别取查询字串 的各个分词在目标字串各分词的权重最小值;对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度; 比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之,排序在后。
5.根据权利要求4所述的方法,其特征在于,计算每个目标字串的最小滑动窗口加权 长度具体包括最小滑动窗□加权长度
6.一种对搜索结果进行排序的方法,其特征在于,服务器预先计算统计样本中每两个 词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串; 服务器对所述查询字串和目标字串分别进行分词;服务器根据所述存词语权重表,计算插入的词语相对查询字串各分词的权重最小值; 服务器根据所述词语权重表,计算删除的词语相对目标字串各分词的权重最小值; 根据所述权重最小值计算总的编辑距离,根据所述总的编辑距离对每个目标字串进行 排序,并反馈给用户终端。
7.根据权利要求6所述的方法,其特征在于,所述根据所述词语权重表,计算插入的词 语相对查询字串各分词的权重最小值的步骤包括根据词语权重表,获得插入的词语相对查询字串各分词的权重值; 计算插入的词语相对查询字串各分词的权重最小值为
8.根据权利要求6所述的方法,其特征在于,所述根据所述词语权重表,计算删除的词 语相对目标字串各分词的权重最小值的步骤包括根据词语权重表,获得删除的词语相对目标字串各分词的权重值; 计算删除的词语相对目标字串各分词的权重最小值为
9.根据权利要求6所述的方法,其特征在于,根据所述权重最小值计算总的编辑距离, 对每个目标字串进行排序的步骤包括对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为W总=W^Wd其中,表示总的编辑距离,W1表示插入词语相对查询字串各分词的权重最小值,Wd表 示删除词语相对目标字串各分词的权重最小值;比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
10.根据权利要求6所述的方法,其特征在于,在计算总的编辑距离长度之前,还包括 计算替换词语的编辑距离的权重最小值;根据所述权重最小值计算总的编辑距离,确定查询字串和目标字串的匹配程度的步骤 包括对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为 其中,Wg表示总的编辑距离,W1表示插入词语相对查询字串各分词的权重最小值,Wd表 示删除词语相对目标字串各分词的权重最小值,Wc表示替换词语相对查询字串和/或目标 字串各分词的权重最小值;比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
11.根据权利要求10所述的方法,其特征在于,所述获取替换词语的编辑距离的权重 最小值的方式包括令替换词语的编辑距离的权重最小值等于预设的固定值,或者, 令替换词语的编辑距离等于插入词语相对查询字串各分词的权重最小值与删除词语 相对目标字串各分词的权重最小值之和,或平均值,或两者中的最大值。
12.—种对搜索结果进行排序的装置,其特征在于,包括词语权重表获取模块,用于计算统计样本中每两个词语之间的语义关联权重,获得并 保存词语权重表;词获取模块,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;分词模块,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分 别进行分词;组合模块,用于将查询字串的各分词依次与目标字串的分词两两组合; 查询模块,用于查询所述词语权重表,获得每个分词组合的权重值; 匹配模块,用于根据所述权重值获得加权词语长度,对每个目标字串进行排序,并反馈 给用户终端。
13.根据权利要求12所述的装置,其特征在于,所述词语权重表获取模块包括 样本获取模块,用于获取统计样本;第一统计模块,用于从所述统计样本中选取第一词语和第二词语,统计所述第一词语 和第二词语在统计样本中共同出现的次数C(第一词语,第二词语)第二统计模块,用于统计第二词语在统计样本中出现的次数Σ C(Yi,第二词语),其 中,所述Yi代表每个跟第二词语共同出现的词语;概率计算模块,用于计算所述第一词语在第二词语出现条件下的概率P(第一词语I第 二词语)=C (第一词语,第二词语)/ Σ C (Yi,第二词语)权重计算模块,用于在查询第二词语时,取第一词语与第二词语的语义相关权重为W =1-Ρ,其中,所述W为权重,所述P为第一词语在第二词语出现条件下的概率;生成模块,用于获得所述统计样本中每个词语相对其他词语的语义相关权重后,生成 词语权重表。
14.根据权利要求12所述的装置,其特征在于,当所述加权词语长度为最小滑动窗口 加权长度时,所述匹配模块包括权重最小值获取模块,用于分别取目标字串的各个分词在查询字串各分词的权重最小 值;或者,分别取查询字串的各个分词在目标字串各分词的权重最小值;第一计算模块,用于对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加 权长度;排序模块,用于比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之, 排序在后。
15.一种对搜索结果进行排序的装置,其特征在于,包括词语权重表获取模块,用于计算统计样本中每两个词语之间的语义关联权重,获得并 保存词语权重表;词获取模块,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;分词模块,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分 别进行分词;第一权重最小值计算模块,用于计算插入的词语相对查询字串各分词的权重最小值; 第二权重最小值计算模块,用于计算删除的词语相对目标字串各分词的权重最小值; 匹配模块,用于根据所述权重最小值计算总的编辑距离,对每个目标字串进行排序,并 反馈给用户终端。
16.根据权利要求15所述的装置,其特征在于,所述匹配模块包括第一总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编 辑距离为W总=W^Wd其中,表示总的编辑距离,W1表示插入词语相对查询字串各分词的权重最小值,Wd表 示删除词语相对目标字串各分词的权重最小值;排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之, 排序在后。
17.根据权利要求15所述的装置,其特征在于,所述装置还包括第三权重最小值计算模块,用于在计算总的编辑距离长度之前,获取替换词语的编辑 距离的权重最小值; 所述匹配模块包括第二总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编 辑距离为W总=ff^ff^ffc其中,表示总的编辑距离,W1表示插入词语相对查询字串各分词的权重最小值,Wd表 示删除词语相对目标字串各分词的权重最小值,Wc表示替换词语相对查询字串和/或目标 字串各分词的权重最小值;排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之, 排序在后。
全文摘要
本申请公开了一种对搜索结果进行排序的方法和装置,其中,所述方法包括,服务器预先计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;服务器对所述查询字串和目标字串分别进行分词,将查询字串的各分词依次与目标字串的分词两两组合;查询词语权重表,获得每个分词组合的权重值;根据所述权重值获得加权词语长度,根据所述加权词语长度对每个目标字串进行排序,并反馈给用户终端本申请通过引入表示查询字串和目标字串的语义关联度的词语权重,更准确地反映出了各目标字串与查询字串的匹配程度。在实际应用中应用简单,且效果好。
文档编号G06F17/30GK101957828SQ20091015164
公开日2011年1月26日 申请日期2009年7月20日 优先权日2009年7月20日
发明者侯磊, 张勤, 谢宇恒, 邢飞, 郭宁 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1