主页 > SEO技术 >

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

· 文章编辑:孔宇SEO · 所属栏目:SEO技术
    一、 PageRank算法概述:
    PageRank,即网页排名,又称网页级别、Google左側排名或佩奇排名。
    是Google创始人拉里·佩奇和谢尔盖·布林于1997年构建早期的搜索系统原型时提出的链接分析算法,自从Google在商业上获得空前的成功后,该算法也成为其他搜索引擎和学术界十分关注的计算模型。眼下许多重要的链接分析算法都是在PageRank算法基础上衍生出来的。PageRank是Google用于用来标识网页的等级/重要性的一种方法,是Google用来衡量一个站点的好坏的唯一标准。在揉合了诸如Title标识和Keywords标识等全部其他因素之后,Google通过PageRank来调整结果,使那些更具“等级/重要性”的网页在搜索结果中另站点排名获得提升,从而提高搜索结果的相关性和质量。其级别从0到10级,10级为满分。PR值越高说明该网页越受欢迎(越重要)。比如:一个PR值为1的站点表明这个站点不太具有流行度,而PR值为7到10则表明这个站点很受欢迎(或者说极其重要)。一般PR值达到4,就算是一个不错的站点了。Google把自己的站点的PR值定到10,这说明Google这个站点是很受欢迎的,也能够说这个站点很重要。
PageRank算法
    二、从入链数量到 PageRank:
    在PageRank提出之前,已经有研究者提出利用网页的入链数量来进行链接分析计算,这样的入链方法如果一个网页的入链越多,则该网页越重要。早期的非常多搜索引擎也採纳了入链数量作为链接分析方法,对于搜索引擎效果提升也有较明显的效果。 PageRank除了考虑到入链数量的影响,还參考了网页质量因素,两者相结合获得了更好的网页重要性评价标准。
    对于某个互联网网页A来说,该网页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:网页都有出入链
PageRank算法
    此种情况下的网页A的PR值计算公式为:
PageRank算法
    case2:存在没有出链的网页
PageRank算法
    网页C是没有出链。因为C没有出链,所以对A,B,D网页没有PR值的贡献。PageRank算法的策略:从数学上考虑,为了满足Markov链,设定C对A,B,C,D都有出链(也对他自己也出链~)。你也可以理解为:没有出链的网页,我们强制让他对所有的网页都有出链,即让他对所有网页都有PR值贡献。
   此种情况PR(A)的计算公式:
    case3:存在只对自己出链的网页
PageRank算法
    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)的计算公式为:
PageRank算法
    一般取值α=0.85
    Ⅵ、算法公式:
PageRank算法
    注:Mpi是有出链到pi的所有网页集合,L(pj)是有网页pj的出链总数,N是网页总数,α一般取值为0.85
    所有网页PR值同时计算需要迭代计算:一直迭代计算,停止直到下面2情况之一发生:每个网页的PR值前后误差dleta_pr小于自定义误差阈值,或者迭代次数超过了自定义的迭代次数阈值
    三、PR值计算方法:
    1、几个基本公式
PageRank算法
    2、幂迭代法
PageRank算法
    先对P0赋随机初值,然后通过上面公式进行迭代计算,直到满足条件停止迭代计算:一直迭代计算,停止直到下面2情况之一发生:每个网页的PR值前后误差dleta_pr小于自定义误差阈值,或者迭代次数超过了自定义的迭代次数阈值
    3、特征值法
    Markov Chain收敛时,存在:
PageRank算法
    4、代数法
    Markov Chain收敛时,存在:
PageRank算法
    可以通过上面公式计算出来PR值矩阵。

优化技巧
技能培训

更多阅读

[网站运营技巧]教站长如何利用百度知心算法获取流量

行业动态 2019-06-04
关于搜索引擎知心搜索其实谈不上算法,...查看全文

[站点排名]搜索引擎网页排序的每一个掉排名背后的逻辑观点

行业动态 2019-06-04
在黑帽SEO优化里面流行着这么一种思路,...查看全文

[提升网站排名]从四个象限全面提升你站点的权重和信任度

行业动态 2019-06-04
新浪之所以可以成为权威新闻,并不是天...查看全文
网站地图
扫描二维码分享到微信
确 认
友情链接: