外链是搜索引擎算法中判断网站权重的重要指标。当用户在搜索框中输入关键字时,搜索引擎会面对大量内容相同的网页。首先需要解决的是用什么参数来确定网页的排名。今天,作者简要介绍了众所周知的核心算法:PageRank算法、山顶算法、直接命中算法。
第一种算法、PageRank算法
1998年,谢尔盖布林和劳伦斯佩奇提出了PageRank算法。该算法是基于“由多个高质量网页链接的网页一定还是高质量网页”的回归关系来判断网页的重要性。该算法认为,从网页A到网页B的链接可以看作是网页A对网页B的支持投票,可以根据投票数来判断网页的重要性。当然,不能只看票数,还要分析投票页面的重要性。页面越重要,投票评价越高。根据这个分析,评价高的重要页面会被赋予更高的PageRank值,在搜索结果中的排名也会有所提高。PageRank是基于对“使用复杂算法得到的链接结构”的分析,从而得到每个网页本身的特征。
分析:PageRank算法的优点是给出了网页在互联网上的重要性的全局排名,算法的计算过程可以离线完成,有利于快速响应用户的请求。但其缺点在于主题独立,没有区分页面中的导航链接、广告链接和功能链接,容易对广告页面产生过度评价;此外,PageRank算法的另一个缺点是,旧页面的排名会比新页面高,因为新页面,即使是非常好的页面,除非是一个站点的子站点,否则不会有很多链接。这也是PageRank需要多种算法结合的原因。
第二种算法、Hilltop算法
2001年,谷歌工程师巴拉特(Bharat)获得了搜索引擎结果排名专利“山顶”(HillTop)。山顶算法的指导思想与PageRank是一致的,即搜索结果的排名权重由反向链接的数量和质量决定。但HillTop认为,对于搜索者来说,只计算来自相同主题的相关文档的链接更有价值,即主题相关网页之间的链接比主题无关的链接对权重计算的贡献更大。在1999-2000年,当这个算法被Bharat等Google开发者开发出来的时候,他们把对题目有影响的文档称为“专家”文档,只有这些专家文档页面到目标文档的链接,才决定了链接页面的“权重分值”的主要部分。
山顶算法的过程:首先计算查询主题最相关的“专家”资源列表;其次,在选定的“专家”集合中识别相关链接,并跟踪它们以识别相关网页目标;然后,根据指向目标的不相关“专家”的数量及其相关性对目标进行排序。因此,目标网页的评分反映了最中立的专家对查询主题的集体看法。如果不存在这样的专家库,山顶不会给出结果。
从山顶算法流程可以看出,算法主要包括两个方面:找专家;目标的顺序。通过对搜索引擎抓取的网页进行预处理,找出专家页面。对于关键词查询,首先在专家中查找,并将结果排序。