AI学习吧
📍 源码七号站 建站优化 链接算法三部曲深度拆解:从 PageRank、HITS 到 Hilltop,把 Google 与 Bing 的排名底层逻辑讲透

链接算法三部曲深度拆解:从 PageRank、HITS 到 Hilltop,把 Google 与 Bing 的排名底层逻辑讲透

摘要:PageRank、HITS 与 Hilltop 三大经典链接算法仍是 Google 和 Bing 排名的底层骨架。PageRank 通过随机游走和阻尼系数计算全局重要性,并衍生出多个变体仍在线运行;HITS 以“枢纽-权威”双角色迭代,启示内链规划与支柱页面布局;Hilltop 聚焦专家文档投票,深刻影响 E-E-A-T 判定。Bing 更看重域名年龄、精准锚文本和社交信号。文章详析公式、迭代过程、实战应用,并指出在 AI 时代链接作为“群体共识表达”反而更稀缺,是难以伪造的可信源。
字号 100%
行距 2.05
当前可见 20% 的内容
本文由 莫潇羽@源码七号站(www.fuyuan7.com)撰写,转载请注明出处。

快速摘要

搜索引擎的链接评估从未跳出三大经典框架——PageRank 看链接图的全局重要性,HITS 看「枢纽—权威」的双向印证,Hilltop 看主题领域里的「专家投票」。这三套算法不是历史名词,而是 Google 和 Bing 当下排名体系的底层骨架。

2024 年 5 月那次震动整个 SEO 圈的 Google 内部文档外泄,清清楚楚地列出了 RawPageRank、PageRank2、PageRank_NS、FirstCoveragePageRank 等多个 PageRank 变体仍在线上运行;Google Director Elizabeth Tucker 在 2025 年也明确把 PageRank 称为「Google 经典排名信号之一,最贴近权威性」。HITS 的「枢纽—权威」思想活在内链规划与支柱页面里;Hilltop 的「专家文档」概念则演化为 E-E-A-T 中「专题权威」的判定逻辑。

Bing 那边的口味有点不一样:更看重域名年龄、.edu/.gov 后缀、精确锚文本、社交信号。同一个网站要在 Google 和 Bing 两边都吃到自然流量,就得明白这三套算法的精神在两个引擎里被翻译成了不同的偏好。

这篇长文会把原理、公式、随机游走、阻尼系数、专家集合、双分数迭代,以及对应到内链规划、外链获取、内容建设、网站架构的实操办法,挨个讲清楚。想看完整拆解,往下翻。


一、链接为什么是搜索引擎的命门

要把这三个算法看明白,得先回到一个最朴素的问题:搜索引擎到底在为什么排序而焦虑?

互联网的本质是一张超文本网络。早期搜索引擎的做法很笨,把网页内容抓回来,做个倒排索引,谁的关键词密度高、谁的标题里包含查询词,就把谁排在前面。这种纯文本匹配的玩法,在网页数量没几万的时候还能凑合,但很快就崩了。因为只要懂一点 HTML 的人都能往页面里堆砌关键词,把无关页面伪装成相关页面——这就是搜索引擎史上最早的「关键词作弊时代」。

我自己刚开始研究搜索原理的时候,最大的困惑就是:既然内容可以被作者任意控制,那搜索引擎凭什么相信任何一段文字是真实有价值的?答案后来想通了:不能只听一个人说什么,要看其他人怎么评价他。

这就是「链接」被发现的意义。一个网页指向另一个网页的超链接,本质上是一次「公开背书」。如果 A 站愿意把自己的访客往 B 站引导,意味着 A 站站长在某种程度上认可 B 站这一页的价值。这种「外部背书」是难以伪造的——你可以在自己的页面里写一万次「我是世界第一」,但你没法逼别人在他们的页面里也这样推荐你。

