基于本体的主题爬虫

2024-09-13

基于本体的主题爬虫 篇1

近年来,随着Web信息资源呈几何数级增长,通用网络爬虫模型的目标就是尽可能多地采集信息页面,但是在这一过程中它并不注意页面采集的顺序和被采集页面的相关主题。这需要消耗非常多的系统资源和网络带宽,并且对这些资源的消耗并没有换来采集页面的较高利用率。由于其采集信息的主题范围过于广泛,只求尽可能多地采集信息页面,而较少考虑采集的信息是否与查询主题相关,显然已经无法满足人们对个性化信息检索服务日益增长的需求。

作为一个Web应用程序,网络爬虫从一个初始的URL集合出发,将URL集合里的URL全部放入到一个有序的待提取URL队列里。而Web信息提取器从这个队列里按顺序取出URL,通过Web上的协议,获取URL所指向的页面,然后再从这些已获取的页面中分析提取出新URL,并将它们继续放入到待提取URL队列里,然后重复上述过程,直到Web信息提取器根据自身的搜索策略停止采集为止[1]。其结构原理图如图1所示。

1 基于语义本体的网络爬虫模型

1.1 基于语义本体的网络爬虫模型

为了接近搜索引擎的两大目标:查全率和查准率,本文提出的网络爬虫模型是指尽可能快地爬行、采集尽可能多的与预先定义好的主题相关的网页。该网络爬虫可以通过对整个Web按主题分块采集,并将不同块的采集结果整合到一起,以提高整个Web的采集覆盖率和页面利用率。

为此,针对传统通用的网络爬虫的弊端,本文提出了基于领域本体的抓取方案。利用相关领域的知识本体,准确获取到较为全面的该领域的相关概念集合(主题集合),并且在搜索时,无需针对整个Web,只须根据该概念集,对网页进行主题相关性的判断。这样,只从那些符合主题的网络链接开始,搜索的范围比通用网络爬虫的搜索范围要小很多,可以极大地提高搜索的查全率和查准率。

为了对网页进行主题相关性的判断,本文利用知网的相关知识,引入了词汇的语义计算和义原的概念,从词的语义层次对页面链接进行语义相关度的计算,保存与主题相关的URL和页面,提高了信息抓取的效率[2]。

结合语义计算,本文提出基于语义本体的网络爬虫的基本思路如下:

首先根据相关已知本体产生主题集;再根据提供的初始URL集开始抓取网页,对抓取的网页进行相关过滤和页面处理;提取页面内容,并对页面内容进行分词,提取出关键词集合,利用基于向量空间模型算法[7],对该关键词集合与本体的概念集进行相关度计算;根据设定的阈值,确定页面的保存或放弃;然后对页面中的链接利用中国知网,结合链接的扩展元数据,进行语义分析,提取出超链接的关键义原集,分别与主题义原集进行语义相关度计算[8];根据设定的阈值保存语义相关度较高的链接,并将链接保存到URL队链中进行页面提取,直到符合一定条件后结束网络信息采集过程。其原理图如图2所示。

1.2 扩展元数据义原集的获取

人们发现利用HTML标记Anhcor等信息能够有效地指导检索和基于主题的信息采集。为了与元数据(<Meta></Meta>)相区别,把这些标记信息统称为HTML扩展元数据。

HTML扩展元数据主要有:锚点文本(AnchorText)、扩展锚点文本(ExAnchorText)和超链接。锚点文本和扩展锚点文本可能不会为该网页自身的主题预测提供有用的信息,但是它极有可能为它的目标网页的主题预测提供非常重要的信息。我们通过超链接的锚点文本和扩展锚点文本来预测该超链接指向的目标网页的主题。

从页面中提取出某一URL的锚点文本和扩展锚点文本作为该URL的扩展元数据,然后对提取出的扩展元数据进行分词得到该扩展元数据的词集D,根据前文所介绍的基于语义的词义消歧方法对词集D中的所有词进行词义消歧得到该扩展元数据的义项集W,其思路如下所示:

