CN101957828B - 一种对搜索结果进行排序的方法和装置 - Google Patents

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

Info

Publication number
CN101957828B
CN101957828B CN2009101516473A CN200910151647A CN101957828B CN 101957828 B CN101957828 B CN 101957828B CN 2009101516473 A CN2009101516473 A CN 2009101516473A CN 200910151647 A CN200910151647 A CN 200910151647A CN 101957828 B CN101957828 B CN 101957828B
Authority
CN
China
Prior art keywords
word
word string
participle
string
weight
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2009101516473A
Other languages
English (en)
Other versions
CN101957828A (zh
Inventor
谢宇恒
邢飞
郭宁
侯磊
张勤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN2009101516473A priority Critical patent/CN101957828B/zh
Priority to US12/804,229 priority patent/US8856098B2/en
Priority to PCT/US2010/002000 priority patent/WO2011011046A1/en
Priority to EP10802539.6A priority patent/EP2457151A4/en
Priority to JP2012521611A priority patent/JP5597255B2/ja
Publication of CN101957828A publication Critical patent/CN101957828A/zh
Priority to HK11104094.4A priority patent/HK1149823A1/xx
Application granted granted Critical
Publication of CN101957828B publication Critical patent/CN101957828B/zh
Priority to US14/473,677 priority patent/US9317591B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本申请公开了一种对搜索结果进行排序的方法和装置,其中,所述方法包括,服务器预先计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括:服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;服务器对所述查询字串和目标字串分别进行分词,将查询字串的各分词依次与目标字串的分词两两组合;查询词语权重表,获得每个分词组合的权重值;根据所述权重值获得加权词语长度,根据所述加权词语长度对每个目标字串进行排序,并反馈给用户终端本申请通过引入表示查询字串和目标字串的语义关联度的词语权重,更准确地反映出了各目标字串与查询字串的匹配程度。在实际应用中应用简单,且效果好。

Description

一种对搜索结果进行排序的方法和装置
技术领域
本申请涉及计算机数据处理技术领域,特别是指一种对搜索结果进行排序的方法和装置。
背景技术
在搜索引擎中,需要根据查询字串的几个词在检索结果(目标字串)中出现的位置距离来估计检索结果与查询字串的匹配程度,距离近的通常具有更高的匹配程度,因而获得更加靠前的排名。例如查询字串是“消毒机”,包含“消毒机”的检索结果通常比“消毒工业洗衣机”更接近用户的意图,而后者又比“消毒设备、脱水器、烘干机”更接近用户的意图,这都将影响检索结果的排名。
计算查询字串的多个词语在目标字串中的距离的一种传统实现方式是最小滑动窗口,即在目标字串中寻找一个长度尽量小的区间,该区间中包含查询字串的每一个字和词,用这个区间的长度来描述查询词语在目标字串中的远近。例如查询字串是“我|看|风景”,目标字串是“我|在|桥|上|看|风景|,|看|风景|的|人|在|桥|下|看|我|。”(竖线代表分词结果)则最小滑动窗口是“我|在|桥|上|看|风景”,长度为6个词语。
另一种计算词语长度的方法是编辑距离,跟最小滑动窗口不一样的是,它并不是计算单一字串的词语长度,而是计算两个字串间的差异部分的长度之和。例如“我和你”和“大和小”差异部分共两个词(第一和第三个词),编辑距离为2。
目前,通常是根据长度或距离确定查询字串和目标字串的匹配程度,也就是说,如果最小滑动窗口长度或编辑距离越小,则匹配程度越高,反之则匹配程度低。
然而在某些情况下,简单的长度或距离并不能准确地反映匹配程度。例如查询字串是“诺基亚电池”,检索结果A是“诺基亚电池”,B是“诺基亚手机,赠送电池”,C是“诺基亚n73手机原装电池”。按照简单的距离计算,A的“诺基亚”和“电池”之间的距离为0,匹配程度最好;B和C的“诺基亚”和“电池”之间的距离都是3个词,匹配程度都不够好。但是实际上C的“n73手机”是跟“诺基亚”强烈相关的词语,“原装”也是跟“电池”强烈相关的词语,虽然中间都是间隔了3个词,但是C的匹配程度比B高很多。
考虑不同词语在距离计算上的不同影响,前人已有一些研究,例如可以根据词性(POS)来设定词语权重。但是这种根据词性设定权重的方法,仍旧过于简单,没有涉及一个本质问题,就是查询字串和目标字串语义是否相关,因而得到的长度或距离不能准确地反映出查询字串和目标字串的匹配程度,即不能保证和查询字串语义相关的目标字串被排在前面。
发明内容
本申请提供一种对搜索结果进行排序的方法和装置,通过查询字串和目标字串的语义关联度,能够更准确地对目标字串进行排序,反映出各目标字串与查询字串的匹配程度。
本申请提供了一种对搜索结果进行排序的方法,包括:服务器预先计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括:
服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
服务器对所述查询字串和目标字串分别进行分词,将查询字串的各分词依次与目标字串的分词两两组合;
查询词语权重表,获得每个分词组合的权重值;
根据所述权重值获得加权词语长度,根据所述加权词语长度对每个目标字串进行排序,并反馈给用户终端。
其中,所述服务器预先计算统计样本中每两个词语之间的语义关联权重,获得词语权重表的步骤包括:
服务器获取统计样本;
从所述统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统计样本中共同出现的次数C(第一词语,第二词语);
统计第二词语在统计样本中出现的次数∑C(Yi,第二词语),其中,所述Yi代表每个跟第二词语共同出现的词语;
计算所述第一词语在第二词语出现条件下的概率P(第一词语|第二词语)=C(第一词语,第二词语)/∑C(Yi,第二词语);
在查询第二词语时,取第一词语与第二词语的语义相关权重为W=1-P,其中,所述W为权重,所述P为第一词语在第二词语出现条件下的概率;
重复上述步骤,依次获得所述统计样本中每个词语相对其他词语的语义相关权重,得到词语权重表。
其中,所述统计样本的来源包括任何形式的文本或符号,所述文本包括网页文本、用户搜索日志、用户点击日志。
其中,所述加权词语长度为最小滑动窗口加权长度;
根据所述权重值获得加权词语长度对每个目标字串进行排序的步骤包括:
分别取目标字串的各个分词在查询字串各分词的权重最小值;或者,分别取查询字串的各个分词在目标字串各分词的权重最小值;
对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度;
比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之,排序在后。
其中,计算每个目标字串的最小滑动窗口加权长度具体包括:
最小滑动窗口加权长度 Σ i = k h W i = Σ i = k h min j = 1 m w ( T i , Q j ) ,
其中,W表示权重,Ti表示目标字串中的第i个的分词,k、h分别表示目标字串最小滑动窗口的起始位置和结束位置,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数。
本申请还提供了一种对搜索结果进行排序的方法,服务器预先计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括:
服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
服务器对所述查询字串和目标字串分别进行分词;
服务器根据所述存词语权重表,计算插入的词语相对查询字串各分词的权重最小值;
服务器根据所述存词语权重表,计算删除的词语相对目标字串各分词的权重最小值;
根据所述权重最小值计算总的编辑距离,根据所述总的编辑距离对每个目标字串进行排序,并反馈给用户终端。
其中,所述根据所述词语权重表,计算插入的词语相对查询字串各分词的权重最小值的步骤包括:
根据词语权重表,获得插入的词语相对查询字串各分词的权重值;
计算插入的词语相对查询字串各分词的权重最小值为
Σ t = 1 n w I = Σ t = 1 n min j = 1 m w ( I t , Q j )
其中,W表示权重,It表示插入字串中的第t个的分词,n分别表示插入分词的个数,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数。
其中,所述根据所述词语权重表,计算删除的词语相对目标字串各分词的权重最小值的步骤包括:
根据词语权重表,获得删除的词语相对目标字串各分词的权重值;
计算删除的词语相对目标字串各分词的权重最小值为
Σ d = 1 p w D = Σ d = 1 p min i = 1 q w ( T i , D d )
其中,W表示权重,Ti表示目标字串中的第i个的分词,q表示目标字串分词的个数,Dd表示删除词语中的第d个分词,p表示删除分词的个数。
其中,根据所述权重最小值计算总的编辑距离,对每个目标字串进行排序的步骤包括:
对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:
W=WI+WD
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值;
比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
其中,在计算总的编辑距离长度之前,还包括:计算替换词语的编辑距离的权重最小值;
根据所述权重最小值计算总的编辑距离,确定查询字串和目标字串的匹配程度的步骤包括:
对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:
W=WI+WD+WC
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值,WC表示替换词语相对查询字串和/或目标字串各分词的权重最小值;
比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
其中,所述获取替换词语的编辑距离的权重最小值的方式包括:
令替换词语的编辑距离的权重最小值等于预设的固定值,或者,
令替换词语的编辑距离等于插入词语相对查询字串各分词的权重最小值与删除词语相对目标字串各分词的权重最小值之和,或平均值,或两者中的最大值。
本申请还提供了一种对搜索结果进行排序的装置,包括:
词语权重表获取模块,用于计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表;
词获取模块,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
分词模块,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分别进行分词;
组合模块,用于将查询字串的各分词依次与目标字串的分词两两组合;
查询模块,用于查询所述词语权重表,获得每个分词组合的权重值;
匹配模块,用于根据所述权重值获得加权词语长度,对每个目标字串进行排序,并反馈给用户终端。
其中,所述词语权重表获取模块包括:
样本获取模块,用于获取统计样本;
第一统计模块,用于从所述统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统计样本中共同出现的次数C(第一词语,第二词语)
第二统计模块,用于统计第二词语在统计样本中出现的次数∑C(Yi,第二词语),其中,所述Yi代表每个跟第二词语共同出现的词语;
概率计算模块,用于计算所述第一词语在第二词语出现条件下的概率P(第一词语|第二词语)=C(第一词语,第二词语)/∑C(Yi,第二词语)
权重计算模块,用于在查询第二词语时,取第一词语与第二词语的语义相关权重为W=1-P,其中,所述W为权重,所述P为第一词语在第二词语出现条件下的概率;
生成模块,用于获得所述统计样本中每个词语相对其他词语的语义相关权重后,生成词语权重表。
其中,当所述加权词语长度为最小滑动窗口加权长度时,所述匹配模块包括:
权重最小值获取模块,用于分别取目标字串的各个分词在查询字串各分词的权重最小值;或者,分别取查询字串的各个分词在目标字串各分词的权重最小值;
第一计算模块,用于对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度;
排序模块,用于比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之,排序在后。
本申请还提供了一种对搜索结果进行排序的装置,包括:
词语权重表获取模块,用于计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表;
词获取模块,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
分词模块,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分别进行分词;
第一权重最小值计算模块,用于计算插入的词语相对查询字串各分词的权重最小值;
第二权重最小值计算模块,用于计算删除的词语相对目标字串各分词的权重最小值;
匹配模块,用于根据所述权重最小值计算总的编辑距离,对每个目标字串进行排序,并反馈给用户终端。
其中,所述匹配模块包括:
第一总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:W=WI+WD
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值;
排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
其中,所述装置还包括:
第三权重最小值计算模块,用于在计算总的编辑距离长度之前,获取替换词语的编辑距离的权重最小值;
所述匹配模块包括:
第二总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:W=WI+WD+WC
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值,WC表示替换词语相对查询字串和/或目标字串各分词的权重最小值;
排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
应用本申请,相对传统的简单的词语长度或距离的计算没有考虑目标字串中的词语跟查询词语的语义关联程度,本申请通过引入表示查询字串和目标字串的语义关联度的词语权重,更准确地对目标字串进行排序,将与查询字串语义相关的目标字串排在前面,反映出了各目标字串与查询字串的匹配程度。在实际应用中应用简单,且效果好。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的获得词语权重表的流程图;
图2是根据本申请实施例的一种对搜索结果进行排序的方法流程图;
图3是根据本申请实施例的另一种对搜索结果进行排序的方法流程图;
图4是根据本申请实施例的一种对搜索结果进行排序的装置示意图;
图5是根据本申请实施例的另一种对搜索结果进行排序的装置示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请在计算词语距离或词语长度中加入了语义因素,考虑了查询字串和目标字串之间的语义关联,更好地衡量了查询字串和目标字串的匹配程度,使得搜索引擎中的搜索结果可以得到更合理的排名。当然,本申请可以应用在任何计算字串匹配度的地方,并不局限于搜索引擎。
由于本申请考虑的字串之间的语义,因而需要每两个词语之间的语义关联权重,下面首先说明如何获得每两个词语之间的语义关联权重,获得词语权重表,参见图1,具体包括如下步骤:
步骤101,服务器获取统计样本;该统计样本的来源包括任何形式的文本或符号,其中,所述文本包括网页文本、用户搜索日志、用户点击日志等。
通常来说,如果统计样本中第一词语和第二词语共同出现的次数越多,说明第一词语和第二词语越相关。例如,在文本中“诺基亚”和“手机”经常共同出现,或者用户经常搜索“诺基亚”然后点击了带有“手机”的结果,都能在某种程度表示“诺基亚”和“手机”高度相关,因而如果用户搜索“诺基亚”时,结果中含有“手机”对我们来说不是个意外。
步骤102,从统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统计样本中共同出现的次数C(第一词语,第二词语);
例如,统计“手机”和“诺基亚”的共现次数C(手机,诺基亚),并且于是可以得出,最后输出所有词语(在搜索每个词语时)的权重。
步骤103,统计第二词语在统计样本中出现的次数∑C(Yi,第二词语),其中,所述Yi代表每个跟第二词语共同出现的词语;
例如,统计“诺基亚”和其它词语共现的总次数即“诺基亚”的出现总次数)∑C(Yi,诺基亚),其中Yi代表每个跟“诺基亚”共现的词语。
步骤104,计算第一词语在第二词语出现条件下的概率P(第一词语|第二词语)=C(第一词语,第二词语)/∑C(Yi,第二词语);
例如,可以得到“手机”在“诺基亚”出现条件下的概率P(手机|诺基亚)=C(手机,诺基亚)/∑C(Yi,诺基亚)。
步骤105,当查询第二词语时,取第一词语与第二词语的语义相关权重为W=1-P;其中,W为权重,P为第一词语在第二词语出现条件下的概率。
例如,取W=1-P作为查询“诺基亚”时,“手机”和“诺基亚”的语义相关权重。
本例中权重采用的是1减去第一词语在第二词语出现下的条件概率,在其他实施例中也可以采用其他方式表示权重,如直接用P作为权重等等。
步骤106,判断统计样本中是否所有词语都处理完毕,是则执行步骤107,否则重复上述步骤,依次获得所述统计样本中每个词语相对其他词语的语义相关权重,
步骤107,输出包含统计样本中每个词语相对其他词语的语义相关权重,得到词语权重表。
例如,词语权重表的一种可能的形式可以如表1所示:
表1
词语1 词语2 权重值
第一词语 第二词语 W12
第一词语 第三词语 W13
第二词语 第三词语 W23
…… ……
第m词语 第n词语 Wmn
需要说明的是,表1所示词语权重表仅仅是一具体实施例,在实际应用中词语权重表还可以有其他的表现形式,这里,并不对词语权重表的表现形式进行限定。
至此,获得了词语权重表,即获得了在查询第二词语时第一词语的权重。
需要说明的是,词语权重的获取可以使用任何方式,图1所示仅为通过统计语言模型得到的统计概率一具体实施例而已,在实际应用中还可以采用其他方式获取,如任何自动计算或人工设定的方式,在此,并不对获取词语权重表的方式进行限定。
图2是根据本申请实施例的一种对搜索结果进行排序的方法流程图,具体包括以下步骤:
步骤201,服务器获得查询字串和目标字串。
其中,查询字串通常是用户输入的,目标字串通常是服务器经检索后得到的与查询字串相关的字串,例如,查询字串即用户输入的是“诺基亚电池”,服务器检索后得到的目标字串是A“诺基亚电池”,B“诺基亚手机,赠送电池”,C“诺基亚n73手机原装电池”,则上述通过检索得到的A、B、C都是目标字串。本申请实施例的目的就是判断各目标字串(如检索结构A、B、C)与查询字串的匹配程度。也就是说,服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串。
本实施例中,以查询字串为“诺基亚电池”,目标字串为C“诺基亚n73手机原装电池”为例进行说明。对于目标字串A“诺基亚电池”和B“诺基亚手机,赠送电池”与目标字串C“诺基亚n73手机原装电池”的处理过程基本相同,不再详述。
步骤202,服务器对所述查询字串和目标字串分别进行分词,得到构成查询字串的分词和构成目标字串的分词。
这里,令查询字串为Q,目标字串为T,对查询字串分词后可得到Q1Q2...Qm,对目标字串分词后可得到T1T2...Tn。本实施例中,
对查询字串分词以后得到:Q1Q2=诺基亚|电池,
对目标字串分词后得到T1T2T3T4T5=诺基亚|n73|手机|原装|电池。
本申请中的分词可以是对字串任意方法的切分,可以分成语言意义上的词,也可以是分成单字或字母、符号等等。
步骤203,将查询字串的各分词依次与目标字串的分词两两组合,得到多个由一个查询字串分词和一个目标字串分词所构成的分词组合;
具体的,得到(Ti,Q1)、(Ti,Q2)...(Ti,Qm)。
本实施例中得到的分词组合包括:(T1,Q1)、(T1,Q2)、(T2,Q1)、(T2,Q2)、(T3,Q1)、(T3,Q2)、(T4,Q1)、(T4,Q2)、(T5,Q1)、(T5,Q2)。
步骤204,查询词语权重表,获得每个分词组合的权重值;
这里,令W表示权重,则根据权重表得到的每个分词组合的权重值为:W(T1,Q1)、W(T1,Q2)、W(T2,Q1)、W(T2,Q2)、W(T3,Q1)、W(T3,Q2)、W(T4,Q1)、W(T4,Q2)、W(T5,Q1)、W(T5,Q2)。
令W(T1,Q1)=W1    W(T1,Q2)=W1’
  W(T2,Q1)=W2    W(T2,Q2)=W2’
  W(T3,Q1))=W3   W(T3,Q2)=W3’
  W(T4,Q1)=W4    W(T4,Q2)=W4’
  W(T5,Q1)=W5    W(T5,Q2)=W5’