斯坦福那两个研究生,Larry Page 和 Sergey Brin,在 1996 年前后正是因为看穿了这层关系,才有了 PageRank 的思想原型。差不多同一时间,康奈尔大学的 Jon Kleinberg 在 IBM Almaden 研究所做访问学者的时候,提出了 HITS 算法。再加上 1999 到 2000 年期间在加州的 Krishna Bharat 提出了 Hilltop。这三个算法是搜索引擎链接分析时代的三大支柱,它们的提出时间几乎踩在同一个三年窗口里,这不是巧合,而是当时整个学术圈对「如何用图结构给海量文档排序」这个问题集中爆发的回应。

1.1 链接的三种属性

在往下走之前,把「链接」这个东西的属性摆清楚,后面看算法才不会绕。任何一条超链接至少携带了三种信息:

  • 结构信息:谁指向谁,形成有向图。
  • 文本信息:锚文本本身就是源页面对目标页面的「标签描述」。
  • 上下文信息:链接所处段落、所在主题、所在站点的整体调性。

PageRank 主要吃的是结构信息,几乎不看主题。HITS 在结构信息基础上引入了角色区分(枢纽 vs 权威)。Hilltop 则把主题与锚文本的相关性直接嵌进了筛选机制。三种算法本质上是从三个不同维度去解读同一张链接图——这是后面所有比较的起点。

1.2 为什么链接信号在 AI 时代仍然没死

很多人以为大模型时代了,谁还看链接。这是天大的误解。Google 2024 年那批被外泄的内部文档里,关于链接的字段密密麻麻:siteAuthority、anchorMismatchDemotion、linkScore、homePageInfo,各种维度都在用。Bing 那边更直白,微软在公开的 Webmaster Guidelines 里就明说:「the number, quality, and relevance of links pointing to your pages will continue to be a strong signal」。

为什么?因为大模型本身也需要一个「可信源排序」机制,才能决定引用谁。而当下最成熟、最难作弊的可信源排序逻辑,恰恰还是基于链接图的那一套。链接不再是唯一信号,但它依然是「最难伪造的群体共识表达」。这个底层属性,在 AI 时代反而更稀缺。

我做站这么些年的体会是:文本可以被 AI 批量生成,流量数据可以被刷,但要让一堆真实存在的、互不相干的高质量站点同时主动指向你,这个事 AI 没法替你完成。链接的稀缺性反而被强化了。


二、PageRank:链接图的奠基性算法

PageRank 是这三个算法里名气最大的,也是被误解最深的。市面上大量博客把它描述成「数链接数量」,这是非常表层的理解。真正想用好 PageRank 的思想,得搞懂它的三个核心要素:随机游走模型、迭代收敛、阻尼系数

2.1 PageRank 的核心思想:随机游走

设想这样一个场景:互联网上有个虚拟的「随机冲浪者」,他打开一个页面,然后在这个页面上的链接里随便点一个跳走,到了新页面再随便点一个,如此往复。经过足够长的时间之后,这个冲浪者出现在某个页面上的概率,就是这个页面的 PageRank 值

这个模型的精妙之处在于:它把「网页的重要性」直接定义成了一个概率分布。概率高的页面,意味着无论你从哪里开始游走,最终都更容易落到它上面——这恰恰对应了我们直觉上的「重要」二字。

但这里有两个工程上的坑必须填:

  • 死胡同:有些页面没有任何出链,冲浪者走到这里就卡死了。
  • 小圈子:有几个页面互相链接,但不指向外面,冲浪者一旦进入就出不来,整个游走概率会被这个小圈子吸干。

为了解决这两个问题,Page 和 Brin 引入了一个工程化的修正:阻尼系数(damping factor)

2.2 阻尼系数与 PageRank 的标准公式

阻尼系数通常记作 d,经典取值是 0.85。它的意义是:冲浪者在每一步,有 85% 的概率沿着当前页面的链接跳走,有 15% 的概率「腻了」,直接跳到全网随机一个页面重新开始。这个「腻了就随机跳」的机制叫 teleportation,它保证了整张图永远是连通的,游走永远不会卡死。

加入阻尼系数后,PageRank 的递推公式长这样:

PR(p) = (1 - d) / N  +  d * Σ [ PR(i) / OutLinks(i) ]

