链路分析中的数据采集技术研究_大数据论文

链接分析中的数据采集技术研究,本文主要内容关键词为:技术研究论文,数据采集论文,链接论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。

[中图分类号]G250.72;G350 [文献标志码]A [文章编号]1005-8214(2010)10-0044-05

1 前言

近10年来,网络链接分析的理论、技术和方法在数学、计算机、社会科学等多个领域得到了快速发展。正因为网络链接分析在犯罪调查、防止金融诈骗、Web挖掘(如网络搜索服务和企业竞争情报分析)和通讯等方面存在潜在的、巨大的学术价值和经济价值,[1]网络链接分析引起了越来越多国内外学者的关注。此外,在数据挖掘领域出现了新的研究分支——链接挖掘(Link Mining)。链接挖掘的主要任务有基于链接的分类和聚类、链接实体间关系的判断与预测、链接强度的预测以及不确定因素的识别(如信息提取、去重和引证分析中的对象识别等)。[2]

在图书情报领域,从“Webometrics”的提出,[3]到对网络文献链接规律[4]、期刊网络影响力[5]、学术科研机构之间链接规律[6-8]等方面的探索性研究,都是围绕链接分析展开的。出于信息计量学研究的需要,综合利用多个学科的知识、从多个角度对于链接挖掘的研究有着广泛而又深远的意义。然而,对于网络计量学的链接分析研究而言,难点之一就是如何才能有效地获取序化的、可靠的用于链接分析的原始数据。由于网络链接实现技术的多样性、链接技术应用的广泛性、链接动机的复杂性、[9]链接质量分布的不均衡性和链接创建的方便性等诸多因素的存在,给链接分析研究的数据获取带来很大挑战。链接分析结论的可信性很大程度上受到原始数据可靠性的影响和制约,[10]不同的数据采集策略和数据采集工具可能会导致完全不同甚至相反的结论,因此,对于数据采集策略和数据采集工具的研究是链接分析研究的基础和保证。数据采集策略的多样性和对不同样本集合的适用性必须依赖于数据采集工具的灵活性,所以数据采集工具的优化是链接分析研究的第一步。从链接分析的理论需要出发,作者认为对一个链接分析用数据采集工具性能的判断包含以下几个方面的内容:(1)是否能够有效地获取样本集合内指向核心资源的链接;(2)数据的组织方式拟合分类方法是否很好地拟合于数据分析工具;(3)是否可以根据不同的研究需要制定不同的数据采集策略,如对数据采集深度和范围的选择。

满足以上条件的数据采集工具才被认为是功能完备的,从其获取的数据才是可靠的。而现有的数据采集工具,无论是商业软件还是共享免费软件都难以达到以上的标准。为了进一步消除由数据采集工具引起的链接结构和计量分析结论的误差,本研究中我们将开发一个链接分析专用的数据采集系统——LinkDiscoverer。

2 相关研究

从目前国内外链接分析研究中所普遍采用的数据采集策略和工具来看,主要有以下三个方面:(1)使用大型商业搜索引擎,如Alta Vista、Google等;(2)第三方网络爬行软件与自主开发相结合的方式,如Offline Explorer+webStat;[11](3)自主开发链接抓取工具,如CheckWeb,[12]Mike Thelwall等开发的网络爬虫,[13]Lawrence,Bollacker和Giles开发的Cite-Seer。[14]一般大型的商业搜索引擎在网页获取、文档索引和并行检索方面的技术比较成熟,网络覆盖面相对较广,使用搜索引擎来获取链接分析数据具有很好的可操作性。同时在某些情况下,比如在计算Web-IF时,可以很大程度上减轻研究人员的负担,这也是目前链接分析中获取分析数据的主要途径和方法。[15-18]然而对于链接分析研究而言,商业搜索引擎也存在很多致命缺陷,如可靠性低、稳定性差、更新慢等问题,Ronald Rousseau等很多学者的研究也证明了这一点。[19-21]虽然搜索引擎不存在太明显的语言偏向,但明显存在技术上非故意的地区倾向,比如对美国地区的覆盖面远远高于中国内地、台湾地区以及新加坡,当然,其中有部分原因可能与美国的信息技术起步早,国家和地区网站的链接倾向以及深层次的社会、政治因素有关。[22]在笔者的测试中也发现商业搜索引擎本身的算法也存在一些严重缺陷。例如在Alta Vista的检索框中输入?“link:www.njau.edu.cn”返回3950条记录,而输入“link:www.njau.edu.cn NOT site:www.njau.edu.cn”却返回8080条记录;在Google的检索框中输入“link:www.njau.edu.cn”只返回560条记录(Accessed 2009,Dec.20,PM 6:00,2005),按常规判断Google的索引库不可能这么小,Google对网页排名pagerank低于一定值的网站进行了自动过滤,因而返回的结果要远少于其他搜索引擎。经过对Yahoo、MSN、Alta Vista和Allthe Web返回数据的综合分析,发现这4个主流搜索引擎前1000条(MSN返回前250条)返回结果的平均重叠率连40%都不到,类似的结论在Erik Thorlund Jepsen等人的研究中也有反映。[4]

