第十章 PageRank——Google的民主表决式网页排名技术

  搜索引擎的结果取决于两组信息:网页的质量信息,这个查询与每个网页的相关性信息。这里,我们介绍前一个。

1.PageRank算法原理

  算法的原理很简单,在互联网上,如果一个网页被很多其他网页所链接,说明它收到普遍的承认和信赖,那么它的排名就高。比如我们要找李开复博士,有100个人举手说自己是李开复,那么谁是真的呢?如果大家都说创新工厂的那个是真的,那么他就是真的。这就是所谓的民主表决。但是,那么多网页,我们不可能一样对待。有些可靠的链接,相应的权重就要大一点。但是麻烦来了,一开始的时候,我们怎么给网页设置初始权重呢?这有点类似“先有鸡还是先有蛋”的问题。破解这个问题的是谷歌的创始人之一:布林。他把问题变成一个二维矩阵相乘的问题,用迭代的方法解决这个问题。他们先假设所有网页的排名相同,然后算出哥哥网页第一次迭代排名,然后根据这个第一次的排名算第二次的....他们从理论上证明了无论初始值如何,这个算法保证网页的排名的估计值能收敛到排名的真实值。且算法不需要人工干预。由于互联网上的网页量很大,在计算矩阵乘法时,谷歌利用稀疏矩阵减少了计算量。并利用MapReduce实现并行计算自动化。

  网页排名算法的高明之处在于它把整个互联网当作一个整体来对待。这无意识中符合了系统论的观点。而当时大部分人只注意了网页内容和查询语句,忽略了网页之间的关系,就算发现了,也只是摸到一些皮毛,没有从根本上解决问题。这个算法对当时的搜索结果影响非常大。当时一般的搜索引擎,前十个只有三四个是相关的。而Google能达到七八条。现在的搜索引擎基本都能达到这一点。

2.延伸阅读:PageRank的计算方法

  假定向量

  

  为第一、第二、...第N个网页的排名。矩阵

  

  

  为网页之间连接的数目,amn代表第m个网页指向第n个网页的链接数。A已知,B未知,也是我们要计算的。

  假定Bi是第i次迭代的结果,那么Bi = A·Bi-1      (10.3)

  初试假设:所有网页的排名都是1/N,即

  

  

  对初试B0不断迭代,我们可以最终得到Bi,且收敛。当Bi和Bi-1的差距非常小时,我们可以停止迭代。

  此外,由于网页之间链接数量相比互联网的规模非常稀疏,因此计算网页的排名也需要对零概率或者小概率事件进行平滑处理。公式如下:

  

  其中N是互联网网页数量,是一个很小的常数,I是单位矩阵。

3.小节

  虽然今天的Google搜索比最初复杂、完善了很多,但PageRank算法依然是至关重要的。它在文献检索中的贡献是相当大的。

时间: 2024-10-07 21:44:02

第十章 PageRank——Google的民主表决式网页排名技术的相关文章

响应式网页设计模式

[导读]:虽然响应式网页设计模式正在快速发展,不过已经有几种成熟的设计模式可以流畅地兼容桌面端和移动端设备. 本篇教程将介绍: Mostly fluid Column drop Layout shifter Tiny tweaks Off canvas 大多数响应式网页的布局可以归纳为五种设计模式:mostly fluid.column drop.layout shifter.tiny tweaks和off canvas.一些情况下,页面可能会采用组合设计模式,例如组合使用column drop

7款响应式网页测试工具

响应式设计几乎是当代网页设计的基础构成之一.在实际设计和开发的过程中,想要让网站按照设计响应不同尺寸屏幕,设计师和前端需要花费相当的时间来进行测试和优化.所以,今天我们搜集了7款功能强大的响应式页面测试工具,下面就一一介绍一下. 1. XRESPOND 这款名为 XRespond 的工具自称为“虚拟设备实验室”,这个称号其实是名副其实的. 通过Xrespond 打开网页,你可以看到它在不同屏幕尺寸下的样子,整个布局是横向的,所以你需要横向滚动页面才能看到它所有的样子. 屏幕上方的标签会标识出它是

响应式网页设计简单入门(强烈推薦!!!!)