参数解释:

  • PR(p):页面 p 的 PageRank 值。
  • d:阻尼系数,经典取 0.85。
  • N:全网页面总数。
  • i:所有指向页面 p 的源页面。
  • OutLinks(i):源页面 i 的总出链数量。
  • Σ:对所有指向 p 的源页面求和。

这个公式的核心要义可以翻译成大白话:一个页面的重要性,等于所有指向它的页面的重要性,按这些源页面的出链数量平均分配后,再加上一个固定的"基础保底分"。出链多的源页面,每条链分到的权重就小;出链少的源页面,每条链都金贵。

2.3 迭代计算:为什么它能收敛

PageRank 是一个递归定义——要算 A 的分数得知道 B 的分数,而 B 的分数又依赖于 C、D、E……怎么解?

答案是迭代。给每个页面赋一个初始值(通常是 1/N),然后用上面的公式算一轮新值,再用新值算下一轮,反复迭代。数学上可以证明,只要图是强连通的(阻尼系数刚好保证了这一点),这个迭代过程一定会收敛到一个唯一的稳定分布。这个稳定分布就是最终的 PageRank。

实际工程中,Google 早期的实现差不多迭代 50 到 100 轮就能拿到一个足够稳定的解。换算到现在的全网规模,这个计算量大得吓人——这也是为什么 Google 早期投入了那么多基础设施去做分布式图计算。

下面这段伪代码可以更直观地表达迭代过程,新手对照着看就懂了:

def pagerank(graph, d=0.85, max_iter=100, tol=1e-6):
    N = len(graph.nodes)
    PR = {node: 1.0 / N for node in graph.nodes}  # 初始化

    for iteration in range(max_iter):
        new_PR = {}
        for node in graph.nodes:
            # 基础保底分
            rank_sum = (1 - d) / N
            # 来自所有入链的贡献
            for source in graph.in_neighbors(node):
                out_count = len(graph.out_neighbors(source))
                if out_count > 0:
                    rank_sum += d * PR[source] / out_count
            new_PR[node] = rank_sum

        # 判断是否收敛
        delta = sum(abs(new_PR[n] - PR[n]) for n in graph.nodes)
        PR = new_PR
        if delta < tol:
            break

    return PR

这段代码不是给你拷贝去跑生产环境的,但它把 PageRank 的本质骨架交代得很清楚——一个不停传递权重的迭代过程,直到全网每个页面的得分稳定下来

2.4 阻尼系数为什么是 0.85

很多人对 0.85 这个数字有种神秘崇拜,觉得是天书。其实它就是 Page 和 Brin 在原始论文里做实验定的一个经验值。后来有不少学术研究讨论过这个值的合理性——有人提出 0.7 在某些场景下更合理,因为当下用户更容易「跳出」一条阅读路径;有人觉得 0.9 更适合学术引用网络。但对于通用网页排序,0.85 至今仍然是工业界的事实标准。

阻尼系数小,意味着 teleportation 的成分大,结果会更倾向于把权重均匀地分给所有结点,链接图结构的影响被稀释。阻尼系数大,意味着冲浪者更愿意一路顺着链接走,结果会更突出那些处于链接图核心位置的「权威结点」。0.85 是这两种倾向的折中。

记住这层物理意义,后面你看待自己网站的内链结构就会多一个视角:你站内每个页面的「冲浪者跳出概率」越低(也就是出链质量越高、相关性越强),网站的 PageRank 越容易在内部高效流动。

2.5 PageRank 在 Google 内部的多个变体

很多人以为 Google 早就把 PageRank 扔了。这是被「绿条消失」误导得最深的一群人。2016 年 Google 公开关掉了工具条上显示的 PageRank 数字,大量 SEO 从业者就此宣布「PageRank 已死」。

事实根本不是这样。

2024 年 5 月,Google 内部一份本来应该保密的 Content API Warehouse 文档意外公开,SEO 圈炸了锅——里面赫然列着多个 PageRank 的变体字段:

字段名

解释

RawPageRank

原始 PageRank 计算结果

PageRank2

PageRank 的第二代变体

PageRank_NS