Liv Danman Fugl认为,用于网络计量学研究的搜索引擎应该具备4个方面的条件:[23](1)对被测试站点必须有较高的覆盖面;(2)检索结果必须可靠,即在特定比较短的时间内的检索结果该是一致的;(3)用户可以获取搜索引擎的基本策略,如页面标引方法、覆盖面、标引哪些格式的网页以及为什么等;(4)必须具备可以发现网页之间链接关系的高级检索功能。除了这几个方面,网络计量学的数据采集工具还应该具备网站分层、页面选择、过滤、域控制、错误检测等功能。显然,目前的搜索引擎还难以满足以上要求。

使用第三方网络爬行软件来获取数据也有很大弊端,很多时候研究者的数据采集策略受到第三方软件这个“黑箱”的限制,数据采集方式和数据组织方式不完全符合链接分析或者研究初始设计的需要,从而对研究结论产生很大的影响。综合来看,就链接分析的单点研究或者有限多点研究而言,自主开发链接分析专用的数据采集软件是比较可靠的方法,具备了很好的灵活性和可扩展性。[13,23]

考虑到现有数据采集工具存在的各种不足,本研究开发了以网络链接结构和分布分析研究为主要目标的链接数据系统——LinkDiscoverer。该系统依据社会化链接网络分析的研究需要,在数据获取的深度和范围等数据采集可靠性保证以及数据组织等方面制定了比较完备的策略,尽可能地以最小的代价获取最核心和可靠的链接数据,为后续的链接网络结构分析和其他计量指标的计算提供良好的数据支持。

3 系统功能设计

和搜索引擎使用的Crawler(或Spider)系统不同的是,LinkDiscoverer中支持对爬行规则和优选策略的设置以及链接分类等。可利用LinkDiscoverer获取样本网站集合内各样本之间的相互链接关系数据,而不必受到搜索引擎的功能限制。

3.1 采集规则设定及链接分类

在启动一个新的采集任务之前,需要由用户选择设定3种采集规则:(1)采集范围设定。LinkDiscoverer支持单一站点(site)内的爬行和域(domain)内爬行两种模式,比如输入初始URL“http://www.domain.edu.cn”,在单一站点爬行模式下,LinkDiscoverer的子线程只会在“domain”域内的“www”主机上爬行,所有指向该主机以外的URL都被视为向外链接(outlink);而在域爬行模式下,LinkDiscoverer会访问“domain”域内所有的主机,当然,只有指向域“domain”以外的URL才会被视为向外链接。(2)采集深度设定。一般认为,浅层链接的质量、权威性要高于深层链接(除了指向电子期刊等电子资源的深层链接),所以LinkDiscoverer默认的搜索深度为4层,也可根据实际需要手动设定。(3)DNS设定。为了减少通信量,在支持IP访问的站点,LinkDiscoverer可以缓存DNS,而不需要每次都调用DNS服务器来解析地址。

LinkDiscoverer把发现的链接分成4类,状态代码分别为0-3。0:self-link或pageURL,即内部链接或者页面地址;1:outlink,即向外链接;2:NOTFOUND link,发生未找到错误的链接(404);3:unparsed entity link,外部未析实体链接,如“.rar”“.mpeg”等文件。(注:概念上后两种NOT FOUND link和unparsed entity link都属于serf-link)

