找回密码
 加入怎通
查看: 511|回复: 1

[站长八卦] 搜索引擎对重复页面算法分析

[复制链接]
朱岩 发表于 2013-02-07 15:16:30 | 显示全部楼层 |阅读模式
搜索引擎判定复制网页一般都基于这么一个思想:为每个网页计算出一组信息指纹(Fingerprint),若两个网页有一定数目相同的信息指纹,则以为这两个网页的内容重叠性很高,也就是说两个网页是内容复制的。
6 I/ ^/ {1 v) d; w很多搜索引擎判定内容复制的方法都不太一样,主要是以下两点的不同:
7 H' i1 Y7 T3 q1 ^* e8 X" V1、计算信息指纹(Fingerprint)的算法; ; p: r) |* q* ]* H
2、判定信息指纹的相似程度的参数。+ q! |# @* g' Z
在描述具体的算法前,先说清楚两点: / s3 L( O& }  E; [9 u+ G
1、什么是信息指纹?信息指纹就是把网页里面正文信息,提取一定的信息,可以是关键字、词、句子或者段落及其在网页里面的权重等,对它进行加密,如MD5加密,从而形成的一个字符串。信息指纹如同人的指纹,只要内容不相同,信息指纹就不一样。, _/ x- q3 f' Y% B
2、算法提取的信息不是针对整张网页,而是把网站里面共同的部分如导航条、logo、版权等信息(这些称之为网页的噪音)过滤掉后剩下的文本。9 U1 j3 ]" @9 y$ w
分段签名算法+ R, s+ O) Y" ]  K
这种算法是按照一定的规则把网页切成N段,对每一段进行签名,形成每一段的信息指纹。假如这N个信息指纹里面有M个相同时(m是系统定义的阙值),则以为两者是复制网页。8 w  c  R8 o0 ?* s! F* j4 f
这种算法对于小规模的判定复制网页是很好的一种算法,但是对于像google这样海量的搜索引擎来说,算法的复杂度相当高。
# q% r7 E2 ^; B" v8 i! r基于关键词的复制网页算法- k5 I+ e" M5 k0 E% ^
像google这类搜索引擎,他在抓取网页的时候都会记下以下网页信息:
: J; J2 P& z$ i0 D; ^/ g3 e, f1、网页中出现的关键词(中文分词技术)以及每个关键词的权重(关键词密度); 9 V# |  d6 e: b' A% e
2、提取meta descrīption或者每个网页的512个字节的有效文字。
1 c$ I. {( u/ o  g3 D关于第2点,baidu和google有所不同,google是提取你的meta descrīption,假如没有查询关键字相关的512个字节,而百度是直接提取后者。这一点大家使用过的都有所体会。: M' m# C# B; \- K2 k% H
在以下算法描述中,我们约定几个信息指纹变量:9 u: W, \, ^/ i5 K: i
Pi表示第i个网页;
! ^' L! A- c5 n. t该网页权重最高的N个关键词构成集合Ti={t1,t2,...tn},其对应的权重为Wi={w1,w2,...wi} & v* {9 \, ?' T% f. m) r
摘要信息用Des(Pi)表示,前n个关键词拼成的字符串用Con(Ti)表示,对这n个关键词排序后形成的字符串用Sort(Ti)表示。
$ W. |- M( ^, m  C以上信息指纹都用MD5函数进行加密。' \' _4 T9 Q, W* [+ l3 [
基于关键词的复制网页算法有以下5种: 3 s9 x+ O0 q3 `* m, J
1、MD5(Des(Pi))=MD5(Des(Pj)),就是说摘要信息完全一样,i和j两个网页就以为是复制网页;
9 }: Y2 e5 F; d6 `' _2、MD5(Con(Ti))=MD5(Con(Tj)),两个网页前n个关键词及其权重的排序一样,就以为是复制网页; " a; R8 g" ?; x) z
3、MD5(Sort(Ti))=MD5(Sort(Tj)),两个网页前n个关键词一样,权重可以不一样,也以为是复制网页。 & m% o! _; h2 v; O5 W
4、MD5(Con(Ti))=MD5(Con(Tj))并且Wi-Wj的平方除以Wi和Wj的平方之和小于某个阙值a,则以为两者是复制网页。 6 R- c7 k3 v. [# i1 ~
5、MD5(Sort(Ti))=MD5(Sort(Tj))并且Wi-Wj的平方除以Wi和Wj的平方之和小于某个阙值a,则以为两者是复制网页。$ B# w. o/ `2 q  _
关于第4和第5的那个阙值a,主要是由于前一个判定条件下,还是会有很多网页被误伤,搜索引擎开发根据权重的分布比例进行调节,防止误伤。这个是北大天网搜索引擎的往重算法(可以参考:《搜索引擎--原理、技术与系统》一书),以上5种算法运行的时候,算法的效果取决于N,就是关键词数目的选取。当然啦,选的数目越多,判定就会越精确,但是谁知而来的计算速度也会减慢下来。所以必须考虑一个计算速度和往重正确率的平衡。据天网试验结果,10个左右关键词最恰当。后记 ; \1 v, z7 @0 ~7 U6 N
以上肯定无法覆盖一个大型搜索引擎复制网页的所有方面,他们必定还有一些辅助的信息指纹判定,本文作为一个思路,给做搜索引擎优化的一个思路。
/ m: K% Q8 _" Z2 L/ u5 c淮安无痛人流:www.0517hym.com
# a9 h) |2 `; @! [( T8 w
9 f1 H4 ~  E, r' C  s+ p1 S1 W# I8 F* H! X
回复

使用道具 举报

我是海军 发表于 2026-01-22 11:17:06 | 显示全部楼层
这个思路很新颖,打开了新世界的大门,谢谢分享
回复 支持 反对

使用道具 举报

    您需要登录后才可以回帖 登录 | 加入怎通

    本版积分规则

    QQ|手机版|小黑屋|网站地图|真牛社区 ( 苏ICP备2023040716号-2 )

    GMT+8, 2026-4-4 00:11 , Processed in 0.408189 second(s), 23 queries , Gzip On.

    免责声明:本站信息来自互联网,本站不对其内容真实性负责,如有侵权等情况请联系420897364#qq.com(把#换成@)删除。

    Powered by Discuz! X3.5

    快速回复 返回顶部 返回列表