一个基于特征向量的近似网页去重算法
曹玉娟1,2 牛振东1 彭学平1 江 鹏1
(1北京理工大学计算机科学技术学院 100081)
(2北京航天飞行控制中心 100094)
摘 要 在搜索引擎的检索结果页面中,用户经常会得到内容相似的重复页面,它们中大多是由于网站之间转载造成的。为提高检索效率和用户满意度,提出一种基于特征向量的大规模中文近似网页检测算法DDW(Detectnear-Duplicate WebPages )。试验证明,比起其他网页去重算法(I-Match),DDW具有很好的抵抗噪声的能力及近似线性的时间和空间复杂度,在大规模实验中获得良好测试结果。
关键词 网页去重算法 特征向量 近似网页 支持向量机
随着近年来互联网技术和规模的空前发展,Internet已经成为获取信息的主要渠道之一。截至2007年7月的调查中,共统计约1亿2千5百多万个网站[1]。搜索引擎因其方便快捷的检索功能,成为当今网络用户进行信息检索的主要工具,而其中信息检索的质量及其工作效率将直接影响到搜索引擎的整体性能。根据中国互联网络信息中心2005年7月发布的统计报告显示,用户在回答“检索信息时遇到的最大问题”这一提问时,选择“重复信息太多”选项的占44.6%,排名第1位[2]。面对海量的数据,用户不愿意看到一堆内容相同或近似的数据,如何更为快速、准确地帮助用户获取所需要的信息,是网络信息服务面临的新课题。
我们常把句法、结构完全相同的文档视为重复文档。但本文所指的近似网页是指正文内容基本相同的网页,而不论其句法、结构是否完全一致。
重复文档的去除采用传统的剽窃检测技术很容易完成,但对于内容近似的文档检测就不那么容易了。本文提出的近似网页去重算法DDW(Detectingnear-Duplicate WebPages),兼顾考虑网页的语法和语义信息,提取特征向量进行文档的表示;并充分利用检索系统和分类信息进行近似网页检测和排查。
本文余下的内容组织如下:第一部分介绍现有去重算法;第二部分论述DDW算法设计;第三部分介绍我们的试验结果和对结果的分析;第四部分是结论。
1 现有近似网页检测算法介绍
近年来针对近似网页的检测展开了许多研究,例如网页结构近似性检测[3],超级链接近似性检测[4]等。但本文关注的是网页内容近似检测。
我们大致可以把文本复制检测算法分为两类:基于语法的方法(基于Shingle的方法)和基于语义的方法(基于Term的方法)。
1.1 基于Shingle的方法
Shingle是指文档中一组临近的有序词。基于shingle的算法要求从文档中选取一系列shingle,然后把shingle映射到Hash表中,一个shingle对应一个Hash值,最后统计Hash表中相同的shingle数目或者比率,作为判断文本相似度依据。参考文献[5-10]都是常用的基于single的算法。为实现大规模文档的检测,各研究者采用了不同的采样策略,用于减少参加比较的shingle的数量。
Heintze[8]选取Hash值最小的N个shingle, 并去除频繁出现的shingles。Bharat[6]选取Hash值为25倍数的shingle,每篇文档最多选取400个shingle。Broder[7]将多个single联合起来组成一个supershingle并通过比较supershingle的Hash值计算文档的相似度。尽管supershingle 算法计算量更小,但Broder发现它不适用于短小文档的检测。Fetterly[13]把连续出现的5个词视为一个shingle,每篇文档采样 84个shingle,然后将这些shingle组合为6个supershingle;具有2个相同supershingles的文档被视为内容相似的文档。吴平博等[9]利用标点符号多数出现在网页文本中的特点,以句号两边各五个汉字作为single来唯一地标识网页。
对于各种基于shingle的算法,Ye[10]就其参数选择进行了系统研究。
1.2 基于Term的方法
基于Term的方法[11-14]采用单个词条作为计算的基本单元。通过计算文档特征向量的余弦值来获得文档的相似度,而不考虑词条出现的位置和顺序。由于采用了许多特征提取(尤其是特征向量的选择)技术,使得基于Term的方法比基于Shingle的算法更为复杂。
Chowdhury 的I-Match[11]算法通过计算逆文本频率指数(IDF :inversedocument frequency)来确定选择哪些词作为特征向量。IDF = log (N/n),其中N 为文档集中文档的数目,n 为包含该关键词的文档的数目。I-Match算法正是基于“在文档集中频繁出现的词并不会增加文档的语义信息”[13]的推断,去掉IDF值较小的词,从而获得了更好的文档表示。经过过滤的关键词按降序排列构成文档的“指纹”(fingerprint),指纹相同的文档被视为近似文档。最坏情况下(所有文档都是近似文档),I-Match算法的时间复杂度为O(nlogn)。
2 基于特征向量的去重算法设计
本文提出的基于特征向量的大规模中文网页去重算法,采用类似I-Match的关键词向量提取方法,但同时采用关键词的位置和权重信息构建特征向量来进行文档表示。不计算特征向量的hash值而是利用分类信息和检索系统来进行文档相似度计算和排重。具体设计方案如下:
2.1 网页的文本提取
网页中包含的广告信息、链接到其他网页的导航信息等,都会对该网页内容检索产生干扰。因此,在对网页的内容建立索引之前,我们需要对其中的有效正文信息进行了提取。采用的是我们另一项课题的研究成果[15]:
1)根据网页的视觉信息将文章分块,并人工标注各个内容块是否为有效信息块。
2)提取内容块的空间位置、视觉特征、语言信息及结构特征。
3)提取文章标题,使用潜语义分析方法计算内容块与文章标题的潜在语义相关度。
4)将以上信息构成内容块的特征向量。
5)使用人工标注的内容块做六折交叉法,训练SVM(SupportVector Machine)分类器。
6)使用训练好的SVM分类器判断新的内容块是否为有效信息块;提取有效信息块中的文本作为有效的正文信息。
2.2 文本的表示
迄今为止,文本的表示主要还是采用向量空间模型(VSM)。在该模型中,文档空间被看作是由一组正交向量张成的向量空间。若该空间的维数为n,则每个文档d可被表示为一个特征向量Vd=(ω1,ω2,…,ω1,…,ωn),其中ωi表示特征向量中第i个特征项的权重。
特征项的选取即文本特征的提取过程。目前常用的特征选择策略有:文档频数(DocumentFrequency)、信息增益(InformationGain)和互信息(Mutual Information)等特征选择方法。
从中文信息处理角度来看,比较好的方式是利用意义较大的多字词来表示文档的内容,将文本分词后,将这些词的权重作为向量的分量来表示文本。但由于中文分词的词典规模一般在5万到25万词条之间[16]。也就是说中文的特征空间维数比英文高很多。在相同规模训练语料条件下,更高的维数必然导致更多的低频词出现。在这样的情况下使用IG和MI进行特征抽取,由于它们对低频词的倚重,必定将会有更多的低频词作为特征使用。从而导致了特征向量抽取的不准确。文献[17]的试验结果表明在中文特征向量问题上它们的表现远远不及TFIDF。
因此,我们在系统中采用了一种使用比较普遍的TF-IDF公式来计算各个分量的权重:
词条t在文档d中的TFIDF值由式(1)定义
其中,TF(t,d)表示词条t在文档d中出现的次数,M为文本的总数,m为所有文本中含有t的文本的个数。为降低高频特征对低频特征的过分抑制,在实验中计算权值时还对TFIDF值进行如(2)所示的规范化处理:
2.3 索引构建
为了对特征向量进行快速访问,必须对特征项建立索引机制。倒排索引具有实现相对简单、查询速度快、容易支持同义词查询等优点。本文对特征项建立倒排索引文件。在我们的系统中有文章类别信息的支持,可以针对不同类别建立特征项索引,以提高检索效率。
2.4 特征向量检索
由于网页噪声的影响,重复网页的文本特征向量有时不完全相同,精确匹配会导致匹配失败。但由于特征向量是最能代表一篇文章的一组词,因此只用检索排在前边的n维特征向量并计算其相似度,即可基本确定两篇文章是否是近似文档。在得出匹配检索后,采用余弦公式(3)进行相似度计算。
若sim(d1,d2)>阈值可以推断d1,d2是近似网页。
3 实验结果及对比分析
为了评价本算法的正确性和效率,本文设计了一系列试验。
正确性是算法的生命;这里给出两个评价标准:重复网页召回率(Recall) 和去重准确率(Precision),定义如下:
为了检测DDW的性能,我们在军事、医学和计算机三个领域选择了24个查询,用Google检索关键词,在每组检索结果中选取内容相同或相似的网页共计1711篇,并将这些近似网页插入已存在的文档集(包含1028,568个网页)中。并同时运行I-Match (同样选取20个特征词) 和 DDW 算法进行近似网页检测。试验结果如图1所示:
图1 DDW 与 I-Match算法准确率与召回率比较
4 结论
影响网页去重准确性的主要因素是网页噪声。本文提一种基于特征向量的近似网页去重算法。有效减少噪声信息对算法准确性的不良影响;获得了去重准确率>90%,召回率>80%的良好效果。由于本算法具有近似线性的时间和空间效率,试验证明其适用于大规模中文网页去重,本文的研究成果已成功应用实际的工程项目。
本课题的研究受到教育部新世纪优秀人才项目计划、霍英东青年教师奖励资助基金国防科研基础研究基金等支持。
参考文献
1 http://news.netcraft.com/archives/web_server_survey.html
2 中国互联网络信息中心.第十六次中国互联网络发展状况统计报告(2005-07-01).http://www.cnnic.net.cn/index/0E/00/11/index.htm
3 Li Z., Ng W. K., Sun A.. Web dataextraction based on structural similarity. Knowledge and InformationSystems,2005(12):438-461
4 Dean J., HenzingerM. R.. Finding related pages in the World Wide Web.in Proceeding of the eighth InternationalWorld Wide Web Conference (WWW),1999:1467-1479
5 Gurmeet Singh Manku: Detecting Near Duplicates for Web Crawling.International World Wide Web Conference Committee(IW3C2), 2007:141-149
6 Bharat K., BroderA. Z., Dean J. et al. A comparison of techniques to find mirrored hosts on theWWW. Journal of the American Society for Information Science (JASIS),2000:1114-1122
7 Broder A.,Glassman S., Manasse S. Syntactic clustering of the web. InProceedings of the Sixth International World Wide Web Conference(WWW),1997:391-404
8 HEINTZE, N.. Scalable documentfingerprinting. In Proceedings of the Second USENIX Electronic CommerceWorkshop (Oakland),1996:191-200
9 吴平博,陈群秀. 基于特征串的大规模中文网页快速去重算法研究. 中文信息学报, 2003,17(2):28-35
10 Ye Shaozhi, Wen Ji-Rong. A systematic study on parameter correlations inlarge scale duplicate document detection. in Proceedings of the 10thPacific-Asia Conference on Knowledge Discovery and DataMining,2006:275-284
11 Chowdhury A., Frieder O., Grossman D. et al. Collection statistics forfast duplicate document detection. ACM Transactions on InformationSystem,2002:171-191
12 Cooper J. W., CodenA.,Brown E. W.. Detecting similar documents usingsalient terms. in Proceedings of the 11th ACM International Conference onInformation and Knowledge Management (CIKM),2002: 245-251
13 Conrad J. G., GuoX. S., Schriber C. P. Online duplicate documentdetection: signature reliability in a dynamic retrieval environment. inProceedings of the 12th International Conference on Information and knowledgemanagement (CIKM),2003:443-452
14 Kolcz A., Chowdhury A., Alspector J..Improved Robustness of Signature-Based Near-Replicate Detection via Lexicon Randomization.in Proceedings of the tenth ACM SIGKDDinternational conference on Knowledge discovery and data mining(SIGKDD),2004:605-610
15 Cao Yujuan, Niu ZhenDong. ExtractingInformative Blocks from Web Pages. Proceedings of the Seventh InternationalConference on Advanced Language Processing and Web Information Technology(ALPIT),2008: 544-550
16 黄昌宁.对自动分词的反思//语言计算与基于内容的文本处理.北京:清华大学出版社,2003:26-38
17 代六玲,黄河燕,陈肇雄.中文文本分类中特征抽取方法的比较研究.中文信息学报,2004,18(1)
曹玉娟 北京航天指挥控制中心高级工程师。
牛振东 北京理工大学计算机科学技术学院副院长、教授,中国索引学会副理事长。