W = {w1,w2,…,wn}为所有元数据关键词形成的集合,设第i个关键词wi存在m个义项,记作C(wi) = (ci1,ci2,…,cim),其中词wi的第j个义项cijk个义原,记T(cij) =(tij1,tij2,…,tijk),从而由关键词wi的义项集合C(wi)转化扩充得到关键词wi的元数据特征义原集T(wi) = {(ti11,ti12,…,ti1k1),(ti21,ti22,…,ti2k2),…,(tim1,tim2,…,timkm)},设有正整数l,m,n,pmn使得timl= tinp,过滤掉集合T(wi)中的重复义原,得到关键词wi的最终元数据义原集T(′wi),设由q个义原组成,记为T(′wi) = {ti1,ti2,…,tiq}。合并各个关键词的元数据义原集则有T(W) ={T(′w1),T(′w2),…,T(′wi)} = {(t11,t12,…,t1q1),(t21,t22,…,t2q2),…,(tn1,tn2,…,tnqn)} ,按照上面介绍的过滤重复义原的方法消除掉T(W)中的相同义原后得到链接的元数据特征义原集,记为T(W′) ={t1,t2,…,tr},其中r表示义原集中义原的个数。

1.3 主题义原集的获取

本体是近年来随着计算机信息、知识处理、人工智能、知识工程等学科的发展而迅速兴起的一个十分具有活力的研究领域。美国斯坦福大学的知识系统实验室的学者Tom Gruber提出了Ontology一个较为广泛接受的定义,即Ontology是概念模型的明确的规范说明。Borst是在此基础上定义,Ontology是共享概念模型的形式化的规范说明[3]。Studer等对上述定义进行深入研究后认为,Ontology定义包含以下4层含义:其中:

1) 概念模型 指通过抽象客观世界中一些现象的相关概念而得到的模型,其表示的含义独立于具体的环境状态。

2) 明确 指所使用的概念及使用这些概念的约束都有明确的定义。

3) 形式化 指Ontology是计算机可读的(即能被计算机处理),而不是完全用自然语言表达。

4) 共享 指Ontology中体现的是共同认可的知识,反映的是相关领域中公认的概念集,即此概念集是为整体所共有的,而非个体所独有。

本文正是利用知识领域本体的作用,通过利用本体来构建主题概念集,进而利用知网的相关技术得到基于语义的主题概念义原集合,用于语义相关性的判断,其过程同扩展元数据义原集是大致一样的。

1.4 链接相关性判定算法

在获取扩展元数据语义集和主题语义集后,对URL扩展元数据与主题的相关性计算即为主题特征义原集与URL扩展元数据特征义原集中各个义项相关度的平均值。其算法描述如下:

算法描述 扩展元数据的主题相关性判定算法。

输入 主题特征义原集Tc及某URL扩展元数据消歧后的义项集Eurl

输出 URL扩展数据元数据与主题的相关权重。

函数体

(l) 对Eurl中的每个义项ei赋予权值0,即weihgt(ei)=0;

(2) 对相应URL扩展元数据的总相关权重赋予初始值0,即weihgt(Eurl)=0;

(3) For扩展元数据义项集Eurl中的每个义项ei,义项ei的每个义原tn;

(4) For主题特征义原集中的每个义原tm;

(5) weihgt(ei)=weihgt(ei)+sim(tm,tn);

(6) weight(Eurl) = weihgt(Eurl)+weihgt(ei);

(7) weight(Eurl)=AVG(weihgt(Eurl))。

其中sim(tm,tn)为义原tmtn之间的相似度,根据知网义原之间的相似度可以转为义原语义距离的问题。

在计算所有的链接与主题的相关度权重后,通过设定的阈值,即可获取与主题相关度较大的链接。

2中国知网

知网[5]是一个以汉语和英语的词语所代表的概念为描述对象,以揭示概念与概念之间以及概念所具有的属性之间的关系为基本内容的常识知识库。在知网中有两个主要的概念:“概念”和“义原”。

“概念”是对词汇语义的一种描述。每一个词可以表达为几个概念。

