32丨PageRank(上):搞懂Google的PageRank算法

互联网发展到现在,搜索引擎已经非常好用,基本上输入关键词,都能找到匹配的内容,质量还不错。但在 1998 年之前,搜索引擎的体验并不好。早期的搜索引擎,会遇到下面的两类问题:

  1. 返回结果质量不高:搜索结果不考虑网页的质量,而是通过时间顺序进行检索;

  2. 容易被人钻空子:搜索引擎是基于检索词进行检索的,页面中检索词出现的频次越高,匹配度越高,这样就会出现网页作弊的情况。有些网页为了增加搜索引擎的排名,故意增加某个检索词的频率。

基于这些缺陷,当时 Google 的创始人拉里·佩奇提出了 PageRank 算法,目的就是要找到优质的网页,这样 Google 的排序结果不仅能找到用户想要的内容,而且还会从众多网页中筛选出权重高的呈现给用户。

Google 的两位创始人都是斯坦福大学的博士生,他们提出的 PageRank 算法受到了论文影响力因子的评价启发。当一篇论文被引用的次数越多,证明这篇论文的影响力越大。正是这个想法解决了当时网页检索质量不高的问题。

PageRank 的简化模型

我们先来看下 PageRank 是如何计算的。

我假设一共有 4 个网页 A、B、C、D。它们之间的链接信息如图所示:


这里有两个概念你需要了解一下。

出链指的是链接出去的链接。入链指的是链接进来的链接。比如图中 A 有 2 个入链,3 个出链。

简单来说,一个网页的影响力 = 所有入链集合的页面的加权影响力之和,用公式表示为:


u 为待评估的页面,