网络搜索中的基于链接层次分类的主题爬取方法

文档序号:7655273阅读:191来源:国知局

专利名称::网络搜索中的基于链接层次分类的主题爬取方法
技术领域
:本发明属于网络搜索
技术领域
,尤其涉及在互联网页上进行主题搜索的方法。
背景技术
:Web信息分布的局部专题化是互联网信息所呈现的特征之一。但主题信息所占比例小、分散度高,传统的搜索策略由于缺乏有效的内容预分析和过滤,爬取的无关主题网页过多,成为限制爬虫效率的瓶颈。因此如何利用有限的带宽及存储容量,迅速而准确地爬取主题网页就成了近年来搜索引擎网页爬取所关心的问题。目前,国内外在主题搜索领域展开了大量而深入的研究工作,基本思想和方法主要来源于SoumenChakrabarti等于1999年构建的FocusedCrawling系统SoumenChakrabarti,MartinvandenBerg,ByronDom.FocusedCrawling:anewapproachtotopic-specificWebresourcediscovery.In:Proceedingsofthe8thWorldWideWebConference.NewYork,NY,USA:ElsevierNorth-Holland,Inc.,1999.1623-1640,该系统主要由三部分构成①分类器,用于判定所爬取网页的相关性,以确定是否以此进行扩展;②提取器,在已爬取网页集中选取作为根结点的集成器网页(HubPages);③网络爬虫,在分类器和提取器的指导下按照优先级队列进行网页爬取。相关的主题搜索的研究工作主要提供了一些具体的实现方法,能够支持滤取无关网页和爬取尽可能多相关主题网页的要求。2000年,MichelangeloDiligenti等人提出的基于上下文图的主题爬取器[MichelangeloDiligenti,FransCoetzee,SteveLawrence,ClydeLeeGilesandMarcoGori.FocusedCrawlingUsingContextGraphs.Proceedingsofthe26thInternationalConferenceonVeryLargeDataBases.Cairo,Egypt,2000.。该爬取器的思想是依据整个网页内容,将网页按照到主题网页距离划分成不同类别,对候选网页采用基于全部网页内容的朴素贝叶斯分类算法分到不同类别,优先爬取下预测离主题网页距离最近的网页中的所有链出URL。它的缺点如下l.由于对整个网页内容进行分类,计算代价很大,而且由于互联网网页的不规范性,网页中存在大量噪音会干扰分类的准确性;2.它给予同一个网页中所有链出URL以相同的优先级,这是不合理的,客观上也导致实际爬取效果不佳。这些方法大都采用文本分类方法(如KNN,朴素贝叶斯,SVM等方法),依赖整个网页内容进行判断,计算代价昂贵。另外这些方法都给予同一个网页中不同链接以相同的优先级,忽略了不同链接重要性差异,显然会影响爬取效果。之后也有研究更关注于锚文字(描述链出网页的一段文字)和URL进行主题爬取器设计,如DouShen等分别基于锚文字和网页内容采用SVM和朴素贝叶斯方法进行分类DouShen,Jian-TaoSun,QiangYang,ZhengChen.AComparisonofImplicitandExplicitLinksforWebPageClassification.Proceedingsofthe15thinternationalconferenceonWorldWideWeb.Banff,Canada,2006.,实验结果表明单纯对锚文字分类效果接近对目标网页的整个网页内容分类的效果。然而,目前利用锚文字和URL的方法并没有考虑深层的网页结构,仅仅通过与主题的相关程度确定优先级,实验也停留在小规模集合上,没有成熟的系统并缺乏大规模爬取的性能测试。本发明利用了信息量浓缩的锚文字和URL文字,并基于网页拓扑结构确定优先级爬取,可以有效的避免上述缺点,提高爬取效率,并已经为背景系统提供了高效、稳定的爬取服务。
发明内容网页中的锚文字和URL在很大程度上能描述指向网页的基本内容。所以,不同的链接(本发明所指的链接是锚文字和URL构成的一个整体,下同)在一定程度上指示了我们所要爬取主题网页的代价。就某一个特定主题而言,从一些链接出发只需要很少的链接跳转即可到达该主题网页,而对于其他一些链接需要较多次链接跳转才能到达。链接跳转次数越少,说明从这个链接出发越能尽快爬取到尽可能多的主题网页,即从这个链接出发爬取主题网页的代价越小。因此,如果可以准确预测从一个链接出发到达主题相关网页所经过的链接跳转次数,根据跳转次数的差异确定优先级,应能取得较好的爬取效率。本发明的目的是提供一种新的基于链接层次分类的主题爬取方法。本发明的技术方案如下一种基于链接层次分类的主题爬取方法,其总体结构如图l所示,包括以下步骤:(1)构造训练集选定一个相关主题的网站,爬取该网站下的所有网页并保留网页间的互连关系;标注该网站下的若干主题网页,从标注的该网站下的主题网页出发,根据不同链接(URL和相应锚文字合并构成的词串,下同)所属层次的不同将链接划分到不同类别,其中相同层次的链接归为一个类,由链接组成的若干类构成训练集;(2)将种子网页加入待爬队列;(3)爬取待爬队列中所有URL,解析新爬取下的网页,提取出所有的链接;(4)对于每一个新的链接,根据训练集分类,然后根据所属的链接类别确定该链接的优先级,将其URL加入相应的优先队列;(5)按照顺序査看n个优先队列,取优先级最高的非空队列中的所有URL放入待爬队列中,跳到第(3)步;其它队列保持不变;(6)优先队列全部为空或到达指定爬取循环次数则爬取结束。进一步,上述的基于链接层次分类的主题爬取方法,所述步骤(1)中还对训练集中所有链接进行如下预处理去除URL和锚文字中的标点和停用词(包括对语义无贡献的词,如a,and,html,php,edu,www等),并对URL和锚文字中的剩余词语提取词干(stemming)。进一步,上述的基于链接层次分类的主题爬取方法,所述步骤(4)中对新的链接进行分类以确定优先级的方法是首先对步骤(3)提取的每一个新的链接作如下预处理去除URL和锚文字中的标点和停用词,并对URL和锚文字中的剩余词语提取词干;然后采用一元模型计算处理后的词串出现在训练集中各个类中的概率,以概率最大的类作为该链接的分类结果,将URL放入相应的优先队列中。本发明的优点和积极效果本发明提出了一种基于链接层次分类的主题爬取方法。本发明能够有效地利用锚文字和URL等有用信息分析链接的层次性,在深层次网页拓扑上展开分析和爬取。本发明在多个主题相关的网站上实际爬取,测试了性能,表明本发明系统能够较为准确、高效地滤取无关网页,爬取主题信息含量较高的网页。-图l为本发明的结构示意图。图2为本发明方法中的链接类别示意图。图3为采用本发明方法与两种传统方法对WSU课程网页进行爬取的比较图。图4为采用本发明方法与两种传统方法对MIT课程网页进行爬取的比较图。图5为采用本发明方法与两种传统方法对Caltech课程网页进行爬取的比较图。图6为本发明的程序流程图。具体实施例方式以下结合具体设施方式对本发明的方法进行详细的描述。在本实施方式中,相关的主题网页是大学网站上的课程网页。详细的基于链接层次分类的主题爬取方法,其流程图如图6所示,具体如下-构造训练集在本发明的方法中,训练集由链接组成的若干类构成。首先爬取2006年12月10日CaliforniaInstituteofTechnology主页(www.caltech.edu)以下的所有网页并保留其结构,生成有向图PageGraph(V,E),v(vGV)是图中的点,代表一个网页,e(eGE)是图中的有向边,代表从一个网页到另一个网页的链接。之后手工标注了1543门课程相关网页,并设定9个类,这是一个经验值,可以根据不同的应用环境进行调整。如果存在从v,到课程网页vo的一条路径1:luenen-^.e^vo,则说明从链接e,(i<10)出发,需要经过i次链接跳转才能到达课程网页,故链接ei被放入第i类。图2是一个简单示例,其中白圈代表非课程网页,黑圈代表课程网页,有向边即是从一个网页到6另一个网页的链接,有向边上的数字代表该链接所属类别,其中一个链接可以同时属于零个或多个不同类别(简单起见,图2中只标出了类别号小于4的所有链接)。在构造出训练集之后,需要对训练集作预处理首先去除标点符号(如","、";"、"/"等),然后去除停用词(包括对语义无贡献的词,如a,and,html,php,edu,www等),并对英文词语提取词干(stemming)。具体的提取方法与[SpeechandLanguageProcessing.Jurafsky,D,&Martin,J.H.,PrenticeHall,2000相同。构造好训练集后,将种子网页加入待爬队列。爬取待爬队列中所有URL,解析新爬取下的网页,提取出所有的链接,并对链接进行分类。分类器分类器的设计目的是为了计算每个链接所属类别。本发明的方法采用一种新的分类方法。将训练集看成9个语料库,把新的链接作为一条语句,计算该语句在9个语料库中出现的概率,以出现概率最高的那个类作为链接的分类结果。具体的,分类过程包括下面两步1.语句预处理。首先去除标点符号(如","、";"、"/"等),然后去除停用词(包括对语义无贡献的词,如a,and,html,php,edu,www等),并对英文词语提取词干(stemming)。具体的提取方法与SpeechandLanguageProcessing.J腦fsky,D.&Martin,J.H.,PrenticeHall,2000相同。2.对预处理后的词串采用一元模型计算词串出现在预处理后的语料库1-9的概率DanielJurafsky,JamesH.Martin.SpeechandLanguageProcessing:AnIntroductiontoNaturalLanguageProcessing,ComputationalLinguisticsandSpeechRecognition.UpperSaddleRiver,NJ:PrenticeHall,2000.,以计算(1)式词串概率最大的类作为该链接的分类结果,将链接放入相应的优先队列中<formula>formulaseeoriginaldocumentpage7</formula>其中Lj代表预处理后的词串,Wk代表经过预处理后出现在链接中的词,C,代表预处理过的第i类构成的语料库,P(Wkld)代表Wk在语料库i中的出现概率,具体计算如下。如果Wk在第i类中出现,贝U:<formula>formulaseeoriginaldocumentpage8</formula>其中"^是Wk在第i类中出现的频次,N,代表预处理后第i类中总的词数。如果Wk不在第i类中出现,但是在其它类中出现,则需要对i类中Wk的出现概率做出估计IX,'其中分母是所有类的总词数,分子代表所有类中出现Wk的总频次,即认为Wk在i类中出现概率为在任意语料库中随机出现的概率。如果Wk不在任何类中出现,则该词不影响类别判断,跳过该词。爬取器和页面解析器爬取器用来爬取网页中的链接,类似的方法在许多主题爬取器中都被采用,比如传统的基于广度优先的爬取器nutchhttp:〃lucene邻ache.org/nutch/,它从起始URL出发,每次爬取完同一深度所有网页后再爬取下一深度网页,但是它不关注所爬网页是否主题相关。而本发明的爬取器按照队列序号从小到大检査优先队列(即优先级从高到低),如果高优先级队列不为空,则将其中的所有URL放入待爬队列,否则,继续检查较低优先级的队列。然后,爬取器爬取待爬队列中的URL。页面解析器用来解析网页中的链接,它从新爬取的网页中提取出锚文字和URL进行下一步分类,按照分类结果将新URL放入不同的队列,再开始新一轮的爬取。当所有队列均为空或到达指定循环次数时,主题爬取结束。效果对比实验在本具体实施方式中,爬取www.caltech.edu下的所有网页(约300,000个),再手工标出其中课程网页1543个,按照本发明的方法构造训练集,其训练集信息如表l所示表1:训练集信息<table>tableseeoriginaldocumentpage9</column></row><table>为了实际评测本发明的性能,分别爬取了WashingtonStateUniversity(WSU)、MassachusettsInstituteofTechnology(MIT)以及CaliforniaInstituteofTechnology(Caltech)主页以下的若干网页(这三个网站的入口URL分别为www.wsu.edu、www.mit.edu以及www.caltech.edu)。作为对比,在采用本发明的同时还采用了其它两个爬取器进行对照实验(1)普通的广度优先爬取器Nutchhttp:〃lucene邻ache.org/nutch/,该爬取器是一个被广泛应用的开放源代码的广度优先爬取器,能支持从若干个种子URL出发,以一定的爬取器设置爬取指定层数网页。(2)自主实现的传统主题爬取器(实现思想见MichelangdoDiligenti,FransCoetzee,SteveLawrence,ClydeLeeGilesandMarcoGori.FocusedCrawlingUsingContextGraphs.Proceedingsofthe26thInternationalConferenceonVeryLargeDataBases.Cairo,Egypt,2000.),该爬取器是一个普适的主题爬取器,被大量文献及工程采用。它依据整个网页内容,将网页按照到主题网页距离分类,对候选网页采用朴素贝叶斯分类算法分到不同类别,优先爬取下预测离主题网页距离最近的网页中的所有链出URL。对主题爬取器评价可以通过记录网页的爬取时间,然后构造一个可信离线分类器来分类每段时间爬取下来的网页,计算这段时间主题网页占总爬取网页比例,进而评价主题爬取器的效果SoumenChakrabarti,MartinvandenBerg,ByronDom.FocusedCrawling:anewapproachtotopic-specificWebresourcediscovery.In:Proceedingsofthe8thWorldWideWebConference.NewYork,NY,USA:ElsevierNorth-Holland,Inc.,1999.1623-1640;JunLi,KazutakaFuruse,KazunoriYamaguchi.FocusedCrawlingbyExploitingAnchorTextUsingDecisionTree.Proceedingsofthe14thinternationalWorldWildWebConference.Chiba,Japan,2005.。在本具体实施方式中采用的离线分类器是开源系统svmjighthttp:〃svmlight.joachims.org/,这是一个开源的支持向量机分类器,训练集为人工标注的3677门课程网页以及9555门非课程网页(美国、欧洲数十个大学的网页,与爬取器的训练集不同)。为了验证离线分类器的可信度,将训练集随机分成10个部分,以其中任何一个部分作为训练集,其它部分作为测试集,经过测试,SVM分类器的宏平均和微平均Fl都在85%以上。图3至图5显示了采用这样的离线分类器评测主题爬取器的爬取进度和主题网页比例的效果,其中横坐标为一段时间爬取的总网页数,纵坐标为经SVM分类器分类后属于课程网页的比例。从图中可以看到本发明(图中为FuskmCrawler)在爬取相同数目网页时得到的课程网页的比例要明显要高于其它两个爬取器,在爬取WSU课程时,本发明平均可以达到21%的课程数目,然而传统通用的主题爬取器仅有12%,广度优先的爬取器Nutch仅能达到7%,如图3所示。在爬取MIT课程时,本发明可以达到33%的课程网页比例,后两者分别是25%和15%,如图4所示。而在爬取Caltech课程时,三者的结果分别是40%,28%和22%。爬取MIT网页时,对于一开始的数百个网页传统主题爬取器性能最优,但由于它给予同一个网页中不同链接以相同的优先级,缺乏深层考虑,性能很快被本发明超越,如图5所示。总体说来,本发明由于考虑了链接的层次性,相对于传统通的主题爬取器以及广度优先的爬取器Nutch效率更高。在爬取WSU课程网页时分别提高了77%和200%,在爬取Caltech课程网页时提高了43%和167%,而在爬取MIT课程时分别提高了32%和120%。爬取MIT时提高的效率不如前两者,主要原因是MIT课程网页深度比较浅(在www.mit.edu主页上就有一个拥有大量课程网页的链接OpenCourseWare),因此即使广度优先的爬取器也能在一开始就有较高的课程网页比例。另一个实验爬取WSU的全部课程,并在其中标注了896个课程网页,采用与上节同样的方法构造另一个训练集。然后将两个训练集的锚文字和URL中的词采用信息增益(IG)的方法进行特征选取,并取出IG值较大的若干词(IG值与相应词在训练集中对分类帮助正相关YimingYang,Jan0.Pedersen.AComparativeStudyonFeatureSelectioninTextCategorization.In:Proceedingsofthe14thInternationalConferenceonMachineLearning.SanFrancisco,CA,USA:MorganKaufmannPublishersInc.,1997,412-420.)比较两个训练集中重叠词占所有词的比例。表2是分别取前50,100,200,500,1000,2000个词的比较结果:表2:WSU与Caltech分别构造的训练集重叠性比较<table>tableseeoriginaldocumentpage11</column></row><table>注第1组WSU锚文字VS.WSUURL第2组Caltech锚文字vs.CaltechURL第3组WSU锚文字vs.Caltech锚文字第4组WSUURLvs.CaltechURL可以从中看出,由于网页语言的不规范性,使得不同大学对课程网页描述的锚文字、URL缺乏一个重叠度很高的交集。同一个大学网页的URL和锚文字重叠程度要高于不同大学之间,不同大学间网页的锚文字和锚文字所用的词重叠性要略高于URL和URL的重叠性。这是因为锚文字是对目标网页的语言描述,比URL这样的符号描述要更为规范。因此,采用一个大学的训练集爬取其它大学时候效果往往与预期存在差距。例如对于爬取器训练集是Caltech网页的情形,图5爬取Caltech网页可以达到平均40%比例的课程网页,与此同时爬取另一个大学WSU网页仅能达到21%的比例。通过构造更加全面的训练集,本发明的效率应当会有更大的提高。权利要求1.网络搜索中的基于链接层次分类的主题爬取方法,其特征在于包括以下步骤(1)构造训练集选定一个相关主题的网站,爬取该网站下的所有网页并保留网页间的互连关系;标注该网站下的若干主题网页,从标注的该网站下的主题网页出发,根据不同链接所属层次不同构造由链接组成的若干类构成的训练集,其中相同层次的链接归为一个类;(2)将种子网页加入待爬队列;(3)爬取待爬队列中所有URL,解析新爬取下的网页,提取出所有的链接;(4)对于每一个新提取的链接,根据训练集进行分类,然后根据所属的链接类别确定该链接的优先级,将其URL加入相应的优先队列;(5)按照顺序查看优先队列,取优先级最高的非空队列中的URL放入待爬队列中,跳到第(3)步;其它队列保持不变;(6)优先队列全部为空或到达指定爬取循环次数则爬取结束。2.如权利要求1所述的主题爬取方法,其特征在于所述步骤(1)中训练集中的链接还进行如下预处理去除URL和锚文字中的标点和停用词,并对URL和锚文字中的剩余词语提取词干。3.如权利要求2所述的主题爬取方法,其特征在于所述步骤(3)中提取的链接还进行如下预处理去除URL和锚文字中的标点和停用词,并对URL和锚文字中的剩余词语提取词干。4.如权利要求3所述的主题爬取方法,其特征在于所述步骤(4)中对确定链接优先级的方法是采用一元模型计算处理后的词串出现在训练集中各个类中的概率,以概率最大的类作为该链接的分类结果,将链接放入相应的优先队列中。全文摘要本发明公开一种网络搜索中的基于链接层次分类的主题爬取方法。该方法包括以下步骤(1)构造训练集;(2)将种子网页加入待爬队列;(3)爬取待爬队列中所有URL,解析新爬取下的网页,提取出所有的链接;(4)对于每一个新的链接根据训练集分类,然后根据所属的链接类别确定该链接的优先级,将其URL加入相应的优先队列;(5)按照顺序查看优先队列,取优先级最高的非空队列中的所有URL放入待爬队列中,跳到第(3)步,其它队列保持不变;(6)优先队列全部为空或到达指定爬取循环次数则爬取结束。本发明能够有效利用锚文字和URL等有用信息分析链接的层次性,在深层次网页拓扑上展开分析和爬取。文档编号H04L29/06GK101101601SQ20071011859公开日2008年1月9日申请日期2007年7月10日优先权日2007年7月10日发明者毅周,铭张,江云亮申请人:北京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1