当前位置: 首页 > SEO学院SEO知识

[SEO算法]详细介绍PageRank算法从原理到实现的全过程

来源:未知 浏览量:394次

  一、 PageRank算法概述:

  PageRank,即网页排名又称网页级别、Google左側排名或佩奇排名。

[SEO算法]详细介绍PageRank算法从原理到实现的全过程

  二、从入链数量到 PageRank:

  在PageRank提出之前已经有研究者提出利用网页的入链数量来进行链接分析计算这样的入链方法如果一个网页的入链越多则该网页越重要。早期的非常多搜索引擎也採纳了入链数量作为链接分析方法对于搜索引擎效果提升也有较明显的效果。 PageRank除了考虑到入链数量的影响还參考了网页质量因素两者相结合获得了更好的网页重要性评价标准。

[SEO算法]详细介绍PageRank算法从原理到实现的全过程

  1、数量如果:在Web图模型中如果一个页面节点接收到的其它网页指向的入链数量越多那么这个页面越重要。

  2、质量如果:指向页面A的入链质量不同质量高的页面会通过链接向其它页面传递很多其它的权重。所以越是质量高的页面指向页面A则页面A越重要。

  利用以上两个如果PageRank算法刚開始赋予每一个网页同样的重要性得分通过迭代递归计算来更新每一个页面节点的PageRank得分直到得分稳定为止。 PageRank计算得出的结果是网页的重要性评价这和用户输入的查询是没有不论什么关系的即算法是主题无关的。如果有一个搜索引擎其相似度计算函数不考虑内容相似因素全然採用PageRank来进行排序那么这个搜索引擎的表现是什么样子的呢?这个搜索引擎对于随意不同的查询请求返回的结果都是同样的即返回PageRank值最高的页面。

  三、PageRank算法原理:

  1、基本概念

  先了解几个基本概念一遍后面内容理解

  Ⅰ、出链

  如果在网页A中附加了网页B的超链接B-Link用户浏览网页A时可以点击B-Link然后进入网页B。上面这种A附有B-Link这种情况表示A出链B。可知网页A也可以出链C如果A中也附件了网页C的超链接C-Link。

  Ⅱ、入链

  上面通过点击网页A中B-Link进入B表示由A入链B。如果用户自己在浏览器输入栏输入网页B的URL然后进入B表示用户通过输入URL入链B

  Ⅲ、无出链

  如果网页A中没有附加其他网页的超链接则表示A无出链

  Ⅳ、只对自己出链

  如果网页A中没有附件其他网页的超链接而只有他自己的超链接A-Link则表示A只对自己出链

  Ⅴ、PR值

  一个网页的PR值概率上理解就是此网页被访问的概率PR值越高其排名越高。

  下面给出计算PR值可能遇到的几种不同情况:

  case1:网页都有出入链

  此种情况下的网页A的PR值计算公式为:

  case2:存在没有出链的网页

  网页C是没有出链。因为C没有出链所以对A,B,D网页没有PR值的贡献。PageRank算法的策略:从数学上考虑为了满足Markov链设定C对A,B,C,D都有出链(也对他自己也出链

)。你也可以理解为:没有出链的网页我们强制让他对所有的网页都有出链即让他对所有网页都有PR值贡献。

  此种情况PR(A)的计算公式:

  case3:存在只对自己出链的网页

  C是只对自己出链的网页。

  此时访问C时不会傻乎乎的停留在C页面一直点击C-Link循环进入C即C网页只对自己的网页PR值有贡献。正常的做法是进入C后存在这种情况:在地址输入栏输入A/B/C/D的URL地址然后跳转到A/B/C/D进行浏览这就是PageRank算法解决这种情况的策略:设定存在一定概率为α用户在地址栏输入A/B/C/D地址然后从C跳转到A/B/C/D进行浏览。

  此时PR(A)的计算公式为:

  一般取值α=0.85

  Ⅵ、算法公式:

  注:Mpi是有出链到pi的所有网页集合L(pj)是有网页pj的出链总数N是网页总数α一般取值为0.85

  所有网页PR值同时计算需要迭代计算:一直迭代计算停止直到下面2情况之一发生:每个网页的PR值前后误差dleta_pr小于自定义误差阈值或者迭代次数超过了自定义的迭代次数阈值

  三、PR值计算方法:

  1、几个基本公式

  2、幂迭代法

  先对P0赋随机初值然后通过上面公式进行迭代计算直到满足条件停止迭代计算:一直迭代计算停止直到下面2情况之一发生:每个网页的PR值前后误差dleta_pr小于自定义误差阈值或者迭代次数超过了自定义的迭代次数阈值

  3、特征值法

  Markov Chain收敛时存在:

  4、代数法

  Markov Chain收敛时存在:

展开全部内容