随着互联网的发展,网络上已有的网页数量庞大,并且每天都会有很多网页发布,如何权衡这些重要度的排名是一个很重要的问题。我们今天就来了解一下PageRank算法。

首先我们要来了解一下图的概念,请看图1。

图1中,A/B/C/D成为节点,e1/e2/e3/e4/e5成为边。指向某个节点的边成为该节点的入度,从该节点指出的边成为该节点的出度。比如对接点B来说,e1是唯一指向B的边,我们可计算出B节点的入度为1;e3是B节点唯一指向其它节点的边,我们可以算出B节点的出度为1。对于网络上的网页之间的关系也可以用上述模型来模仿。对某一个特定网页来说,网络上存在很多网页指向它,并且这个网页内也包含很多指向其它网页的超链接。比如:有很多网页指向百度搜索、百度百科,百度页面内有指向其它网页的超链接。

我们可以用图1中的A/B/C/D表示四个网页,网页与网页之间的边我们成为链接。比如对网页D来说,网络上有一个网页(B)指向它,它包含两个超链接(e4、e5),一个链向网页A,一个链向网页C。在计算机中,图结构可以用二维矩阵来表示:如果网页A到网页B有一条边(连接),那么矩阵中第A行第B列的元素不为0(可以表示为w,w表示权重,但本文都表示为1)。那么,图1所对应的二维矩阵可以表示为图2的形式。

我们采用行存储,例如:A到B有一条边,在矩阵中可表示为第A行第B列的元素为1。

那么,我们现在来考虑一下:什么样的网页重要?可以想象,某种程度上,1)网页入度越多,其重要度越高;2)高质量的网页指向的网页也是高质量的。PageRank就是基于这两点来进行计算的,其数学表达形式如式1所示。  式1

假设每个页面的初始重要度都为1,包含的超链接数为N,那么它向每个页面传递的重要度为1/N。按照这个思想构造超链接矩阵H,如式2所示。

  式2

由于初始重要度都为1,所以初始向量如式3所示。

通过式1,其计算过程可表示为,直到.

在面对实际网络时,有三个问题需要考虑:1,I是否会收敛?2,I的收敛是否与初始值无关?3,满足前两条的情况下得到的数据是否可以作为重要度的排名?现在按照H计算,对这三个问题的回答都是No。需要进行随机调整(Stochasticity Adjustment)保证必须收敛,再进行素矩阵调整(Primitivity Adjustment)保证收敛的元素都为正,即:重要度都是大于0的。

我眼中的PageRank算法详解的更多相关文章

  1. BM算法  Boyer-Moore高质量实现代码详解与算法详解

    Boyer-Moore高质量实现代码详解与算法详解 鉴于我见到对算法本身分析非常透彻的文章以及实现的非常精巧的文章,所以就转载了,本文的贡献在于将两者结合起来,方便大家了解代码实现! 算法详解转自:h ...

  2. kmp算法详解

    转自:http://blog.csdn.net/ddupd/article/details/19899263 KMP算法详解 KMP算法简介: KMP算法是一种高效的字符串匹配算法,关于字符串匹配最简 ...

  3. 机器学习经典算法详解及Python实现--基于SMO的SVM分类器

    原文:http://blog.csdn.net/suipingsp/article/details/41645779 支持向量机基本上是最好的有监督学习算法,因其英文名为support vector  ...

  4. [转] KMP算法详解

    转载自:http://www.matrix67.com/blog/archives/115 KMP算法详解 如果机房马上要关门了,或者你急着要和MM约会,请直接跳到第六个自然段.    我们这里说的K ...

  5. 【转】AC算法详解

    原文转自:http://blog.csdn.net/joylnwang/article/details/6793192 AC算法是Alfred V.Aho(<编译原理>(龙书)的作者),和 ...

  6. KMP算法详解(转自中学生OI写的。。ORZ!)

    KMP算法详解 如果机房马上要关门了,或者你急着要和MM约会,请直接跳到第六个自然段. 我们这里说的KMP不是拿来放电影的(虽然我很喜欢这个软件),而是一种算法.KMP算法是拿来处理字符串匹配的.换句 ...

  7. EM算法详解

    EM算法详解 1 极大似然估计 假设有如图1的X所示的抽取的n个学生某门课程的成绩,又知学生的成绩符合高斯分布f(x|μ,σ2),求学生的成绩最符合哪种高斯分布,即μ和σ2最优值是什么? 图1 学生成 ...

  8. Tarjan算法详解

    Tarjan算法详解 今天偶然发现了这个算法,看了好久,终于明白了一些表层的知识....在这里和大家分享一下... Tarjan算法是一个求解极大强联通子图的算法,相信这些东西大家都在网络上百度过了, ...

  9. 安全体系(二)——RSA算法详解

    本文主要讲述RSA算法使用的基本数学知识.秘钥的计算过程以及加密和解密的过程. 安全体系(零)—— 加解密算法.消息摘要.消息认证技术.数字签名与公钥证书 安全体系(一)—— DES算法详解 1.概述 ...

随机推荐

  1. BZOJ 2073 [POI2004]PRZ(状压DP)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2073 [题目大意] 任何时候队伍在桥上的人都不能超过一定的限制. 所以这只队伍过桥时只 ...

  2. BZOJ 1066 [SCOI2007]蜥蜴(最大流)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1066 [题目大意] 在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上站着一些 ...

  3. keytool工具生成自签名证书并且通过浏览器导入证书

    1.生成服务器证书库 keytool -genkey -alias tomcat -keypass changeit -keyalg RSA -keysize 1024 -validity 365 - ...

  4. [转] hibernate Mysql 自增长 注解配置,表无关联的注解方式关联查询

    不同数据库 自增长ID配置 正对不同的数据库可以同时使用         @Id         @GeneratedValue(strategy = GenerationType.AUTO) 2 针 ...

  5. 关于JS的This指针

    下面讨论一个执行上下文的最后一个属性——this指针的概念. This指针 A this value is a special object which is related with the exe ...

  6. Hiho: 连通图

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 还记得上次小Hi和小Ho学校被黑客攻击的事情么,那一次攻击最后造成了学校网络数据的丢失.为了避免再次出现这样的情况,学校决 ...

  7. SQL Server 2008数据库备份和还原(还原是必须有完整备份)

    转自lwccc, SQLserver2008数据库备份和还原问题(还原是必须有完整备份) 首先,我要说明的是你必须拥有完整的数据库备份,下面的还原教程,才算有用. 这个连接是某高手的异常恢复方法, 实 ...

  8. 开源轻量级即时通讯技术 MobileIMSDK 的常见问题解答

    本帖最后由 茜茜asa 于 2015-12-14 17:50 编辑 申明:MobileIMSDK 目前为个人原创开源工程且已发布,现整理了一些有关MobileIMSDK的常见的问题,希望对需要的人有用 ...

  9. arcgis andriod 点击后变色

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= ...

  10. iOS: performXXX的几种方法总结:

    performXXX的用法: 视图切换: ※根据segue标识符切换视图 performSegueWithIdentifier:(NSString *) identifier sender:(id) ...