其中,若Ti在Q中,则取Wi=0,例如,T1为诺基亚,Q1也为诺基亚,则W(T1,Q1)=W1=0,同理,W(T5,Q2)=W5’=0。
步骤205,根据所述权重值获得加权词语长度;
本实施例中,加权词语长度为最小滑动窗口加权长度,此时,步骤205具体包括以下步骤:
i)分别获取目标字串的各个分词与查询字串各分词的权重最小值;或者,分别获取查询字串的各个分词与目标字串各分词的权重最小值;由于获取目标字串的各个分词与查询字串各分词的权重最小值和获取查询字串的各个分词与目标字串各分词的权重最小值的处理过程非常相似,下面仅以获取目标字串的各个分词与查询字串各分词的权重最小值为例进行说明。
具体到上述实施例,即需要获取T1相对Q1和Q2的两个权重中的最小值,T2相对Q1和Q2的两个权重中的最小值,......
这里,假设W(T1,Q1)和W(T1,Q2)的权重最小值为W1,W(T2,Q1)和W(T2,Q2)的权重最小值为W2,W(T3,Q1)和W(T3,Q2)的权重最小值为W3,W(T4,Q1)和W(T4,Q2)的权重最小值为W4,W(T5,Q1)和W(T5,Q2)的权重最小值为W5’。
ii)对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度;
确定每个目标字串的最小滑动窗口加权长度具体包括:
最小滑动窗口加权长度 Σ i = k h W i = Σ i = k h min j = 1 m w ( T i , Q j ) ,
其中,W表示权重,Ti表示目标字串中的第i个的分词,k、h分别表示目标字串最小滑动窗口的起始位置和结束位置,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数。
对于上述实施例,最小滑动窗口加权长度∑Wi=W1+W2+W3+W4+W5’
重复上述步骤202至205,可以得到查询字串相对各个目标字串的最小滑动窗口加权长度。
步骤206,根据所述加权词语长度确定查询字串和目标字串的匹配程度,即根据所述加权词语长度对每个目标字串进行排序,并反馈给用户终端。
具体的,比较各目标字串的最小滑动窗口加权长度,所述长度越小则匹配程度越高,反之,匹配程度越低,也即长度越小则排序越靠前,反之,排序越靠后。
至此,确定了查询字串与各目标字串之间的匹配程度。传统的简单的词语长度的计算没有考虑目标字串中的词语跟查询词语的语义关联程度,因而得到的词语长度不能准确地反映查询和目标的匹配程度。如“诺基亚电池”和“诺基亚n73手机原装电池”,虽然长度差异很大,但是如果查询词语是“诺基亚电池”的情况下,两者没有很大实质区别。本申请通过引入表示查询字串和目标字串的语义关联度的词语权重,更准确地对目标字串进行排序,将与查询字串语义相关的目标字串排在前面,反映出了各目标字串与查询字串的匹配程度。在实际应用中应用简单,且效果好。
图3是根据本申请实施例的另一种对搜索结果进行排序的方法流程图,本实施例基于编辑距离计算查询字串和目标字串之间的差异,其中,编辑距离是指从一个字串变化到另一个字串最少需要的基本操作次数,或理解为两个字串差异部分的长度之和。通常的基本操作包括插入一个字/词,删除一个字/词,替换一个字/词,或者其它根据需要而设的操作。例如从“我爱你”变化到“我不爱她”至少需要插入一个“不”、将“你”替换成“她”两次基本操作,因此两者的编辑距离为2,同理,“隐形的翅膀”和“好吃的鸡翅膀”编辑距离为3。图3所示流程具体包括以下步骤:
步骤301,服务器获得查询字串和目标字串。
其中,查询字串通常是用户输入的,目标字串通常是服务器经检索后得到的与查询字串相关的字串。例如,查询字串是“诺基亚手机电池”,目标字串是“原装诺基亚手机电池”和“诺基亚手机,赠送电池”。也就是说,服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串。
本申请实施例的目的就是判断各目标字串与查询字串的匹配程度。
本实施例中,以查询字串为“诺基亚手机电池”,目标字串为“原装诺基亚手机电池”为例进行说明。对于目标字串“诺基亚手机,赠送电池”,由于其与目标字串“原装诺基亚手机电池”的处理过程基本相同,不再详述。
步骤302,服务器对所述查询字串和目标字串分别进行分词,得到构成查询字串的分词和构成目标字串的分词。
这里,令查询字串为Q,目标字串为T,对查询字串分词后可得到Q1Q2...Qm,对目标字串分词后可得到T1T2...Tn。本实施例中,
对查询字串分词以后得到:Q1Q2Q3=诺基亚|手机|电池,
对目标字串分词后得到T1T2T3=原装|诺基亚|电池。
本申请中的分词可以是对字串任意方法的切分,可以分成语言意义上的词,也可以是分成单字或字母、符号等等。
步骤303,服务器根据所述词语权重表,计算插入的词语相对查询字串各分词的权重最小值;
具体的,根据词语权重表,获得插入的词语相对查询字串各分词的权重值,本例中,插入了“原装”一词,令插入的词为I,则可以得到插入的词语相对查询字串各分词的权重值:W(I1,Q1)、W(I1,Q2)、W(I1,Q3);
计算插入的词语相对查询字串各分词的权重最小值为:
Σ t = 1 n w I = Σ t = 1 n min j = 1 m w ( I t , Q j )
其中,W表示权重,It表示插入字串中的第t个的分词,n分别表示插入分词的个数,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数。
步骤304,根据词语权重表,计算删除的词语相对目标字串各分词的权重最小值;
具体的,根据词语权重表,获得删除的词语相对目标字串各分词的权重值,本例中,删除了“手机”一词,令删除的词为D,则可以得到删除的词语相对目标字串各分词的权重值:W(D1,T1)、W(D1,T2)、W(D1,T3);
计算删除的词语相对查询字串各分词的权重最小值为
Σ d = 1 p w D = Σ d = 1 p min i = 1 q w ( T i , D d )
其中,W表示权重,Ti表示目标字串中的第i个的分词,q表示目标字串分词的个数,Dd表示删除词语中的第d个分词,p表示删除分词的个数。
步骤305,根据所述权重最小值计算总的编辑距离,确定查询字串和目标字串的匹配程度,即根据所述总的编辑距离对每个目标字串进行排序,并反馈给用户终端。
具体的,对各个目标字串,分别确定总的编辑距离,对于一个目标字串的总编辑距离为:
W=WI+WD
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值;
比较各目标字串的总的编辑距离,所述总的编辑距离越小则匹配程度越高,反之,匹配程度越低,也即总的编辑距离越小则排序越靠前,反之,排序越靠后。
至此,确定了查询字串与各目标字串的匹配程度。传统的简单的词语距离的计算没有考虑目标字串中的词语跟查询词语的语义关联程度,因而得到的词语距离不能准确地反映查询和目标的匹配程度。本申请通过引入表示查询字串和目标字串的语义关联度的词语权重,更准确地对目标字串进行排序,将与查询字串语义相关的目标字串排在前面,反映出了各目标字串与查询字串的匹配程度。在实际应用中应用简单,且效果好。
需要说明的是,对于图3所示实施例,还存在词语替换的情况,例如将“我和你”变为“我和他”时,其中的“你”可认为是被“他”替换,这里,对词语替换的情况可以做如下处理:
方式一:将替换操作认为是增加和删除操作的组合,即认为替换操作是不存在的,例如,将“我和你”变为“我和他”时,认为是删除了“你”,增加了“他”,即所有的变换都是插入和删除操作,因而,应用图3所示实施例可以很好的解决。
方式二,将替换操作视为除了插入和删除之外的第三种操作,例如,将“我和你”变为“我和他”时,认为是将“你”替换为“他”,此时,需要计算替换词语的编辑距离的权重最小值,具体可以有两种计算方法:
a)替换词语的编辑距离的权重最小值等于预设的固定值,如,令替换词语的编辑距离的权重最小值固定的等于1;或者,
b)令替换词语的编辑距离等于插入词语相对查询字串各分词的权最小重值与删除词语相对目标字串各分词的权重最小值之和,或者,令替换词语的编辑距离等于插入词语相对查询字字串各分词的权重最小值与删除词语相对目标字串各分词的权重最小值之和的平均值,或者,令替换词语的编辑距离等于插入词语相对查询字串各分词的权重最小值与删除词语相对目标字串各分词的权重最小值两种中的最大值,或其他任意组合形式。
例如,替换词语“他”的编辑距离=插入的“他”相对查询字串“我和你”的各分词的权重最小值+删除词语“你”相对目标字串“我和他”各分词的权重最小值;或者,
替换词语“他”的编辑距离=(插入的“他”相对查询字串“我和你”的各分词的权重最小值+删除词语“你”相对目标字串“我和他”各分词的权重最小值)/2。等等。
在方式二的情况下,步骤305具体包括:
对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:
W=WI+WD+WC
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值,WC表示替换词语相对查询字串和/或目标字串各分词的权重最小值;
比较各目标字串的总的编辑距离,所述总的编辑距离越小则匹配程度越高,反之,匹配程度越低,也即总的编辑距离越小则排序越靠前,反之,排序越靠后。
需要说明的是,可以交错地根据查询字串和目标字串计算权重,如图3所示实施例中,对于插入的字串,根据查询字串计算权重,对于删除的字串,根据目标字串计算权重。
需要说明的是,对于图2和图3所示实施例,分词可以是对字串任意方法的切分,可以分成语言意义上的词,也可以是分成单字或字母、符号。
需要说明的是,对于图2和图3所示实施例,可以对权重进行任何形式的计算或变换,比如取对数等;也可以取目标词语对各个查询词语的权重的最大值、平均值或其它形式的运算作为该词的权重(加权长度)。
需要说明的是,对于图2和图3所示实施例,可以反过来将目标字串作为查询字串,将查询字串作为目标字串,不会产生本质区别。
需要说明的是,对于图2和图3所示实施例,词语距离或长度的计算区间可以是整个字串或根据算法选定的任意区间,如选定某字串中跟另一个字串差异的部分。
需要说明的是,匹配方法不一定要使用最小滑动窗口或编辑距离,可以是任何关于加权词语距离或词语长度的计算。
需要说明的是,本申请并不局限应用于检索系统如搜索引擎,也可以应用于任何计算两个字串匹配程度的系统。
本申请还公开了一种对搜索结果进行排序的装置,参见图4,具体包括:
词语权重表获取模块401,用于计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表;
词获取模块402,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
分词模块403,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分别进行分词;
组合模块404,用于将查询字串的各分词依次与目标字串的分词两两组合;
查询模块405,用于查询所述词语权重表,获得每个分词组合的权重值;
匹配模块406,用于根据所述权重值获得加权词语长度,对每个目标字串进行排序,并反馈给用户终端。
上述词语权重表获取模块401可以具体包括:
样本获取模块,用于获取统计样本;
第一统计模块,用于从所述统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统计样本中共同出现的次数C(第一词语,第二词语)
第二统计模块,用于统计第二词语在统计样本中出现的次数∑C(Yi,第二词语),其中,所述Yi代表每个跟第二词语共同出现的词语;
概率计算模块,用于计算所述第一词语在第二词语出现条件下的概率P(第一词语|第二词语)=C(第一词语,第二词语)/∑C(Yi,第二词语)
权重计算模块,用于在查询第二词语时,取第一词语与第二词语的语义相关权重为W=1-P,其中,所述W为权重,所述P为第一词语在第二词语出现条件下的概率;
生成模块,用于获得所述统计样本中每个词语相对其他词语的语义相关权重后,生成词语权重表。
当所述加权词语长度为最小滑动窗口加权长度时,上述匹配模块405可以具体包括:
权重最小值获取模块,用于分别取目标字串的各个分词在查询字串各分词的权重最小值;或者,分别取查询字串的各个分词在目标字串各分词的权重最小值;
第一计算模块,用于对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度;
排序模块,用于比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之,排序在后,也即长度越小时判定匹配程度越高,反之,判定匹配程度越低。
应用图4所示实施例,通过引入表示查询字串和目标字串的语义关联度的词语权重,更准确地反映出了各目标字串与查询字串的匹配程度。在实际应用中应用简单,且效果好。
本申请实施例还提供了一种对搜索结果进行排序的装置,参见图5,包括:
词语权重表获取模块501,用于计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表;
词获取模块502,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
分词模块503,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分别进行分词;
第一权重最小值计算模块504,用于计算插入的词语相对查询字串各分词的权重最小值;
第二权重最小值计算模块505,用于计算删除的词语相对目标字串各分词的权重最小值;
匹配模块506,用于根据所述权重最小值计算总的编辑距离,对每个目标字串进行排序,并反馈给用户终端。
上述匹配模块506可以具体包括:
第一总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:W=WI+WD
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值;
排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后,也即总的编辑距离越小时判定匹配程度越高,反之,判定匹配程度越低。
图5所述装置还可以包括:
第三权重最小值计算模块,用于在计算总的编辑距离长度之前,获取替换词语的编辑距离的权重最小值;此时,上述匹配模块505可以具体包括:
第二总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:W=WI+WD+WC
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值,WC表示替换词语相对查询字串和/或目标字串各分词的权重最小值;
排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后,也即总的编辑距离越小时判定匹配程度越高,反之,判定匹配程度越低。
应用图5所示装置,通过引入表示查询字串和目标字串的语义关联度的词语权重,更准确地反映出了各目标字串与查询字串的匹配程度。在实际应用中应用简单,且效果好。
需要说明的是,为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
需要说明的是,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本中请各个实施例或者实施例的某些部分所述的方法。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

Claims (12)

1.一种对搜索结果进行排序的方法,其特征在于,服务器预先计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括:
服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
服务器对所述查询字串和目标字串分别进行分词,将查询字串的各分词依次与目标字串的分词两两组合;
查询词语权重表,获得每个分词组合的权重值;
根据所述权重值获得加权词语长度,根据所述加权词语长度对每个目标字串进行排序,并反馈给用户终端。
2.根据权利要求1所述的方法,其特征在于,所述服务器预先计算统计样本中每两个词语之间的语义关联权重,获得词语权重表的步骤包括:
服务器获取统计样本;
从所述统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统计样本中共同出现的次数C(第一词语,第二词语);
统计第二词语在统计样本中出现的次数∑C(Yi,第二词语),其中,所述Yi代表每个跟第二词语共同出现的词语;
计算所述第一词语在第二词语出现条件下的概率P(第一词语|第二词语)=C(第一词语,第二词语)/∑C(Yi,第二词语);
在查询第二词语时,取第一词语与第二词语的语义相关权重为W=1-P,其中,所述W为权重,所述P为第一词语在第二词语出现条件下的概率;
重复上述步骤,依次获得所述统计样本中每个词语相对其他词语的语义相关权重,得到词语权重表。
3.根据权利要求2所述的方法,其特征在于,所述统计样本的来源包括任何形式的文本或符号,所述文本包括网页文本、用户搜索日志、用户点击日志。
4.根据权利要求1所述的方法,其特征在于,
所述加权词语长度为最小滑动窗口加权长度;
根据所述权重值获得加权词语长度对每个目标字串进行排序的步骤包括:
分别取目标字串的各个分词在查询字串各分词的权重最小值;或者,分别取查询字串的各个分词在目标字串各分词的权重最小值;
对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度;
比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之,排序在后;
其中,计算每个目标字串的最小滑动窗口加权长度具体包括:
最小滑动窗口加权长度 Σ i = k h W i = Σ i = k h min j = 1 m w ( T i , Q j ) ,
其中,W表示权重,Ti表示目标字串中的第i个的分词,k、h分别表示目标字串最小滑动窗口的起始位置和结束位置,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数。
5.一种对搜索结果进行排序的方法,其特征在于,服务器预先计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表,所述方法还包括:
服务器接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
服务器对所述查询字串和目标字串分别进行分词;
服务器根据所述词语权重表,计算插入的词语相对查询字串各分词的权重最小值;
服务器根据所述词语权重表,计算删除的词语相对目标字串各分词的权重最小值;
根据所述权重最小值计算总的编辑距离,根据所述总的编辑距离对每个目标字串进行排序,并反馈给用户终端;
其中,
所述根据所述词语权重表,计算插入的词语相对查询字串各分词的权重最小值的步骤包括:
根据词语权重表,获得插入的词语相对查询字串各分词的权重值;
计算插入的词语相对查询字串各分词的权重最小值为
Σ t = 1 n w I = Σ t = 1 n min j = 1 m w ( I t , Q j )
其中,W表示权重,It表示插入字串中的第t个的分词,n分别表示插入分词的个数,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数;
所述根据所述词语权重表,计算删除的词语相对目标字串各分词的权重最小值的步骤包括:
根据词语权重表,获得删除的词语相对目标字串各分词的权重值;
计算删除的词语相对目标字串各分词的权重最小值为
Σ d = 1 p w D = Σ d = 1 p min i = 1 q w ( T i , D d )
其中,W表示权重,Ti表示目标字串中的第i个的分词,q表示目标字串分词的个数,Dd表示删除词语中的第d个分词,p表示删除分词的个数;
所述根据所述权重最小值计算总的编辑距离,对每个目标字串进行排序的步骤包括:
对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:
W=WI+WD
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值;
比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
6.根据权利要求5所述的方法,其特征在于,在所述根据权重最小值计算总的编辑距离之前,还包括:计算替换词语的编辑距离的权重最小值;
根据所述权重最小值计算总的编辑距离,确定查询字串和目标字串的匹配程度的步骤包括:
对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:
W=WI+WD+WC
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值,WC表示替换词语相对查询字串和/或目标字串各分词的权重最小值;
比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
7.根据权利要求6所述的方法,其特征在于,所述计算替换词语的编辑距离的权重最小值的方式包括:
令替换词语的编辑距离的权重最小值等于预设的固定值,或者,
令替换词语的编辑距离等于插入词语相对查询字串各分词的权重最小值与删除词语相对目标字串各分词的权重最小值之和,或平均值,或两者中的最大值。
8.一种对搜索结果进行排序的装置,其特征在于,包括:
词语权重表获取模块,用于计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表;
词获取模块,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
分词模块,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分别进行分词;
组合模块,用于将查询字串的各分词依次与目标字串的分词两两组合;
查询模块,用于查询所述词语权重表,获得每个分词组合的权重值;
匹配模块,用于根据所述权重值获得加权词语长度,对每个目标字串进行排序,并反馈给用户终端。
9.根据权利要求8所述的装置,其特征在于,所述词语权重表获取模块包括:
样本获取模块,用于获取统计样本;
第一统计模块,用于从所述统计样本中选取第一词语和第二词语,统计所述第一词语和第二词语在统计样本中共同出现的次数C(第一词语,第二词语);
第二统计模块,用于统计第二词语在统计样本中出现的次数∑C(Yi,第二词语),其中,所述Yi代表每个跟第二词语共同出现的词语;
概率计算模块,用于计算所述第一词语在第二词语出现条件下的概率P(第一词语|第二词语)=C(第一词语,第二词语)/∑C(Yi,第二词语);
权重计算模块,用于在查询第二词语时,取第一词语与第二词语的语义相关权重为W=1-P,其中,所述W为权重,所述P为第一词语在第二词语出现条件下的概率;
生成模块,用于获得所述统计样本中每个词语相对其他词语的语义相关权重后,生成词语权重表。
10.根据权利要求8所述的装置,其特征在于,当所述加权词语长度为最小滑动窗口加权长度时,所述匹配模块包括:
权重最小值获取模块,用于分别取目标字串的各个分词在查询字串各分词的权重最小值;或者,分别取查询字串的各个分词在目标字串各分词的权重最小值;
第一计算模块,用于对各个目标字串,根据所述权重最小值分别计算最小滑动窗口加权长度;
排序模块,用于比较各目标字串的最小滑动窗口加权长度,长度小则排序在前,反之,排序在后;
所述第一计算模块计算每个目标字串的最小滑动窗口加权长度的方式为:
最小滑动窗口加权长度 Σ i = k h W i = Σ i = k h min j = 1 m w ( T i , Q j ) ,
其中,W表示权重,Ti表示目标字串中的第i个的分词,k、h分别表示目标字串最小滑动窗口的起始位置和结束位置,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数。
11.一种对搜索结果进行排序的装置,其特征在于,包括:
词语权重表获取模块,用于计算统计样本中每两个词语之间的语义关联权重,获得并保存词语权重表;
词获取模块,用于接收用户终端输入的查询字串,根据查询字串进行搜索并获得目标字串;
分词模块,用于在服务器获得查询字串和目标字串后,对所述查询字串和目标字串分别进行分词;
第一权重最小值计算模块,用于计算插入的词语相对查询字串各分词的权重最小值,为 Σ t = 1 n w I = Σ t = 1 n min j = 1 m w ( I t , Q j )
其中,W表示权重,It表示插入字串中的第t个的分词,n分别表示插入分词的个数,Qj表示查询字串中的第j个分词,m表示查询字串分词的个数;
第二权重最小值计算模块,用于计算删除的词语相对目标字串各分词的权重最小值,为 Σ d = 1 p w D = Σ d = 1 p min i = 1 q w ( T i , D d )
其中,W表示权重,Ti表示目标字串中的第i个的分词,q表示目标字串分词的个数,Dd表示删除词语中的第d个分词,p表示删除分词的个数;
匹配模块,用于根据所述权重最小值计算总的编辑距离,对每个目标字串进行排序,并反馈给用户终端;
所述匹配模块包括:
第一总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:W=WI+WD
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值;
排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第三权重最小值计算模块,用于在计算总的编辑距离长度之前,获取替换词语的编辑距离的权重最小值;
所述匹配模块包括:
第二总编辑距离计算模块,用于对各个目标字串,分别确定总的编辑距离,所述总的编辑距离为:W=WI+WD+WC
其中,W表示总的编辑距离,WI表示插入词语相对查询字串各分词的权重最小值,WD表示删除词语相对目标字串各分词的权重最小值,WC表示替换词语相对查询字串和/或目标字串各分词的权重最小值;
排序模块,用于比较各目标字串的总的编辑距离,总的编辑距离小则排序在前,反之,排序在后。
CN2009101516473A 2009-07-20 2009-07-20 一种对搜索结果进行排序的方法和装置 Active CN101957828B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN2009101516473A CN101957828B (zh) 2009-07-20 2009-07-20 一种对搜索结果进行排序的方法和装置
US12/804,229 US8856098B2 (en) 2009-07-20 2010-07-15 Ranking search results based on word weight
EP10802539.6A EP2457151A4 (en) 2009-07-20 2010-07-16 Ranking search results based on word weight
JP2012521611A JP5597255B2 (ja) 2009-07-20 2010-07-16 単語の重みに基づいた検索結果の順位付け
PCT/US2010/002000 WO2011011046A1 (en) 2009-07-20 2010-07-16 Ranking search results based on word weight
HK11104094.4A HK1149823A1 (en) 2009-07-20 2011-04-21 Method and apparatus for ranking search results
US14/473,677 US9317591B2 (en) 2009-07-20 2014-08-29 Ranking search results based on word weight

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101516473A CN101957828B (zh) 2009-07-20 2009-07-20 一种对搜索结果进行排序的方法和装置