“概念”是用一种“知识表示语言”来描述的,这种“知识表示语言”所用的“词汇”叫作“义原”。

“义原”是用于描述一个“概念”的最小意义单位。

在知网中,它利用1500个“义原”分为10个类来对每一个“概念”进行描述,除了义原以外,知网中还用了一些符号来对概念的语义进行描述。

义原一方面作为描述概念的最基本单位,另一方面,义原之间又存在复杂的关系。在知网中,一共描述了义原之间的8种关系:上下位关系、同义关系、反义关系、对义关系、属性—宿主关系、部件—整体关系、材料—成品关系、事件—角色关系。可以看出,义原之间组成的是一个复杂的网状结构,而不是一个单纯的树状结构。不过,义原关系中最重要的还是上下位关系。

2.1 词语相似度

对于两个汉语词语W1和W2,如果W1有n个义项(概念):S11,S12,…,S1n,W2有m个义项(概念):S21,S22,…,S2m,我们规定,W1和W2的相似度定义为各个概念的相似度之最大值:

Sim(W1,W2)= max Sim(S1i,S2j) i=1,…,n,j=1,…,m

这样,两个词语之间的相似度问题归结到了两个概念之间的相似度问题。注意上述考虑的是孤立的两个词语的相似度。如果是在一定上下文之中的两个词语,最好是先进行词义排岐,将词语标注为概念,然后再对概念计算相似度。

2.2 义原相似度

由于所有的概念最终都归结于用义原(个别地方用具体词)来表示,所以义原的相似度计算是概念相似度计算的基础。

由于所有的义原根据上下位关系构成了一个树状的义原层次体系,这里采用通过简单的语义距离来计算相似度。假设两个义原在这个层次体系中的路径距离为d,则两个义原之间的语义相似度为:

Sim(p1,p2)= α/(d+α)

其中p1和p2表示两个义原(primitive),dp1和p2在义原层次体系中的路径长度,是一个正整数。α是一个可调节的参数[6]。

3 试验及结果

我们对该基于语义本体的网络爬虫模型的基本性能进行了测试,取得了令人满意的结果。

(1) 测试集的选择。选择了软件信息作为主题进行测试,收集了软件主题网站30个,并加入了40个无关网站组成测试集,其中共含超过2000个页面。

(2) 算法测试和性能测试用相同的初始URL集合,分别用传统通用爬虫模型及基于语义本体的爬虫模型对数据进行采集。实验时分别记录下采集页面数为100,200,500,…,1500时的采集状态,并计算出采集准确率和资源发现率,如表1所示。

由表1可以看出,新的基于语义本体的网络爬虫模型在采集准确率及资源发现率上明显比传统的搜索策略有了很大的提高。

4 结束语

本文针对当今流行的主题式搜索引擎进行了深入的研究,提出了一种基于语义本体的网络爬虫模型,避免了传统通用网络爬虫的缺点,提高了网页资源的抓取效率和针对性,具有一定的研究价值。实验表明,该模型比传统的通用网络模型具有较高的网络资源准确率。和传统的基于整个Web的信息采集模型相比,本文提出的基于语义本体的网络爬虫模型主要有以下三个优点:

(1) 它极大地节省了资源和提高了资源的利用率。通用的信息采集技术是针对整个Web上十分浩大的信息,是对整个Web进行采集或完全镜像,因此在采集过程中所使用的硬件资源和网络资源是十分巨大的。而基于语义本体的网络爬虫就是在采集过程中对URL根据需要有所剪枝[9]。这种采集剪枝,不仅使剪枝掉的URL数目远大于被采集的URL数目,还使得剪枝后采集到的页面有较高的利用率。

(2) 它缓解了传统通用信息采集系统难以对采集到的资源及时更新的弊端。因为本文针对的是领域知识的信息采集,并且对相关性进行了语义上的判断,信息采集量比传统通用的信息采集量要小得多。因此,页面的刷新周期极大地变短,而数据过时风险相应减小。

(3) 它更灵活、效率更高,更利于为用户服务。对于每个用户来说,他们根本不关心整个Web上的数据,而只关心其中很小的一部分。事实上,这部分数据往往集中在很小的一个或者几个主题领域。基于语义本体的网络爬虫可以满足这些用户的需求,而且由于采集的页面数量少,页面内容也更有针对性,所以能够更好地针对需要为用户提供服务。

摘要:针对传统通用网络爬虫的自身固有的缺陷,结合本体的相关理论,提出了一种基于语义本体的网络爬虫的相关模型。该模型以本体构建领域知识概念集,结合知网,从语义的角度,利用扩展的元数据,在词的语义层次,对抓取的页面链接进行语义相关性计算,预测与主题相关的URL,提高采集的网络资源信息与设定主题的相关度。实验结果表明,该模型同其它通用网络爬虫模型相比具有较高的信息抓取准确率。

关键词:领域本体,网络爬虫,扩展元数据,知网

参考文献

[1]周立柱,林玲.聚焦爬虫技术研究综述[J].计算机应用,2005,25(9):1965-1969.

[2]赵佳鹤,王秀坤,刘亚欣.基于语义分析的主题信息采集系统的设计与实现[J].计算机应用,2007,27(2):406-408.

[3]Borst W N.Construction of Engineering Ontologies for Knowledge Sha-ring and Reuse[D].University of Twente,1997.

[4]Studer R,Benjamins V R,Fensel D.Knowledge engineering principlesand methods[J].Data and Knowledge Engineering,1998,25(122):161-197.

[5]董振东,董强.知网[DB/OL].1999-09-23[2004-03-06].ht-tp://www.keenage.com.

[6]刘群,李素建.基于知网的词汇语义相似度计算[J].ComputationalLinguistics and ChineseLanguageProcessing,2002,7(2):59-76.

[7]李盛韬,赵章界,余智华.基于主题的Web信息采集系统的设计与实现[J].计算机工程,2003,29(17):102-104.

[8]李卫,刘建毅,何华灿,等.基于主题的智能Web信息采集系统的研究与实现[J].计算机应用研究,2006,23(2):169-172.

基于本体的主题爬虫 篇2

【关键词】主题爬虫 深度学习 深度信念网络 向量空间模型 支持向量机

【Abstract】A foucsed crawler can detect the web pages belonging to certain topics through WWW as well as storing and indexing the key words, paragraphs and images in these web pages. However, currently the rapid growing of the quantities of formats and contents of web pages lead to a great challenge that the traditional topic discovery methods based on key words matching are ineffective for precise topic recognition, which also affect to the construction of web page database and topic detection of web page sessions. In this paper, we propose a design of focused crawler based on deep learning. In this method, a deep belief network is adopted to represent the potential concepts of web pages with different topics which are described as vector space model. The extracted concepts of a topic forms a feature vector which is used by a support vector machine to classify the topics of a new web page. The proposed method improves the recognition accuracy of web page topics.

【Keywords】focused crawler; deep learning; deep belief network; vector space model; support vector machine

【中图分类号】G64 【文献标识码】A 【文章编号】2095-3089(2016)01-0218-02

1.背景

在互联网技术高速发展的今天,万维网(World Wide Web,WWW)上保存了海量的信息和资源,且大多以多媒体网页的形式进行保存[1]。为了使人们能够在海量的网页资源中快速查找到感兴趣的网页资源,搜索引擎通过网页爬虫(Web Crawler)收集各种网页,并建立基于关键词或主题的索引,方便用户的快速搜索[2]。在这种情况下,网页爬虫程序对网页主题的识别能力和效率就显得十分重要[3]。传统爬虫程序主要是依据对网页关键词的匹配进行主题识别,主要对HTML页面中的meta字段或整个HTML文本进行关键词匹配[4]。而对特定主题的定义则为若干个关键词的组合。这种基于简单文本匹配的方法对当前复杂且种类繁多的网页是不适用的,主要原因在于网页主题是一个比较复杂的概念,仅通过关键词或其组合的方式难以准确表达某个网页主题[5, 6]。

研究者们采用机器学习和数据挖掘的方法对不同主题的文本特征进行学习和提取,并以模型参数的形式预先设置在爬虫程序里面,当进行网页获取时,爬虫程序通过模型在线判断一个新网页所属的主题,然后确定是否保存到数据库中[7]。但同时我们指出,不同的机器学习模型的训练代价、识别效率和对网页主题所蕴含的抽象概念的表达能力各不相同。基于统计学习和浅层机器学习的模型由于受限于其对复杂函数的表达能力,因此在网页主题爬虫上使用的效果并不十分理想[8]。针对目前网页主题爬虫对网页主题的识别问题,本文提出采用基于深度学习(Deep Learning)的模型对主题进行特征表达并使用支持向量机(Support Vector Machine,SVM)模型进行识别。区别于传统的浅层模型,深度学习模型的输入层和输出层之间相隔了若干个运算层,如堆叠自动编码器(Stacked Auto Encoder,SAE)就是若干个自动编码器的叠加,深度信念网络(Deep Belief Network,DBN)实质上是一个多层的贝叶斯信念网络[9]。通过多层的运算单元叠加,可以有效提取和表达各种复杂概念,这是构建有效主题识别模型的基础。

2.主要方法

本文方法首先使用向量空间模型对网页进行向量化表达,即把网页转化为词向量,在本研究中对中英文网页分别使用不同的基础向量,这是由于中文和英文的词集是不同的。使用分词软件对网页的文本内容进行过滤和分词,并把分词结果记录在一个m维布尔向量中,若该网页含有第i个基本词,则该向量的第i位为1,反之为0。在此基础上构建深度信念网络,它本质上是一个多层神经网络,通过训练它可以以最大的后验概率去生成数据。对于每一层,其输出均可以看作是对输入的重新编码,但要求得到的新编码能依概率还原本来的输入,深度学习模型正是通过这种不断的重新编码发现隐含概念。图1给出了一个深度信念网络的基本结构。

图1. 深度信念网络的基本结构

使用已经标注主题且以向量空间模型表达的网页数据对DBN进行训练,其目标是通过正向(输入层至输出层)的数据通路得出在当前权重下的模型输出,与有监督数据中的网页真实主题信息进行比较,若发现模型的输出有错误,则通过反向传播从输出层至输入层逐层调整权重,最终使模型的输出与真实的主题信息一致。取训练后的模型权重矩阵作为网页爬虫程序在分析网页的主题信息时的模型参数。需要指出的是,在图1所示的DBN网络中,其输出层是一个多路的支持向量机分类器,该SVM的输入是第t-1层的概念表达。如前所述,在DBN 中,每一层均是对前一层输出特征向量的一种重新表达,以尽可能还原原来的输入信息为约束。因此,SVM分类器模型所得到的是一组抽象层次相当高的概念。在模型中通过改变每一层的节点数量对概念的表达长度进行压缩,在本研究中SVM的输入仅为模型输入长度的■。

令网页的向量空间表达的特征向量长度为d,即每个网页pi为一个d维布尔向量,深度信念网络执行基于概率的特征表达转换,如公式(1)所示:

p(x,y,h|?兹)=■(1)

其中?兹={b,c,d,W1,W2},E(·)是一个能量函数,模拟能量从输入层到输出层的传播,E(·)的定义如公式(2)所示:

E(x,y,h|?兹)=-bTx-cTh-dTy-xTW1h-hTW2y(2)

而Z(?兹)是一个边缘分布函数,定义为:

Z(?兹)=■exp(-E(x,y,h|?兹))(3)

在支持向量机作为输出层的情况下,一个网页x被分类为属于某个主题yi的概率为:

p(yi=1|x)=■sig(cj+W■■+(W■■)Tx)(4)

其中sig(·)为sigmoid函数。结合公式(1)至(4),可以得到给定网页x,它的主题向量的预测分布概率表达式:

p(y|x)=■(5)

本文方法的训练时间复杂度较高,但由于训练只需进行一次,把得到的权重矩阵W放在分类器中,测试时根据公式(5)可以直接得到主题向量的预测分布,需要O(mn)的计算量。

3.实验

采用一个互联网上公开的网页数据集“THE 4 UNIVERSITIES DATASET”对本文方法进行测试,该数据集收集了几所大学的计算机系网站上的网页,包含了7个分类,分别是Student、Faculty、Staff、Department、Course、Project和Other。一共包含8282个网页,平均网页大小为26k。实验中仅对网页的文本内容进行分析,先对每个网页生成一个15000维的词向量,然后使用深度信念网络进行概念提取,得到一个102维的特征向量,最后使用多分类的支持向量机进行网页主题的分类。根据经验,深度信念网络设计为15层,每层的节点数量递减10%。训练集和测试集按3:7的比例从整个数据集中随机抽取进行构建。为了增加主题识别结果的稳定性,进行了10次随机的划分,并取其识别正确率的平均值作为最终的结果。表1列出了本文方法对每个类别的识别正确率和CPU运行时间。

表1 算法在评估数据集上的正确率

从表1中可以看出,本文方法对实验数据集的主题有较高的识别率,且对单个网页的运行时间非常短,从而说明该方法对于提高主题爬虫在识别网页主题时的有效性和效率。

4.结论

本文提出了使用深度学习算法构建网页主题爬虫的设计方案,设计了一种多层的深度信念网络,对多个受限波特曼机模型进行堆叠,有效解决了对网页主题的内在概念的特征提取问题,使用支持向量机模型对经过概念转换表达的网页数据进行分类,在测试数据集上表明本文方法有较高的准确率且运行速度较快,从而说明本文方法的有效性。

参考文献:

[1]L.Deng and D.Yu, “Deep learning: Methods and applications,” Found. Trends Signal Process., vol.7, no.4, pp. 197–387, Jun. 2014.

[2]M.Spencer, J.Eickholt, and J.Cheng, “A deep learning network approach to ab initio protein secondary structure prediction,” IEEE/ACM Trans. Comput. Biol. Bioinformatics, vol.?12, no.1, pp. 103–112, Jan. 2015.

[3]J.Fu, T.Mei, K.Yang, H.Lu, and Y.Rui, “Tagging personal photos with transfer deep learning,” in Proceedings of the 24th International Conference on World Wide Web, ser. WWW 15. Republic and Canton of Geneva, Switzerland: International World Wide Web Conferences Steering Committee, 2015, pp. 344–354.

[4]Z.Zuo, G.Wang, B.Shuai, L.Zhao, and Q.Yang, “Exemplar based deep discriminative and shareable feature learning for scene image classification,” Pattern Recogn., vol.48, no.10, pp. 3004–3015, Oct. 2015.

[5]N.Srivastava and R.Salakhutdinov, “Multimodal learning with deep boltzmann machines,” J. Mach. Learn. Res., vol.15, no.1, pp. 2949–2980, Jan. 2014.

[6]A.M. Elkahky, Y.Song, and X.He, “A multi-view deep learning approach for cross domain user modeling in recommendation systems,” in Proceedings of the 24th International Conference on World Wide Web, ser. WWW 15. Republic and Canton of Geneva, Switzerland: International World Wide Web Conferences Steering Committee, 2015, pp. 278–288.

[7]W.Zhang, R.Li, T.Zeng, Q.Sun, S.Kumar, J.Ye, and S.Ji, “Deep model based transfer and multi-task learning for biological image analysis,” in Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, ser. KDD 15. New York, NY, USA: ACM, 2015, pp. 1475–1484.

[8]H.Wang, N.Wang, and D.-Y. Yeung, “Collaborative deep learning for recommender systems,” in Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, ser. KDD 15. New York, NY, USA: ACM, 2015, pp. 1235–1244.

[9]K.Jung, B.-T. Zhang, and P.Mitra, “Deep learning for the web,” in Proceedings of the 24th International Conference on World Wide Web, ser. WWW 15 Companion. Republic and Canton of Geneva, Switzerland: International World Wide Web Conferences Steering Committee, 2015, pp. 1525–1526.

作者简介:

上一篇:市政工程施工管理下一篇:班主任评语的魅力