3.2 链接和页面选取规则

超文本技术上要回答什么是链接很简单,Dale对此作了如下定义:“链接是一个网页到另外一个网页的联系”。[24]然而,从网络计量学中链接分析的角度来定义链接并不容易,并非所有技术上的“链接”都是对链接分析研究有意义的,在制定数据采集策略之前,必须明确定义哪些是链接分析意义上的“链接”。实际应用中链接的表现形式至少有不下七八种以上,而LinkDiscoverer只解析对链接分析有意义的3种链接:

有一点需要说明的是,还有一种自动跳转链接,如:,这种链接的主要功能是一定时延后从一个页面自动跳转到另外一个特定的页面。由于某些网站在个别页面上(如首页)采用了自动跳转技术,为了提高数据采集的全面性,LinkDiscoverer也支持类似的链接跳转。

除了支持常见的各种网页格式,LinkDiscoverer还支持一种非常重要的格式——无后缀名页面。现在很多高校都使用统一的web发布平台,如新闻发布系统,这些情况下生成的web页面大多是无格式的。新闻页面是网络环境下正式信息交流的一种很重要的信息载体,也是LinkDiscoverer的重点采集对象。

LinkDiscoverer不访问".txt"文件等非超文本页面(在web mention或者web citation的研究中可能需要考虑文本文件和PDF等文件中内容的提取[25])。

3.3 性能优化

任何一个crawler系统的原理都很简单,但要设计一个功能完备、性能良好且健壮的crawler系统却是很大的挑战,[26]需要考虑很多方面的因素,如网络带宽、CPU、磁盘、存储系统和网络布局(分布式系统)等问题。为了节省计量分析中链接网络数据采集的软硬件成本和时间成本,本研究对LinkDiscoverer的主要性能做了一定优化,如:

●缓存优化。计算机CPU处理速度飞速增长,可支持的内存容量也在不断增加,但硬盘的速度却变化不大。但无论如何,一个大规模Crawler系统都无法直接在内存中维护一个庞大的URL列表,大部分URL必须存放在外部存储设备上,如硬盘。但从硬盘读取数据的速度要远慢于内存,多次的硬盘I/O必然会严重影响crawler系统的效率,所以就需要科学的URL缓存策略来缓解内存不足和硬盘速度慢之间的矛盾。LinkDiscoverer采用的是LRU优化算法,主要考虑LRU实现简单而且灵活,可以动态设定缓存大小。在运行中可根据启动的线程数和系统内存总量来决定每个线程所维护的URL列表的大小。

●DNS优化。为了减少和DNS服务器之间交互所消耗的时间和带宽,LinkDiscoverer对访问的主机地址进行了缓存,如果遇到相同的主机,直接调用DNS缓存即可。当然,前提是该主机必须支持IP直接访问。此外,LinkDiscoverer还支持反向解析。如果遇到主机名是IP地址表示的URL,为了判断是selflink还是outlink,LinkDiscoverer会把该IP反向解析成域名,再判断其属于哪个域,而不是笼统地给一个outlink的分类代码(1)。域名反向解析的前提是DNS服务器必须支持反向解析,即DNS服务器上存有反向解析文件(有的可能没有)。

理论上LinkDiscoverer可以完全采用全自动的方式进行网络链接信息采集,但为了达到好的效果,必然要对部分链接进行过滤。虽然系统中嵌入了禁止搜索关键字,但各个网站的内容纷繁复杂,要设置一个完全通用的链接过滤规则是不现实的。LinkDiscoverer中设置了相应的规则,允许手动添加禁止搜索关键字,类似的做法在文献[13]中也有反映。

4 实验

以上几个部分详细阐述了LinkDiscoverer的数据采集规则、链接过滤规则和性能优化等内容,为了验证本研究提出的各种链接数据采集策略和技术的适用性、可靠性,作者进行了较大规模的实证性研究。为了和以前的研究形成参照以便于检验本研究方法的可行性,本实证研究选取了网络计量学中普遍采用的分析对象——大学网站作为分析对象,通过对从样本网站获取的数据的分析来测试LinkDiscoverer在这些方面的表现和性能,从而探讨利用链接分析来进行机构评价和大学网络结构发现的可行性。