响应式网页设计简单入门 Overview: 构造基本的HTML页面 动态加载样式表 Viewport 字体缩放 侧边栏 导航菜单 图片自适应 其他 总结 说到响应式网页设计(Responsive web design),最近在谷歌加上碰到个奇葩贴子,通过一个原始到无法再简单的网页Motherfucking Website及满屏幕的fuck道出了网页设计的真谛,这孩子不是个激进分子就是个报复社会型的货没错,虽然整篇文章就像是泼妇骂街,但我特么是笑着读完的.. 统计了下全文共用Fuck (包括fuc

HTML5+CSS3的响应式网页设计:自动适应屏幕宽度

这几天都在修改博客上面的样式.本来用的是d83.0的模板.自己又修改了许多地方,其中自己修改的一些地方在手机里面显示的效果不是很理想,于是想改成自适应的效果.对CSS3不是特别的熟练,只能去网上找找案例看了.发现一个不错的文章.写的比较入门,也很仔细.所以拿过来分享给大家.如果还想看图片的响应式案例可以看我找的另外的一篇<分享一个非常有用的HTML5+CSS3响应式图片案例>. 移动设备正超过桌面设备,成为访问互联网的最常见终端.于是,网页设计师不得不面对一个难题:如何才能在不同大小的设备上呈

响应式网页

页面有能力去自动响应用户的设备环境,响应式网页设计就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本. 响应式Web设计是在开发和设计网站过程中产生的一种方式,它的目的是让内容布局能随用户使用显示器的不同而变化.再明确点说,这种设计概念,就是让原本1292像素宽,4栏的内容,能够很好地显示在1025像素宽的用户屏幕上,同时还能自动简化成2栏.当然,让它很好的适应智能手机和其他种类电脑的屏幕也就成了水到渠成的事了.这种特殊的设计形式就被成为“响应式Web设计”页面的设计与开发应当根据

什么叫响应式网页,扫盲帖

摘自百度 响应式Web设计(Responsive Web design)的理念是: 页面的设计与开发应当根据用户行为以及设备环境(系统平台.屏幕尺寸.屏幕定向等)进行相应的响应和调整.具体的实践方式由多方面组成,包括弹性网格和布局.图片.CSS media query的使用等.无论用户正在使用笔记本还是iPad,我们的页面都应该能够自动切换分辨率.图片尺寸及相关脚本功能等,以适应不同设备:换句话说,页面应该有能力去自动响应用户的设备环境.响应式网页设计就是一个网站能够兼容多个终端——而不是为每个

响应式网页设计

随着越来越多类型的移动设备的普及,网页设计也随之变化,响应式网页设计应用而生,目前已有有很多比较流行的框架解决此问题,无论切换任何设备,都会自动根据设备的大小进行动态变化,无需为每个量身定做不同类别的网页,大大节省了开发工作量,响应式网页设计已经成为一种趋势. 一.流行的前端(from_end)设计框架很多,大概有以下几种: 1. Bootstrap Boostrap绝对是目前最流行用得最广泛的一款框架.它是一套优美,直观并且给力的web设计工具包,可以用来开发跨浏览器兼容并且美观大气的页面.它

10款设计师必备的响应式网页设计工具

随着便携设备用户的指数级增长,网页设计师采用响应式设计作为多平台布局解决方案,不但节省了设计师的时间,而且从长远角度来讲,响应式设计能够为用户提供更舒适的操作环境. 如果你毫无经验,不知从何开始,那么这份工具列表将大大的帮助你,能够让你的布局更有“弹性”. Simple Grid Simple Grid是难以置信的CSS框架,无所限制的栅格布局,支持不同大小的屏幕. Susy Susy “语义变焦”的栅格系统,无需额外标记和特殊的类,很方便使用Sass的人. Tiny Fluid Grid Ti

响应式网页设计中的图片处理

响应式网页设计,是一种正在流行的网页开发思想,它是利用灵活可变的栅格系统,令网页的显示模式可以根据访问设备的屏幕尺寸规格而进行自适应.预计2015年的时候,移动端的用户数量将会从目前的8亿,增长到19亿,而这也意味着目前我们为桌面浏览器而设计的网页,将会在他们的手机和平板上呈现出非常糟糕的使用体验. 但是随着实际应用状况的改变,响应式网页设计还是会出现一系列复杂的并发症.本文余下的部分,就是详细阐述如何在响应式网页中安置和处理多媒体元素,诸如图片和视频,最终的目的是帮你做出一个靠谱的网站,能让这