Publications (2)

Publication Number Publication Date
CN101957828A CN101957828A (zh) 2011-01-26
CN101957828B true CN101957828B (zh) 2013-03-06

Family

ID=43465993

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101516473A Active CN101957828B (zh) 2009-07-20 2009-07-20 一种对搜索结果进行排序的方法和装置

Country Status (6)

Country Link
US (2) US8856098B2 (zh)
EP (1) EP2457151A4 (zh)
JP (1) JP5597255B2 (zh)
CN (1) CN101957828B (zh)
HK (1) HK1149823A1 (zh)
WO (1) WO2011011046A1 (zh)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102637171A (zh) * 2011-02-10 2012-08-15 北京百度网讯科技有限公司 一种优化搜索结果的方法和装置
CN102799586B (zh) * 2011-05-24 2016-04-27 北京百度网讯科技有限公司 一种用于搜索结果排序的转义度确定方法和装置
US8706753B2 (en) * 2011-08-25 2014-04-22 Oracle International Corporation Search result ranking with search string certainty weighting
CN102346777B (zh) * 2011-10-09 2016-06-01 北京百度网讯科技有限公司 一种对例句检索结果进行排序的方法和装置
CN103294727B (zh) * 2012-03-05 2017-09-08 阿里巴巴集团控股有限公司 一种被推荐对象的过滤方法及系统
CN103425691B (zh) * 2012-05-22 2016-12-14 阿里巴巴集团控股有限公司 一种搜索方法和系统
DE112012006749T5 (de) * 2012-07-30 2015-10-01 Hewlett-Packard Development Company, L.P. Suchmethode
US9292621B1 (en) 2012-09-12 2016-03-22 Amazon Technologies, Inc. Managing autocorrect actions
US9305150B2 (en) * 2012-12-10 2016-04-05 Lookout, Inc. Method and system for managing user login behavior on an electronic device for enhanced security
CN103902549B (zh) * 2012-12-25 2017-12-12 阿里巴巴集团控股有限公司 搜索数据排序的方法和装置,数据搜索的方法和装置
US20140223466A1 (en) * 2013-02-01 2014-08-07 Huawei Technologies Co., Ltd. Method and Apparatus for Recommending Video from Video Library
CN103970791B (zh) * 2013-02-01 2018-01-23 华为技术有限公司 一种从视频库推荐视频的方法、装置
US9727544B2 (en) 2013-05-06 2017-08-08 Dropbox, Inc. Animating edits to documents
WO2015043389A1 (zh) * 2013-09-30 2015-04-02 北京奇虎科技有限公司 一种基于视频搜索的分词信息推送方法和装置
CN103491205B (zh) * 2013-09-30 2016-08-17 北京奇虎科技有限公司 一种基于视频搜索的关联资源地址的推送方法和装置
CN103488787B (zh) * 2013-09-30 2017-12-19 北京奇虎科技有限公司 一种基于视频搜索的在线播放入口对象的推送方法和装置
US20150170067A1 (en) * 2013-12-17 2015-06-18 International Business Machines Corporation Determining analysis recommendations based on data analysis context
US10242090B1 (en) * 2014-03-06 2019-03-26 The United States Of America As Represented By The Director, National Security Agency Method and device for measuring relevancy of a document to a keyword(s)
US9754020B1 (en) 2014-03-06 2017-09-05 National Security Agency Method and device for measuring word pair relevancy
US10353964B2 (en) * 2014-09-15 2019-07-16 Google Llc Evaluating semantic interpretations of a search query
CN104462327B (zh) * 2014-12-02 2018-09-11 百度在线网络技术(北京)有限公司 语句相似度的计算、搜索处理方法及装置
CN104462323B (zh) * 2014-12-02 2018-02-27 百度在线网络技术(北京)有限公司 语义相似度计算方法、搜索结果处理方法和装置
CN105446957B (zh) 2015-12-03 2018-07-20 小米科技有限责任公司 相似性确定方法、装置及终端
US10528328B2 (en) * 2015-12-08 2020-01-07 Microsoft Technology Licensing, Llc Learning from input patterns in Programing-By-Example
CN106919603B (zh) * 2015-12-25 2020-12-04 北京奇虎科技有限公司 计算查询词模式中分词权重的方法和装置
US10021051B2 (en) * 2016-01-01 2018-07-10 Google Llc Methods and apparatus for determining non-textual reply content for inclusion in a reply to an electronic communication
CN106970919B (zh) * 2016-01-14 2020-05-12 北京国双科技有限公司 新词组发现的方法及装置
CN106997335B (zh) * 2016-01-26 2020-05-19 阿里巴巴集团控股有限公司 相同字符串的判定方法及装置
CN107657471B (zh) * 2016-09-22 2021-04-30 腾讯科技(北京)有限公司 一种虚拟资源的展示方法、客户端及插件
CN107103066A (zh) * 2017-04-18 2017-08-29 北京思特奇信息技术股份有限公司 一种用户偏好的检索方法及装置
CN110580271B (zh) * 2018-06-08 2022-05-24 百度在线网络技术(北京)有限公司 数据查询方法和装置
CN109783498B (zh) * 2019-01-17 2020-06-02 北京三快在线科技有限公司 数据处理方法及装置、电子设备、存储介质
CN110287307B (zh) * 2019-05-05 2022-04-05 浙江吉利控股集团有限公司 一种搜索结果排序方法、装置及服务器
CN112667779B (zh) * 2020-12-30 2023-09-05 北京奇艺世纪科技有限公司 一种信息查询方法、装置、电子设备及存储介质
CN112564988B (zh) * 2021-02-19 2021-06-18 腾讯科技(深圳)有限公司 告警处理方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018735A (en) * 1997-08-22 2000-01-25 Canon Kabushiki Kaisha Non-literal textual search using fuzzy finite-state linear non-deterministic automata
CN101059806A (zh) * 2007-06-06 2007-10-24 华东师范大学 一种基于语义的本地文档检索方法
CN101158971A (zh) * 2007-11-15 2008-04-09 深圳市迅雷网络技术有限公司 一种基于搜索引擎的搜索结果排序方法及装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005063468A (ja) * 1996-05-29 2005-03-10 Matsushita Electric Ind Co Ltd 文書検索装置
WO1999041694A1 (en) * 1998-02-13 1999-08-19 Yahoo, Inc. Search engine using sales and revenue to weight search results
JP2000194713A (ja) 1998-12-25 2000-07-14 Nippon Telegr & Teleph Corp <Ntt> 文字列検索方法及び装置及び文字列検索プログラムを格納した記憶媒体
US6633868B1 (en) * 2000-07-28 2003-10-14 Shermann Loyall Min System and method for context-based document retrieval
US20020103798A1 (en) * 2001-02-01 2002-08-01 Abrol Mani S. Adaptive document ranking method based on user behavior
US20040002849A1 (en) * 2002-06-28 2004-01-01 Ming Zhou System and method for automatic retrieval of example sentences based upon weighted editing distance
US20040064447A1 (en) * 2002-09-27 2004-04-01 Simske Steven J. System and method for management of synonymic searching
US20050160107A1 (en) * 2003-12-29 2005-07-21 Ping Liang Advanced search, file system, and intelligent assistant agent
US20050198026A1 (en) * 2004-02-03 2005-09-08 Dehlinger Peter J. Code, system, and method for generating concepts
US20070250501A1 (en) * 2005-09-27 2007-10-25 Grubb Michael L Search result delivery engine
US7707204B2 (en) * 2005-12-13 2010-04-27 Microsoft Corporation Factoid-based searching
US7756859B2 (en) * 2005-12-19 2010-07-13 Intentional Software Corporation Multi-segment string search
US9177124B2 (en) * 2006-03-01 2015-11-03 Oracle International Corporation Flexible authentication framework
US7873641B2 (en) * 2006-07-14 2011-01-18 Bea Systems, Inc. Using tags in an enterprise search system
US20080016053A1 (en) * 2006-07-14 2008-01-17 Bea Systems, Inc. Administration Console to Select Rank Factors
US20080016061A1 (en) * 2006-07-14 2008-01-17 Bea Systems, Inc. Using a Core Data Structure to Calculate Document Ranks
US20080016071A1 (en) * 2006-07-14 2008-01-17 Bea Systems, Inc. Using Connections Between Users, Tags and Documents to Rank Documents in an Enterprise Search System
US7562088B2 (en) * 2006-12-27 2009-07-14 Sap Ag Structure extraction from unstructured documents
CA2674294C (en) * 2006-12-29 2017-03-07 Thomson Reuters Global Resources Information-retrieval systems, methods, and software with concept-based searching and ranking
TWI356315B (en) * 2007-10-16 2012-01-11 Inst Information Industry Method and system for constructing data tag based
WO2009066501A1 (ja) * 2007-11-19 2009-05-28 Nippon Telegraph And Telephone Corporation 情報検索方法及び装置及びプログラム及びコンピュータ読取可能な記録媒体
US8051187B2 (en) * 2008-12-22 2011-11-01 Check Point Software Technologies Ltd. Methods for automatic categorization of internal and external communication for preventing data loss

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018735A (en) * 1997-08-22 2000-01-25 Canon Kabushiki Kaisha Non-literal textual search using fuzzy finite-state linear non-deterministic automata
CN101059806A (zh) * 2007-06-06 2007-10-24 华东师范大学 一种基于语义的本地文档检索方法
CN101158971A (zh) * 2007-11-15 2008-04-09 深圳市迅雷网络技术有限公司 一种基于搜索引擎的搜索结果排序方法及装置

Also Published As

Publication number Publication date
HK1149823A1 (en) 2011-10-14
US20150081683A1 (en) 2015-03-19
JP5597255B2 (ja) 2014-10-01
JP2012533818A (ja) 2012-12-27
EP2457151A1 (en) 2012-05-30
US9317591B2 (en) 2016-04-19
US20110016111A1 (en) 2011-01-20
EP2457151A4 (en) 2017-01-04
US8856098B2 (en) 2014-10-07
WO2011011046A1 (en) 2011-01-27
CN101957828A (zh) 2011-01-26

Similar Documents

Publication Publication Date Title
CN101957828B (zh) 一种对搜索结果进行排序的方法和装置
CN102236663B (zh) 一种基于垂直搜索的查询方法、系统和装置
CN102760138B (zh) 用户网络行为的分类方法和装置及对应的搜索方法和装置
CN101828185B (zh) 部分地基于多个点进特征来排名并提供搜索结果
CN102056335B (zh) 移动搜索方法、装置和系统
CN103309886A (zh) 一种基于交易平台的结构化信息搜索方法和装置
CN104199965B (zh) 一种语义信息检索方法
CN103514181B (zh) 一种搜索方法和装置
CN100483408C (zh) 在多个文档之间建立链接结构的方法和装置
CN105701216A (zh) 一种信息推送方法及装置
CN101930438A (zh) 一种搜索结果生成方法及信息搜索系统
CN102236677A (zh) 一种基于问答系统的信息匹配方法及系统
CN102722501B (zh) 搜索引擎及其实现方法
CN102314443B (zh) 搜索引擎的修正方法和系统
CN103678576A (zh) 基于动态语义分析的全文检索系统
CN103106220A (zh) 一种搜索方法、搜索装置及一种搜索引擎系统
CN103838756A (zh) 一种确定推送信息的方法及装置
CN105095433A (zh) 实体推荐方法及装置
CN102737021B (zh) 搜索引擎及其实现方法
CN103186574A (zh) 一种搜索结果的生成方法和装置
CN102043843A (zh) 一种用于基于目标应用获取目标词条的方法与获取设备
CN102646108A (zh) 使用主题意识文件评级器的信息检索
CN101127046A (zh) 一种对博客文章进行排序的方法及系统
CN104077407A (zh) 一种智能数据搜索系统及方法
CN105809473A (zh) 匹配模型参数的训练方法、服务推荐方法及对应装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1149823

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1149823

Country of ref document: HK

TR01 Transfer of patent right

Effective date of registration: 20200826

Address after: Building 8, No. 16, Zhuantang science and technology economic block, Xihu District, Hangzhou City, Zhejiang Province

Patentee after: ALIYUN COMPUTING Co.,Ltd.

Address before: Cayman Islands Grand Cayman capital building, a four storey No. 847 mailbox

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right