本研究以中国内地高校排名前100位的大学(来自文献[27])网站作为样本,在2008年5月20日—6月15日之间,笔者对这些网站进行了数据采集(由于网站本身域名原因或者其他技术因素,最后确定的样本集合为93个),共获得链接7209197条,在此基础上形成了原始的链接矩阵。以下将通过WIF的指标计算和链接网络主题结构分析两方面来验证LinkDiscoverer数据采集策略和技术的有效性。

4.1 基于WIF的综合实力评价

网络影响因子(Web Impact Factor)是传统的主要网络计量评价指标,它借鉴了期刊影响因子的概念,因此它采用的算法和期刊影响因子的算法类似,用外部链接数/网站网页总量之比来度量。但Ingwersen指出,在对机构的WIF的计算要特别小心。[15]还有一种方法是直接用外部链接数来衡量WIF,作者在之前的研究中对比了两种评价效果,发现后者的评价效果更为稳定,本文的研究也进一步证实了这个结论。表1为外部链接数inlink和大学排名之间的相关系数。可以看出,在0.01的显著性水平之下,外部链接数(inlink)和大学排名(rank)之间存在非常明显的相关关系。

4.2 链接网络结构分析

本研究利用基于边排斥力导向(Edge-repulsion force directed)的复杂网络可视化工具——LinLog能量模型对链接网络进行了可视化,并根据样本的分布情况分析了链接网络的局部结构,成功发现8个区域。分析其形成原因,发现1到4和8为主题合作型社区,5到7为区域合作型社区,以上划分出的8个社区也是以主题和区域合作为主要形成特点。集合中的少量结点也有例外情况,如社区7中的njnu不属于广东省,社区8中的某些样本不属于理工类大学。各个集合的详细信息如表2所示(集合成员以样本网站的二级域名表示):

上述研究结论显示,在本研究的理论框架下设计和开发的链接分析用数据采集系统——LinkDiscoverer可以很好地满足链接计量分析的研究要求,无论是在传统的网络影响因子的研究上,还是在新的链接分析方法的运用上,LinkDiscoverer均表现良好。并且,LinkDiscoverer在设计上的独特性也带来了链接分析方法的创新性,同时也发现了一些链接分析中存在潜在研究价值的课题,如链接主题聚类和地区聚类等。

5 结论

LinkDiscoverer和CheckWeb、离线浏览等链接分析工具无论是从设计理念,还是实现方法和技术上都有不同。在功能上,CheckWeb只能进行指定主机范围内的爬行,而不支持在指定域内的爬行。离线浏览软件和数据挖掘软件相结合用来获取链接数据的方法有很多缺陷,如信息提取和网页过滤等问题。在灵活性和可扩展性方面,CheckWeb和离线浏览工具都不支持可扩展的URL过滤机制,LinkDiscoverer可支持采用相对灵活的方法来设定数据采集规则、网页URL过滤规则等。在效用性方面,CheckWeb基本不可能满足大规模链接分析研究的要求,和离线浏览工具一样也需要数据挖掘工具来解析出链接数据。在数据的可再现性方面,现有的工具都不具备数据的可再现能力。虽然链接分析研究中不具备数据的可再现性,但数据采集的策略和手段却是可再现的。要对网络爬行系统的科学性进行验证,只要结合爬行策略和资源对象范围,就能够作出合理的判断。第四部分的实证研究表明,LinkDiscoverer在功能性、灵活性、可扩展性和效用性上都表现良好,基本满足了链接分析的研究需要,并且在分析方法上实现了一定突破。

本研究从网络计量学的实际需求出发,设计和开发了链接分析专用的软件系统,该系统主要解决了有关链接分析数据采集的以下几个方面的问题:域内或主机上链接数据的获取、非超文本文件的过滤、采集深度和路径的控制。但从研究中发现,链接分析的数据采集中存在的诸多难点还有待解决,比如网站边界的识别、多域名机构的识别、链接过滤、script链接的处理等。虽然在本研究中解决了一些问题,但上述难点还不同程度地存在着,是链接分析研究不可回避的问题,希望在以后的研究中能得到改进和发展。

[收稿日期]2010-03-28

标签:;  ;  ;  ;  

链路分析中的数据采集技术研究_大数据论文
下载Doc文档

猜你喜欢