Nearest Seed PageRank,基于种子结点的变体

FirstCoveragePageRank

首次发现页面时的 PageRank 快照

PageRank0

基础版本

ToolbarPageRank

那个被「废弃」的工具条 PageRank 居然还活着

这意味着 Google 内部至少同时跑着 5 到 6 个不同口径的 PageRank,分别服务于不同子任务:有的用于初步抓取调度,有的用于规范化(canonical)选择,有的用于种子信任评估。所谓「PageRank 已死」就是个误读——它只是不向公众显示了,但底层还在不停转。

更有意思的是,2025 年 Google 产品管理总监 Elizabeth Tucker 在公开场合点名说:「PageRank 是 Google 的经典排名信号之一,最贴近权威性这个维度」。能把这种话从内部讲出来,说明它在排名体系里的份量从未真正下降过。

2.6 reasonable surfer:PageRank 的进化版

原始 PageRank 有一个被诟病已久的缺陷:它假设冲浪者在当前页面上的所有链接里等概率随机点一个。但真实世界根本不是这样——人会更倾向点正文里的链接,而不是页脚的版权链接;会更愿意点醒目的导航,而不是被隐藏在角落里的次级链接。

为了修正这一点,Google 在 2004 年申请了一项专利,把它叫做 Reasonable Surfer Model(合理冲浪者模型)。这个模型在原始 PageRank 的基础上,给不同位置、不同形式、不同语境下的链接赋予了不同的「被点击概率」

下面这张表是我自己整理的一些经验性的概率倾向,不是 Google 官方给出的数值,但能帮你理解模型的精神:

链接位置

相对点击概率

传递的 PageRank 权重

正文首段内的上下文链接

正文中后段嵌入的链接

中等偏高

中等偏高

侧边栏推荐链接

中等

中等

文末「相关阅读」列表

中等偏低

中等偏低

页脚的网站地图、版权链接

被 nofollow 标记的链接

仅作弱提示

几乎为零

这就是为什么同样是 DA 80 的网站给你一条链接,放在正文段落里和放在页脚版权链接里,价值能差出几十倍。你做外链建设的时候,如果不看链接出现的具体位置就只看「链接数量」或「域名权重」,等于把 reasonable surfer 这个进化层完全无视了。

莫潇羽@源码七号站 自己操作过的多个站点都验证过这一点:从同一个高权重站点拿到两条链接,一条嵌在正文长段落里,一条挂在页脚资源列表里,几个月后通过实验工具回测,前者对目标页排名的拉动效果至少是后者的 5 倍以上。这就是 reasonable surfer 在背后干活的结果

2.7 站内 PageRank 流动:被严重低估的内部资产

P

🔒
该内容仅对更高等级社区用户开放
请谨慎解锁时效性强且发布日期较早的文章
单篇解锁后若未显示全文请刷新页面
您当前:游客 · 可见 20% 内容 · 升级至 注册用户 可见 30%
👀
游客
可见 20%
✓ 当前
注册用户
注册用户
可见 30%
社区精英
社区精英
可见 100%
社区守护
社区守护
可见 100%
仅解锁本文,永久有效。如需PDF珍藏版,请联系站长获取。 当前单篇价格 ¥9.9
✏️ 发表评论

请先登录后发表评论

前往登录
📊 站点统计
今日发布0 篇
文章总数1316 篇
昨日发布2 篇
本月发布27 篇
建站时间420 天
🔍 搜索
📅 日历
« 2026 » « 09 »
 123456
78910111213
14151617181920
21222324252627
282930    
站长微语

联系站长

QQ:2805463528
AIGC 技术社区
致力于解码 AI前沿技术 与经验分享
纯粹的技术交流社区

💡 欢迎您的建议与反馈,让社区变得更好

快速通道
联系站长
站长QQ二维码
AI交流群
AI交流群
仍在路上

那些寒夜里追赶过的方向

那些冷眼下没放弃的理想

一篇一篇写到现在

仍在路上

"不羁放纵爱自由"

—— 致敬 Beyond
持续创作中 莫潇羽 · 源码七号站