【百度搜索研发部】以求医为例谈搜索引擎排序算法的基础原理(转)

我们向搜索引擎网站提交处理一个查问,搜索引擎网站会从先到后列出数量多的最后结果,这些个最后结果排序的标准是啥子呢?这个看似简单的问题,却是信息检索资深专家们研讨的中心困难的问题之一。

为理解释明白这个问题,我们来研讨一个比搜索引擎网站更加古老的话题:求医。譬如,假如我牙疼,应当去看怎样的医生呢?如果我只有三种挑选: 

A医生,既治眼病,又治胃病; 

B医生,既治牙病,又治胃病,还治眼病; 

C医生,专治牙病。 

A医生肯定不在思索问题之列。B医生和C医生之间,貌视更应当挑选C医生,由于他更专注,更适应我的病情。如果再加一个条件:B医生内行,有二十年从医经历,医疗技术高超,而C医生只有五年从医经验,这个问题就不那末容易判断了,是优先挑选更加专注的C医生,仍然优先挑选医疗技术更加高超的B医生,确实成了一个需求仔细衡量的问题。 

至少,我们获得了一个论断,择医需求思索问题两个条件:医生的专长与病情的适配程度;医生的医疗技术。大家肯定感到这个论断不容置疑,并且可以很天然地联想到,搜索引擎网站排序不也是这么吗,既要思索问题网页内部实质意义与用户查问的般配程度,又要思索问题网页本身的品质。不过,怎么把这两种因素接合起来,获得一个,而不是两个或多个排序标准呢?如果我们把这两种因素表达成数字,最后的排序根据是把这两个数字加起来,仍然乘起来,或是按决策树的方法把他们团体起来?若是加起来,是简单相加,仍然带权重加呢? 

我们可以依据直觉和经验,经过试错的方法,把这两个因素接合起来。但更好的方法是我们能找到一个明确的根据,最好能跟算术这么坚实的学科结合起来。提起来,根据素朴的经验,人的总称在古代就能建筑出高楼;但要建筑出高达数百米的 挨天大厦,假如没有建造力学、材料力学这么坚实的学科作为后盾,则是十分十分艰难的。同理,根据素朴的经验构建的搜索引擎网站算法,用来处置上万的网页聚齐应当是没问题的;但要检索上亿的网页,则需求更为坚固的理论基础。 

求医,病人会优先挑选诊断正确、医治效果好的医生;对于搜索引擎网站来说,普通按网页满意用户需要的几率从大到小排序。假如用q表达用户给出了一个特别指定的查问,用d表达一个特别指定的网页满意了用户的需要,那末排序的根据可以用一个条件几率来表达: 

P(dq)

这个简单的条件几率,将搜索引擎网站排序算法与几率论这门坚实的学科结合了起来,这就像在沧海中航行的船舶装备了南针同样。利用贝叶斯公式,这个条件几率可以表达为:

可以明白地看见,搜索引擎网站的排序标准,是由三个局部组成的:查问本身的属性P(q);网页本身的属性P(d);两者的般配关系P(qd)。对于同一次查问来说,全部网页对应的P(q)都是同样的,因为这个排序时可以不思索问题,即

公式左面,是已知用户的查问,求网页满意该用户需要的几率。搜索引擎网站为了增长响应用户查问的性能,需求事前对所要等待查问的网页做预处置。预处置时,只晓得网页,不晓得用户查问,因为这个需求倒过来计算,即剖析每个网页能满意哪一些需要,该网页分了多大比例来满意该需要,即获得公式右面的第1项P(qd),这相当于上文绍介的医生的专门程度。譬如,一个网页专门绍介牙病,另一个网页既绍介牙病又绍介胃病,那末对于“牙疼”这个查问来说,前一个网页的P(qd)值便会更高一点。

公式右面的第二项P(d),是一个网页满意用户需要的几率,它反映了网页本身的好坏,与查问无关。如果要向一个陌陌生人引荐网页(我们并不晓得他需求啥子),那末P(d)就相当于某个特别指定的网页被引荐的几率。在传统的信息检索板型中,这一个量不太被看得起,如传统的矢量空间板型、BM25板型,都打算只依据查问与文档的般配关系来获得排序的权重。而其实,这个与查问无关的量是十分关紧的。如果我们用网页被过访的频次来估计它满意用户需要的几率,可以看出对于两个不一样的网页,这个量有着非常很大的差别:有的网页每日只被过访一两次,而有的网页每日被过访成千累万次。能够供给这么很大差别的量,竟长时期被传统的搜索引擎网站疏忽,一直到Google创造了pagerank并让它参加到排序中。Pagerank是对P(d)值的一个不赖的估计,这个因素的参加使搜索引擎网站的效果迅即升涨到达一个新的阶梯。

 这个公式一样应答了上文提出的问题,网页与查问的般配程度,和网页本身的好坏,这两个因素应当怎样接合起来参加排序。这个公式以不可以反驳的理由奉告我们,假如网页与查问的般配程度用P(qd)来表达,网页本身的好坏用P(d)来表达,那末应当按他们的乘积来施行排序。在现代经济活动搜索引擎网站中,需求思索问题更多更细节的排序因素,这些个因素有可能有结果百上千个,要把他们合成一体起来是更加复杂和难题。

 

https://seofangfa.com/baidu-tech/sorting-algorithm.html 

posted on 2017-09-05 17:25  gogoy  阅读(270)  评论(0编辑  收藏  举报

导航