CN104636403B - 处理查询请求的方法及装置 - Google Patents
处理查询请求的方法及装置 Download PDFInfo
- Publication number
- CN104636403B CN104636403B CN201310573444.XA CN201310573444A CN104636403B CN 104636403 B CN104636403 B CN 104636403B CN 201310573444 A CN201310573444 A CN 201310573444A CN 104636403 B CN104636403 B CN 104636403B
- Authority
- CN
- China
- Prior art keywords
- keyword
- search result
- score value
- score
- historical
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2468—Fuzzy queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Automation & Control Theory (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种处理查询请求的方法及装置,方法包括:接收到携带有关键词的查询请求后,根据所述关键词,获得与所述关键词相匹配的第一搜索结果集合;确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,所述精确匹配分值为搜索结果与所述关键词完全匹配的分值,所述泛化匹配分值为搜索结果与所述关键词非完全匹配的分值;根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值;按照所述最终匹配分值从大到小的顺序,对所述第一搜索结果集合中的搜索结果进行排序,得到并返回第二搜索结果集合。上述技术方案提升了搜索结果的排序效果。
Description
技术领域
本发明涉及网络查询技术,尤其涉及一种处理查询请求的方法及装置。
背景技术
目前,各搜索引擎对关键词查询请求的处理,多数考虑了用户历史点击数据。
通常,对关键词查询请求的处理基于精确匹配查询,即搜索引擎根据关键词查询请求进行搜索,得到搜索结果集合后,搜索引擎还会通过对用户历史点击数据的分析,提取出相关的历史搜索结果集合,得到与关键词完全匹配的精确匹配分值,并按照精确匹配分值调整搜索结果在搜索结果集合中的位置,以提高排序效果。
但是,上述对关键词查询请求的处理方法基于精确匹配查询,当关键词偏冷门时,历史积累的点击数据偏少,使得排序结果由于缺少点击数据或存在较大的噪音,对排序效果的提升并不理想。
发明内容
本发明的目的在于提出一种处理查询请求的方法及装置,以提升搜索结果的排序效果。
为达此目的,本发明采用以下技术方案:
一种处理查询请求的方法,包括:
接收到携带有关键词的查询请求后,根据所述关键词,获得与所述关键词相匹配的第一搜索结果集合;
确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,所述精确匹配分值为搜索结果与所述关键词完全匹配的分值,所述泛化匹配分值为搜索结果与所述关键词非完全匹配的分值;
根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值;
按照所述最终匹配分值从大到小的顺序,对所述第一搜索结果集合中的搜索结果进行排序,得到并返回第二搜索结果集合。
一种处理查询请求的装置,包括:
请求接收单元,用于接收携带有关键词的查询请求;
搜索单元,用于根据所述请求接收单元接收的查询请求中的关键词,获得与所述关键词相匹配的第一搜索结果集合;
第一分值确定单元,用于确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,所述精确匹配分值为搜索结果与所述关键词完全匹配的分值,所述泛化匹配分值为搜索结果与所述关键词非完全匹配的分值;
第二分值确定单元,用于根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值;
排序单元,用于按照所述最终匹配分值从大到小的顺序,对所述第一搜索结果集合中的搜索结果进行排序,得到第二搜索结果集合;
结果发送单元,用于返回所述第二搜索结果集合。
上述技术方案提供的处理查询请求的方法及装置,通过确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,并根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中 每个搜索结果相对于所述关键词的最终匹配分值,按照最终匹配分值从大到小的顺序对搜索结果进行排序,增加了历史数据对搜索结果集合中搜索结果的排序的影响,从而使得搜索引擎返回的搜索结果集合的排序更加合理,提升了搜索结果的排序效果。
附图说明
图1是本发明实施例提供的一种处理查询请求的方法的流程图;
图2是本发明实施例提供的一种处理查询请求的装置的结构示意图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
图1是本发明实施例提供的一种处理查询请求的方法的流程图。本实施例所示的方法可由搜索引擎实现。如图1所示,处理查询请求的方法包括:步骤11至步骤14。
在步骤11中,接收到携带有关键词的查询请求后,根据所述关键词,获得与所述关键词相匹配的第一搜索结果集合。
例如,搜索引擎接收到携带有关键词“搜索技术”的查询请求后,在线通过爬虫技术从海量网页中查找标题或正文中包含有关键词“搜索技术”的网页,并将这些标题或正文中包含有关键词“搜索技术”的网页的url作为搜索结果,得到搜索结果集合。
其中,第一搜索结果集合与步骤14中的第二搜索结果集合,并无实际意义上第一和第二的限定,只是为了表示步骤11中的搜索结果集合与步骤14中的搜索结果集合不同。
在步骤12中,确定所述第一搜索结果集合中,每个搜索结果相对于所述关 键词的精确匹配分值和泛化匹配分值,所述精确匹配分值为搜索结果与所述关键词完全匹配的分值,所述泛化匹配分值为搜索结果与所述关键词非完全匹配的分值。
例如,确定所述第一搜索结果集合中每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,可包括:
对于所述第一搜索结果集合中的每个搜索结果,获取相关的历史查询关键词集合,以及所述历史查询关键词集合中每个历史查询关键词的相关度分值,所述相关度分值为搜索结果满足用户查询需求的概率值;其中,相关度为通过分析同一关键词的用户历史查询和点击行为,衡量与关键词相关的搜索结果集合中每个搜素结果的相关程度。
根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,得到所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值和泛化匹配分值。
其中,精确匹配分值的作用是通过判断当前查询的关键词是否出现在离线相关的关键词集合即历史查询关键词集合中,如果出现,则使用对应的相关度作用于搜索结果的排序。泛化匹配分值的作用是通过判断当前查询的关键词是否都在离线相关的关键词集合即历史查询关键词集合中出现,或者当前查询的关键词与离线关键词即历史查询关键词比较相近,并使用对应的相关度作用于搜索结果的排序。
示例性的,其中,获取相关的历史查询关键词集合,可包括:
从第一历史搜索数据中获取相关的历史查询关键词集合,所述第一历史搜索数据由第二历史搜索数据反转得到;
所述第二历史搜索数据包括所述历史查询关键词及与所述历史查询关键词 相关的历史搜索结果集合,所述历史搜索结果集合中的历史搜索结果按照相关度分值从大到小的顺序排序,所述历史搜索结果的相关度分值通过以下公式得到:
其中,所述score为所述历史搜索结果的相关度分值,
DocViews为所述历史搜索结果被浏览的总数,p0-p10为权重参数,DocFirstClicks为所述历史搜索结果被第一次点击的总数,DocCliks为所述历史搜索结果被点击的总数,DocLastClicks为所述历史搜索结果被最后一次点击的总数,DocOnlyClicks为所述历史搜索结果仅被点击一次的总数,QueryTimes为所述历史查询关键词被查询的次数。其中,第一历史搜索数据和第二历史搜索数据可离线获得。
历史搜索结果、历史查询关键词、相关度分值和历史点击数据等历史数据,可通过但不限于以下方式得到:通过数据挖掘的方法从www.soso.com、百度、搜狗(sogou)、360、谷歌(google)等搜索引擎的日志中挖掘出查询关键词的相关搜索结果集,并对每条搜索结果进行相关度打分。
第二历史搜索数据不仅综合了历史搜索结果的第一次被点击次数,还综合了历史搜索结果仅被点击一次及最后一次被点击的次数,使得第二历史搜索数据中历史搜索结果的相关度,相对于现有的DBN(Dynamic Bayesian Network, 动态贝叶斯网络)模型仅考虑历史搜索结果的第一次被点击次数得到的相关度更精确。
并且,将公式(3)代入公式(1),可以得到
其中,score1/(DocClicks+p7)表示自身点击率,
score1/(QueryTimes+p9)表示整体点击率,可见第二历史搜索数据中的相关度分值不仅考虑了自身点击率还考虑了整体点击率,相对于dbn模型只考虑了自身点击率,没有考虑整体点击率,对于某些需要考虑整体点击率的关键词,本发明实施例给出的第二历史搜索数据中给出的历史搜索结果的相关度分值更加合理。
示例性的,根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,得到所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值,可包括:
当所述历史查询关键词集合中存在与所述查询请求中携带的关键词相同的历史查询关键词时,则将与所述查询请求中携带的关键词相同的历史查询关键词的相关度分值,作为所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值。
示例性的,根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,得到所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结 果的泛化匹配分值,可包括:
根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,以及所述历史查询关键词集合中每个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值,得到第一泛化匹配子分值和第二泛化匹配子分值;
根据所述第一泛化匹配子分值和第二泛化匹配子分值,得到泛化匹配分值。
示例性的,所述第一泛化匹配子分值可通过下式得到:
其中,i为所述历史查询关键词集合中历史查询关键词的编号,n为所述历史查询关键词集合中历史查询关键词的总数,Wi为所述历史查询关键词集合中第i个历史查询关键词的相关度分值,Pi为所述历史查询关键词集合中第i个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值。
示例性的,所述第二泛化匹配子分值通过下式得到:
其中,j为所述查询请求中携带的关键词中的词的顺序编号,m为所述查询请求中携带的关键词中的词的总数,idfj为所述查询请求中携带的关键词中第j个词的逆向文件频率(inverse document frequency)值,是一个词语普遍重要性的度量。某一特定词语的idf,可以由总文件数目除以包含该特定词语的文件的数目,再将得到的商取对数得到。
k为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的编号,N为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的总数,Wk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词的相关度分值,Pk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词,与所述查询请求中携带的关键词之间的匹配程度分值。
示例性的,根据所述第一泛化匹配子分值和第二泛化匹配子分值,得到泛化匹配分值,可包括:
通过下式计算得到所述泛化匹配分值:
score_g=α×score_p+β×score_c(7)
其中,score_g为所述泛化匹配分值,score_p为所述第一泛化匹配子分值,score_c为所述第二泛化匹配子分值,α和β为权重参数,且α+β=1。
在步骤13中,根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值。
例如,根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值,可包括:
通过下式计算得到所述最终匹配分值:
score_click=ε×score_s+δ×score_g(8)
其中,score_click为所述最终匹配分值,score_s为所述精确匹配分值,score_g为所述泛化匹配分值,ε和δ为权重参数,且ε+δ=1。
在步骤14中,按照所述最终匹配分值从大到小的顺序,对所述第一搜索结果集合中的搜索结果进行排序,得到并返回第二搜索结果集合。
本实施例提供的处理查询请求的方法通过确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,并根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值,按照最终匹配分值从大到小的顺序对搜索结果进行排序,增加了历史数据对搜索结果集合中搜索结果的排序的影响,从而使得搜索引擎返回的搜索结果集合的排序更加合理,使得衡量搜索引擎质量指标dcg(Discounted Cumulative Gain,已折扣的累计增益)值得到提高,提高了搜索引擎的性能。尤其地,当请求查询的关键词偏冷门时,历史积累的点击数据偏少,通过综合泛化匹配分值能够使历史数据尽可能多的应用到排序中,解决了现有技术基于精确匹配查询导致的排序结果由于缺少点击数据或存在较大的噪音,对排序效果的提升并不理想的问题。
以查询关键词ABC为例,对本发明实施例提供的处理查询请求的方法作进一步说明。
通常,在没有查询请求的情况下,搜索引擎会对历史数据进行统计,也即搜索引擎离线统计历史数据。
搜索引擎统计历史数据时,通过收集不同用户在不同时间段的关键词的查询、点击数据,按一定时间周期进行衰减累积。此步骤为离线实现,可每天更新一次。
数据来源可包括soso自身的展现点击数据,也包括如百度、谷歌等其他搜索引擎的点击数据。
其中,关键词的查询点击数据,包括但不限于关键词查询次数,关键词点击次数,搜索结果首次点击次数,搜索结果点击次数,搜索结果末次点击次数,搜索结果仅有1次点击时的点击次数等。
例如ABC被查询过3次,每次的搜索结果都为urla、urlb、urlc,其中,第一次查询完后,urla被首次点击,urlb被其次点击,urlc被末次点击,其中,urla仅被点击了1次;第二次查询完后,urla被首次点击,urlb被其次点击,urlc被末次点击,其中,urlc仅被点击了1次;第三次查询完后,urlc被首次点击,urla被其次点击,urlb被末次点击,其中,urla仅被点击1次。则urla被首次点击的次数为2,仅被一次点击的次数为2,被末次点击的次数为0;urlb被首次点击的次数为0,仅被一次点击的次数为0,被末次点击的次数为1;urlc被首次点击的次数为1,仅被一次点击的次数为1,被末次点击的次数为2。
历史数据的统计方法可以使用大规模数据并行处理映射化简(mapreduce)方法。例如对任务(session)日志以天为单位,汇总点击行为各个指标。映射(Map)阶段以查询的关键词为键值(key),点击数据为值(value)。化简(Reduce)阶段以查询的关键词为键值(key),以当天该关键词的点击数据累积作为value。
多天数据汇总,对每天reduce输出数据,按一定时间周期(如7天)进行衰减,并累加。
基于上述统计的历史数据,搜索引擎还进一步将一次点击和多次点击行为的模型融合成统一的离线相关度计算模型,通过该统一的离线相关度计算模型,得到历史查询关键词的历史搜索结果集合中各历史搜索结果的相关度分值。
具体地,首先获取某一历史查询关键词的所有点击过的搜索结果,并统计关键词的查询次数(记为QueryTimes),关键词查询后被点击的搜索结果的总数(记为QueryClicks),并且,对每个搜索结果,统计点击次数(记为 DocClicks);如果是给出查询结果后被第一次点击,统计被第一次点击总数为DocFirstClicks;如果给出查询结果后被最后一次点击,统计被最后一次点击总数为DocLastClicks;如果只有一次点击,统计只有一次被点击的总数为DocOnlyClicks。被用户浏览过的搜索结果的总数记为DocViews。
然后通过上述公式(2)得到score1,通过公式(3)得到score2,通过公式(1)得到score。
score为一个历史查询关键词的一个历史搜索结果的相关度分值。
计算完一个历史查询关键词的所有搜索结果的相关度分值后,按相关度分值从高到低的顺序对该历史查询关键词的所有搜索结果排序。可以将前100个(top100)搜索结果作为最终的搜索结果输出。
通过上述方法,可以对所有的历史查询关键词的历史搜索结果集合中的历史搜索结果进行打分排序,得到的结果即上述第二历史搜索数据。
之后,搜索引擎基于上述第二历史搜索数据,收集一个历史搜索结果对应的所有历史查询关键词。也就是说,将数据反转为计算每个历史搜索结果的历史查询结果集合,并获得每个历史查询结果相对于历史搜索结果的相关度分值,即得到上述第一历史搜索数据。
例如,用户搜索关键词“tengxun”、“腾讯网”、“qq首页”时,都对搜索结果:“http://www.qq.com/”产生过点击,通过上述获得第二历史搜索数据的方法,计算出关键词与搜索结果的相关度后,进行数据反转,得到的结果如表1所示。
表1
历史查询关键词 | 历史搜索结果 | 相关度分值 |
tengxun | http://www.qq.com/ | 0.93 |
腾讯网 | http://www.qq.com/ | 0.91 |
qq首页 | http://www.qq.com/ | 0.85 |
其中,数据反转的方法可以使用mapreduce,Map阶段以历史搜索结果如http://www.qq.com/为键值(key),历史查询关键词及相关度为value。Reduce阶段汇总每个历史搜索结果的历史查询关键词集合,并将历史查询关键词集合中的历史查询关键词按相关度分值排序。
搜索引擎离线获得的上述第一历史搜索数据和第二历史搜索数据,用于在线关键词查询请求的处理,以提升在线查询的搜索结果的排序效果。
当搜索引擎接收到客户端发来的携带有关键词ABC的查询请求时,搜索引擎首先在线搜索得到一个搜索结果集合。然后确定搜索结果集合中的每个搜索结果的精确匹配分值和泛化匹配分值,得到搜索结果集合中的每个搜索结果的最终匹配分值。
假设搜索引擎对关键词ABC进行搜索后得到的搜索结果集合中包含urld,且第一历史搜索数据中,urld对应的历史查询关键词集合及排序如表2所示。
表2
而表2中第一个历史查询关键词为ABC,与当前查询的关键词完全一致,则其相关度分值0.3,即搜索结果urld在当前查询请求处理中的精确匹配分值。
通过上述公式(4)以及上述表2中的分值,可以得到urld的第一泛化匹配子分值=0.3+0.24+0.42+0.56=1.56。
通过上述公式(6),可以得到关键词中词A的权重得分是:0.3+0.24+0.56=0.83,词B的权重得分是:0.3+0.24+0.42+0.56=1.56,词C的权重得分是:0.3+0.24+0.42+0.56=1.56。
假设关键词中A、B和C的逆向文件频率(idf)值分别是0.1、0.3和0.6,
则urld的第二泛化匹配子分值为关键词与权重得分的离弦相似度,具体通过上述公式(5),得到:
通过上述公式(7),得到urld的泛化匹配分值。
假设公式(7)中,α=0.7,β=0.3,则urld的泛化匹配分值=0.7×1.56+0.3×0.93=1.371。
然后通过上述公式(8),得到urld的最终匹配分值。
假设公式(8)中,ε=0.4,δ=0.6,则urld的最终匹配分值=0.4×0.3+0.6×1.371=0.9426。
类似的,通过上述方法得到当前查询的搜索结果集合中其他搜索结果的最终匹配分值。
最后,按照各搜索结果的最终匹配分值的从大到小的顺序排列搜索结果集 合中的搜索结果,如,假如urld的最终匹配分值最小,则将urld排在搜索结果集合的最后一个,假如urld的最终匹配分值最大,则将urld排在搜索结果集合的第一个。
本实施例中,搜索引擎通过离线计算关键词-搜索结果相关度,并将搜索结果相关的关键词集合传递到在线阶段,在线阶段对关键词做精确匹配和泛化匹配打分,并将两者融合得到更加高质量的排序因子即最终匹配分值,应用于搜索结果的排序。搜索引擎增加泛化匹配功能后,用户点击数据有效地提升了排序的效果,从dcg评估上效果能提升10%以上。
本发明实施例提供的方法不仅适用于soso搜索产品,也可以适用于百度、谷歌、360和搜狗等其它具有“关键词查询-相关度排序”特征的搜索产品。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、计算机只读存储器、光盘或软盘等。
图2是本发明实施例提供的一种处理查询请求的装置的结构示意图。本实施例提供的装置用于实现图1所示的方法,可为搜索引擎。如图2所示,处理查询请求的装置包括:
请求接收单元21,用于接收携带有关键词的查询请求;
搜索单元22,用于根据所述请求接收单元接收的查询请求中的关键词,获得与所述关键词相匹配的第一搜索结果集合;
第一分值确定单元23,用于确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,所述精确匹配分值为搜索结果与所述关键词完全匹配的分值,所述泛化匹配分值为搜索结果与所述关键词非完全匹配的分值;
第二分值确定单元24,用于根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值;
排序单元25,用于按照所述最终匹配分值从大到小的顺序,对所述第一搜索结果集合中的搜索结果进行排序,得到第二搜索结果集合;
结果发送单元26,用于返回所述第二搜索结果集合。
示例性的,所述第一分值确定单元23包括:
历史数据获得子单元,用于对于所述第一搜索结果集合中的每个搜索结果,获取相关的历史查询关键词集合,以及所述历史查询关键词集合中每个历史查询关键词的相关度分值,所述相关度分值为搜索结果满足用户查询需求的概率值;
分值获得子单元,用于根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,得到所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值和泛化匹配分值。
示例性的,所述历史数据获得子单元具体用于:
从第一历史搜索数据中获取相关的历史查询关键词集合,所述第一历史搜索数据由第二历史搜索数据反转得到;
所述第二历史搜索数据包括所述历史查询关键词及与所述历史查询关键词相关的历史搜索结果集合,所述历史搜索结果集合中的历史搜索结果按照相关度分值从大到小的顺序排序,所述历史搜索结果的相关度分值通过以下公式得到:
其中,所述score为所述历史搜索结果的相关度分值,
DocViews为所述历史搜索结果被浏览的总数,p0-p10为权重参数,DocFirstClicks为所述历史搜索结果被第一次点击的总数,DocCliks为所述历史搜索结果被点击的总数,DocLastClicks为所述历史搜索结果被最后一次点击的总数,DocOnlyClicks为所述历史搜索结果仅被点击一次的总数,QueryTimes为所述历史查询关键词被查询的次数。
示例性的,所述分值获得子单元具体用于:
当所述历史查询关键词集合中存在与所述查询请求中携带的关键词相同的历史查询关键词时,则将与所述查询请求中携带的关键词相同的历史查询关键词的相关度分值,作为所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值。
示例性的,所述分值获得子单元具体用于:
根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,以及所述历史查询关键词集合中每个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值,得到第一泛化匹配子分值和第二泛化匹配子分值;
根据所述第一泛化匹配子分值和第二泛化匹配子分值,得到泛化匹配分值。
示例性的,所述分值获得子单元具体用于通过下式得到所述第一泛化匹配子分值:
其中,i为所述历史查询关键词集合中历史查询关键词的编号,n为所述历史查询关键词集合中历史查询关键词的总数,Wi为所述历史查询关键词集合中第i个历史查询关键词的相关度分值,Pi为所述历史查询关键词集合中第i个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值。
示例性的,所述分值获得子单元具体用于通过下式得到所述第二泛化匹配子分值:
其中,j为所述查询请求中携带的关键词中的词的顺序编号,m为所述查询请求中携带的关键词中的词的总数,idfj为所述查询请求中携带的关键词中第j个词的逆向文件频率值,
k为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的编号,N为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的总数,Wk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词的相关度分值,Pk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词,与所述查询请求中携带的关键词之间的匹配程度分值。
示例性的,所述分值获得子单元具体用于:
通过下式计算得到所述泛化匹配分值:
score_g=α×score_p+β×score_c
其中,score_g为所述泛化匹配分值,score_p为所述第一泛化匹配子分值,score_c为所述第二泛化匹配子分值,α和β为权重参数,且α+β=1。
示例性的,所述第二分值确定单元具体用于:
通过下式计算得到所述最终匹配分值:
score_click=ε×score_s+δ×score_g
其中,score_click为所述最终匹配分值,score_s为所述精确匹配分值,score_g为所述泛化匹配分值,ε和δ为权重参数,且ε+δ=1。
本实施例提供的处理查询请求的装置,通过第一分值确定单元确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,并通过第二分值确定单元根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值,通过排序单元按照最终匹配分值从大到小的顺序对搜索结果进行排序,增加了历史数据对搜索结果集合中搜索结果的排序的影响,从而使得搜索引擎返回的搜索结果集合的排序更加合理,提升了搜索结果的排序效果。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (12)
1.一种处理查询请求的方法,其特征在于,包括:
接收到携带有关键词的查询请求后,根据所述关键词,获得与所述关键词相匹配的第一搜索结果集合;
确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值;
根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值;
按照所述最终匹配分值从大到小的顺序,对所述第一搜索结果集合中的搜索结果进行排序,得到并返回第二搜索结果集合;
其中,确定所述第一搜索结果集合中每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值,包括:对于所述第一搜索结果集合中的每个搜索结果,获取相关的历史查询关键词集合,以及所述历史查询关键词集合中每个历史查询关键词的相关度分值,所述相关度分值为搜索结果满足用户查询需求的概率值;根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,得到所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值和泛化匹配分值;
其中,根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,得到所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值和泛化匹配分值,包括:
当所述历史查询关键词集合中存在与所述查询请求中携带的关键词相同的历史查询关键词时,则将与所述查询请求中携带的关键词相同的历史查询关键词的相关度分值,作为所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值;
根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,以及所述历史查询关键词集合中每个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值,得到第一泛化匹配子分值和第二泛化匹配子分值;根据所述第一泛化匹配子分值和第二泛化匹配子分值,得到泛化匹配分值。
2.根据权利要求1所述的方法,其特征在于,获取相关的历史查询关键词集合,包括:
从第一历史搜索数据中获取相关的历史查询关键词集合,所述第一历史搜索数据由第二历史搜索数据反转得到;
所述第二历史搜索数据包括所述历史查询关键词及与所述历史查询关键词相关的历史搜索结果集合,所述历史搜索结果集合中的历史搜索结果按照历史搜索结果的相关度分值从大到小的顺序排序,所述历史搜索结果的相关度分值通过以下公式得到:
其中,所述score为所述历史搜索结果的相关度分值,
DocViews为所述历史搜索结果被浏览的总数,p0-p10为权重参数,DocFirstClicks为所述历史搜索结果被第一次点击的总数,DocCliks为所述历史搜索结果被点击的总数,DocLastClicks为所述历史搜索结果被最后一次点击的总数,DocOnlyClicks为所述历史搜索结果仅被点击一次的总数,QueryTimes为所述历史查询关键词被查询的次数。
3.根据权利要求1所述的方法,其特征在于,所述第一泛化匹配子分值通过下式得到:
其中,i为所述历史查询关键词集合中历史查询关键词的编号,n为所述历史查询关键词集合中历史查询关键词的总数,Wi为所述历史查询关键词集合中第i个历史查询关键词的相关度分值,Pi为所述历史查询关键词集合中第i个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值。
4.根据权利要求1所述的方法,其特征在于,所述第二泛化匹配子分值通过下式得到:
其中,j为所述查询请求中携带的关键词中的词的顺序编号,m为所述查询请求中携带的关键词中的词的总数,idfj为所述查询请求中携带的关键词中第j个词的逆向文件频率值,
k为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的编号,N为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的总数,Wk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词的相关度分值,Pk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词,与所述查询请求中携带的关键词之间的匹配程度分值。
5.根据权利要求1所述的方法,其特征在于,根据所述第一泛化匹配子分值和第二泛化匹配子分值,得到泛化匹配分值,包括:
通过下式计算得到所述泛化匹配分值:
score_g=α×score_p+β×score_c
其中,score_g为所述泛化匹配分值,score_p为所述第一泛化匹配子分值,score_c为所述第二泛化匹配子分值,α和β为权重参数,且α+β=1。
6.根据权利要求1-2任一项所述的方法,其特征在于,根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值,包括:
通过下式计算得到所述最终匹配分值:
score_click=ε×score_s+δ×score_g
其中,score_click为所述最终匹配分值,score_s为所述精确匹配分值,score_g为所述泛化匹配分值,ε和δ为权重参数,且ε+δ=1。
7.一种处理查询请求的装置,其特征在于,包括:
请求接收单元,用于接收携带有关键词的查询请求;
搜索单元,用于根据所述请求接收单元接收的查询请求中的关键词,获得与所述关键词相匹配的第一搜索结果集合;
第一分值确定单元,用于确定所述第一搜索结果集合中,每个搜索结果相对于所述关键词的精确匹配分值和泛化匹配分值;
第二分值确定单元,用于根据所述精确匹配分值和泛化匹配分值,得到所述第一搜索结果集合中每个搜索结果相对于所述关键词的最终匹配分值;
排序单元,用于按照所述最终匹配分值从大到小的顺序,对所述第一搜索结果集合中的搜索结果进行排序,得到第二搜索结果集合;
结果发送单元,用于返回所述第二搜索结果集合;
其中,所述第一分值确定单元包括:历史数据获得子单元,用于对于所述第一搜索结果集合中的每个搜索结果,获取相关的历史查询关键词集合,以及所述历史查询关键词集合中每个历史查询关键词的相关度分值,所述相关度分值为搜索结果满足用户查询需求的概率值;分值获得子单元,用于根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,得到所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值和泛化匹配分值;
其中,所述分值获得子单元具体用于:当所述历史查询关键词集合中存在与所述查询请求中携带的关键词相同的历史查询关键词时,则将与所述查询请求中携带的关键词相同的历史查询关键词的相关度分值,作为所述第一搜索结果集合中与所述历史查询关键词集合相关的搜索结果的精确匹配分值;
根据所述历史查询关键词集合中每个历史查询关键词的相关度分值,以及所述历史查询关键词集合中每个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值,得到第一泛化匹配子分值和第二泛化匹配子分值;根据所述第一泛化匹配子分值和第二泛化匹配子分值,得到泛化匹配分值。
8.根据权利要求7所述的装置,其特征在于,所述历史数据获得子单元具体用于:
从第一历史搜索数据中获取相关的历史查询关键词集合,所述第一历史搜索数据由第二历史搜索数据反转得到;
所述第二历史搜索数据包括所述历史查询关键词及与所述历史查询关键词相关的历史搜索结果集合,所述历史搜索结果集合中的历史搜索结果按照历史搜索结果的相关度分值从大到小的顺序排序,所述历史搜索结果的相关度分值通过以下公式得到:
其中,所述score为所述历史搜索结果的相关度分值,
DocViews为所述历史搜索结果被浏览的总数,p0-p10为权重参数,DocFirstClicks为所述历史搜索结果被第一次点击的总数,DocCliks为所述历史搜索结果被点击的总数,DocLastClicks为所述历史搜索结果被最后一次点击的总数,DocOnlyClicks为所述历史搜索结果仅被点击一次的总数,QueryTimes为所述历史查询关键词被查询的次数。
9.根据权利要求7所述的装置,其特征在于,所述分值获得子单元具体用于通过下式得到所述第一泛化匹配子分值:
其中,i为所述历史查询关键词集合中历史查询关键词的编号,n为所述历史查询关键词集合中历史查询关键词的总数,Wi为所述历史查询关键词集合中第i个历史查询关键词的相关度分值,Pi为所述历史查询关键词集合中第i个历史查询关键词与所述查询请求中携带的关键词之间的匹配程度分值。
10.根据权利要求7所述的装置,其特征在于,所述分值获得子单元具体用于通过下式得到所述第二泛化匹配子分值:
其中,j为所述查询请求中携带的关键词中的词的顺序编号,m为所述查询请求中携带的关键词中的词的总数,idfj为所述查询请求中携带的关键词中第j个词的逆向文件频率值,
k为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的编号,N为所述历史查询关键词集合中包含所述查询请求中携带的关键词中第j个词的历史查询关键词的总数,Wk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词的相关度分值,Pk为所述历史查询关键词集合中,包含所述查询请求中携带的关键词中第j个词的第k个历史查询关键词,与所述查询请求中携带的关键词之间的匹配程度分值。
11.根据权利要求7所述的装置,其特征在于,所述分值获得子单元具体用于:
通过下式计算得到所述泛化匹配分值:
score_g=α×score_p+β×score_c
其中,score_g为所述泛化匹配分值,score_p为所述第一泛化匹配子分值,score_c为所述第二泛化匹配子分值,α和β为权重参数,且α+β=1。
12.根据权利要求7-8任一项所述的装置,其特征在于,所述第二分值确定单元具体用于:
通过下式计算得到所述最终匹配分值:
score_click=ε×score_s+δ×score_g
其中,score_click为所述最终匹配分值,score_s为所述精确匹配分值,score_g为所述泛化匹配分值,ε和δ为权重参数,且ε+δ=1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310573444.XA CN104636403B (zh) | 2013-11-15 | 2013-11-15 | 处理查询请求的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310573444.XA CN104636403B (zh) | 2013-11-15 | 2013-11-15 | 处理查询请求的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104636403A CN104636403A (zh) | 2015-05-20 |
CN104636403B true CN104636403B (zh) | 2019-03-26 |
Family
ID=53215165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310573444.XA Active CN104636403B (zh) | 2013-11-15 | 2013-11-15 | 处理查询请求的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104636403B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372073A (zh) * | 2015-07-21 | 2017-02-01 | 北京大学 | 一种数学公式检索方法与装置 |
CN105528430B (zh) * | 2015-12-10 | 2019-05-31 | 北京奇虎科技有限公司 | 一种确定搜索项的权重的方法和装置 |
CN106919575B (zh) * | 2015-12-24 | 2020-12-25 | 北京奇虎科技有限公司 | 应用程序搜索方法及装置 |
CN109063108B (zh) * | 2018-07-27 | 2020-03-03 | 北京字节跳动网络技术有限公司 | 搜索排序方法、装置、计算机设备和存储介质 |
CN109918565B (zh) * | 2019-02-02 | 2021-05-11 | 北京搜狗科技发展有限公司 | 一种搜索数据的处理方法、装置及电子设备 |
CN116881405A (zh) * | 2023-09-07 | 2023-10-13 | 深圳市金政软件技术有限公司 | 汉字模糊匹配方法、装置、设备及介质 |
CN118152431B (zh) * | 2024-03-14 | 2024-10-25 | 中国人民解放军96911部队 | 军队营区管理营区分组的搜索方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146288A (zh) * | 2007-09-24 | 2008-03-19 | 中兴通讯股份有限公司 | 一种短信息移动搜索方法及系统 |
CN101464897A (zh) * | 2009-01-12 | 2009-06-24 | 阿里巴巴集团控股有限公司 | 一种词匹配及信息查询方法及装置 |
US7756860B2 (en) * | 2007-05-23 | 2010-07-13 | International Business Machines Corporation | Advanced handling of multiple form fields based on recent behavior |
CN102521350A (zh) * | 2011-12-12 | 2012-06-27 | 浙江大学 | 基于历史点击数据的分布式信息检索集合选择方法 |
CN102663088A (zh) * | 2012-03-31 | 2012-09-12 | 百度在线网络技术(北京)有限公司 | 一种用于提供搜索结果的方法与设备 |
CN102999508A (zh) * | 2011-09-13 | 2013-03-27 | 腾讯科技(深圳)有限公司 | 搜索结果排序方法及系统 |
CN103092856A (zh) * | 2011-10-31 | 2013-05-08 | 阿里巴巴集团控股有限公司 | 搜索结果排序方法及设备、搜索方法及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050076003A1 (en) * | 2003-10-06 | 2005-04-07 | Dubose Paul A. | Method and apparatus for delivering personalized search results |
US20050256848A1 (en) * | 2004-05-13 | 2005-11-17 | International Business Machines Corporation | System and method for user rank search |
US20060064411A1 (en) * | 2004-09-22 | 2006-03-23 | William Gross | Search engine using user intent |
-
2013
- 2013-11-15 CN CN201310573444.XA patent/CN104636403B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7756860B2 (en) * | 2007-05-23 | 2010-07-13 | International Business Machines Corporation | Advanced handling of multiple form fields based on recent behavior |
CN101146288A (zh) * | 2007-09-24 | 2008-03-19 | 中兴通讯股份有限公司 | 一种短信息移动搜索方法及系统 |
CN101464897A (zh) * | 2009-01-12 | 2009-06-24 | 阿里巴巴集团控股有限公司 | 一种词匹配及信息查询方法及装置 |
CN102999508A (zh) * | 2011-09-13 | 2013-03-27 | 腾讯科技(深圳)有限公司 | 搜索结果排序方法及系统 |
CN103092856A (zh) * | 2011-10-31 | 2013-05-08 | 阿里巴巴集团控股有限公司 | 搜索结果排序方法及设备、搜索方法及设备 |
CN102521350A (zh) * | 2011-12-12 | 2012-06-27 | 浙江大学 | 基于历史点击数据的分布式信息检索集合选择方法 |
CN102663088A (zh) * | 2012-03-31 | 2012-09-12 | 百度在线网络技术(北京)有限公司 | 一种用于提供搜索结果的方法与设备 |
Non-Patent Citations (5)
Title |
---|
"基于历史信息提升关键字查询效率";万洁 等;《小型微型计算机系统》;20111231;全文 |
"基于日志分析的信息检索技术研究与实现";陈浩然;《中国优秀硕士学位论文全文数据库》;20091231;全文 |
"基于用户兴趣的个性化搜索引擎技术研究";张璇;《中国优秀硕士学位论文全文数据库》;20111231;全文 |
"基于用户兴趣的元搜索引擎检索结果合成技术";宫婷;《电信快报》;20091231;全文 |
"基于语义相似度的Web数据库不精确查询方法";孟祥福 等;《计算机科学》;20120430;全文 |
Also Published As
Publication number | Publication date |
---|---|
CN104636403A (zh) | 2015-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104636403B (zh) | 处理查询请求的方法及装置 | |
US11507551B2 (en) | Analytics based on scalable hierarchical categorization of web content | |
US9128945B1 (en) | Query augmentation | |
US8615514B1 (en) | Evaluating website properties by partitioning user feedback | |
US8260664B2 (en) | Semantic advertising selection from lateral concepts and topics | |
Dou et al. | Evaluating the effectiveness of personalized web search | |
US8631035B2 (en) | Method for efficiently supporting interactive, fuzzy search on structured data | |
US8566160B2 (en) | Determining placement of advertisements on web pages | |
US20170357723A1 (en) | Systems for and methods of finding relevant documents by analyzing tags | |
US9589277B2 (en) | Search service advertisement selection | |
US8977625B2 (en) | Inference indexing | |
US20130254030A1 (en) | Keyword-based content suggestions | |
Deng et al. | Entropy-biased models for query representation on the click graph | |
CN103218373B (zh) | 一种相关搜索系统、方法及装置 | |
US20090063265A1 (en) | Information network for text ads | |
Mele | Web usage mining for enhancing search-result delivery and helping users to find interesting web content | |
EP2395441A1 (en) | Systems and methods for online search recirculation and query categorization | |
CN102081668A (zh) | 基于领域本体的信息检索优化方法 | |
US20120179540A1 (en) | Method of finding commonalities within a database | |
Chang et al. | Learning-based time-sensitive re-ranking for web search | |
Bensman | Eugene Garfield, Francis Narin, and Pagerank: The theoretical bases of the Google search engine | |
Kataria et al. | A novel approach for rank optimization using search engine transaction logs | |
Balog et al. | Collection ranking and selection for federated entity search | |
Khelghati | Deep web content monitoring | |
Mali et al. | Implementation of multiuser personal web crawler |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |