文档库 最新最全的文档下载
当前位置:文档库 › 垂直搜索引擎

垂直搜索引擎

密级

硕士学位论文

垂直搜索引擎

陈凌云

导师姓名(职称)牛振东(教授)答辩委员会主席 宋瀚涛 申请学科门类工程论文答辩日期2007年7月6日申请学位专业 软件工程

2007年4月20日

研究成果声明

本人郑重声明:所提交的学位论文是我本人在指导教师的指导下进行的研究工作获得的研究成果。尽我所知,文中除特别标注和致谢的地方外,学位论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京理工大学或其它教育机构的学位或证书所使用过的材料。与我一同工作的合作者对此研究工作所做的任何贡献均已在学位论文中作了明确的说明并表示了谢意。

特此申明。

签名:日期:

关于学位论文使用权的说明

本人完全了解北京理工大学有关保管、使用学位论文的规定,其中包括:①学校有权保管、并向有关部门送交学位论文的原件与复印件;②学校可以采用影印、缩印或其它复制手段复制并保存学位论文;③学校可允许学位论文被查阅或借阅;④学校可以学术交流为目的,复制赠送和交换学位论文;⑤学校可以公布学位论文的全部或部分内容(保密学位论文在解密后遵守此规定)。

签名:日期:

导师签名:日期:

摘要

互联网上的信息每天都在不断的增长,面对如此浩瀚的资源,搜索引擎为所有网上冲浪的用户提供了一个入口,毫不夸张地说,所有的用户都可以从搜索引擎出发到达自己想去的网上任何一个地方。因此它也成为除了电子邮件以外最多人使用的网上服务。

但是,随着信息多元化的增长,通用搜索引擎已经不能满足特定用户更深入的查询需求。同时,通用搜索引擎在目前的情况下,要及时更新以得到互联网上较全面的信息是不太可能的。针对这种情况,我们需要一个专业领域的搜索引擎,它具有面向主题的、数据全面深入、更新及时等特点。近几年来,已经出现了一些成型的系统。

本文从理论和实践两个方面探讨了网络信息检索技术以及检索技术在搜索引擎系统中的应用,实现了一个基本的垂直搜索引擎,包括网络爬虫、PageRank、结构化信息提取等。

论文首先阐述了搜索引擎的历史、现状以及不足,指出了垂直搜索引擎的概念和研究的必要性。然后对垂直搜索引擎进行理论性的分析,介绍了系统涉及的关键技术,具体介绍了网络蜘蛛(spider)的设计规则和法则、超链分析以及结构化信息提取相关算法。最后是系统的设计和实现部分,在上述理论分析的基础上提出了系统的设计思想,采用基于链接和基于内容相结合的方法,并介绍了系统的结构和具体实现技术。

关键词:垂直搜索、网络爬虫、PageRank、结构化信息提取

Abstract

Information on the Internet grows explosively every day. Search engine provides all the surfers on it with an entrance,from which they can reach n early every nodes of the Web. Therefore, search engine becomes the most popular Internet service besides email.

With information exploding in all directions , however ,some special kinds of users are not statisfied with general search engine.In the meanwhile ,it is impossible to retrieve enough informantion from internet in time. Therefore people need a vertical search engine which is containing profound and sufficient informaiton and being updated in time. In the past years ,there are some vertical search engine has been put into the market.

After discussing the technology of Web information retrieval both on theory and application, a framework for a vertical search system has been

implemented ,including crawler,pagerank and the extractor of structure information.

First the paper discusses the history and the present situation of the Web information and analyses some problems. Related work of other researchers in China and all over the world is narrated in this part. Then the paper analyzes vertical search engine in theory. The technical term and the key techniques involved in the paper are introduced, including the rule of Web spider, hyperlink analysis and the extractor of structure information. Finally the design and the realization of the system are introduced,including the system structure and methods.

Keywords:vertical search engine、web crawler 、PageRank、the extractor of structure information

目录

摘要 (1)

Abstract..............................................................II 目录.................................................................III 第1章 绪论.. (1)

1.1项目研究背景 (1)

1.2搜索引擎发展现状 (1)

1.2.1搜索引擎分类 (1)

1.2.2 垂直搜索引擎的出现 (3)

1.3论文主要研究内容和结构 (3)

1.4本章小结 (4)

第2章 搜索引擎基本原理 (5)

2.1通用搜索引擎工作原理 (5)

2.2网页抓取技术研究 (6)

2.2.1网络爬虫工作原理 (7)

2.3检索技术 (8)

2.4查询器 (10)

2.5本章小结 (10)

第3章 垂直搜索引擎关键技术 (12)

3.1超链接分析算法 (12)

3.1.1 PageRank (12)

3.1.2 H.I.T算法 (15)

3.2结构化信息抽取 (16)

3.2.1 网页信息结构化抽取方式 (16)

3.3分词技术 (18)

3.3.1 什么是分词 (18)

3.3.2 分词的必要性 (19)

3.3.3 分词算法 (19)

3.4本章小结 (21)

第4章 垂直搜索引擎的实现 (22)

4.1网络爬虫的实现 (22)

4.1.1 概述 (22)

4.1.2 总体框架 (23)

4.1.3 爬行策略 (25)

4.1.4 抓取过程 (26)

4.1.5链接提取 (27)

4.1.6 页面重复分析算法 (28)

4.1.4 robot.txt协议 (29)

4.1.8存取格式问题 (29)

4.2 PageRank的实现 (30)

4.2.1计算方法和原理 (30)

4.2.2系统中的具体实现 (31)

4.3 信息抽取 (34)

4.3 .1总体设计 (35)

4.3.2页面分类 (36)

4.4.3HTMLPARSER和生成DOM树 (36)

4.3 .4抽取规则生成 (38)

4.3.5实验结果 (41)

4.4 分词 (42)

4.4.1分词算法 (42)

4.4.2词典结构 (42)

4.4.3分词程序说明 (43)

4.4.4程序工作流程 (44)

4.5 本章小结 (48)

第5章 结束语 (50)

致谢 (51)

参考文献 (52)

第1章绪论

1.1项目研究背景

随着互联网信息爆炸式的增长,网民对搜索的关注焦点从获取信息的数量转向信息的质量,即如何从大量的互联网信息中找到自己需要的,而不是找到一大堆垃圾信息。现在的通用搜索引擎在搜索结果查全率上作的很好,通用搜索引擎会给用户成千上万的查询结果,但相关的可能只有几个甚至没有,在具体的专业领域内查准率极低。

垂直搜索是针对某一个行业的专业搜索引擎,是搜索引擎的细分和延伸,是对网页库中的某类专门的信息进行一次整合,定向分字段抽取出需要的数据进行处理后再以某种形式返回给用户【1】。它专门用来检索某一个主题或某一类型信息,追求专业性与服务深度是它的特点。垂直搜索引擎不但可保证此领域信息的收录齐全与更新及时, 而且检索深度和分类细化远远优于综合搜索引擎。垂直搜索引擎的检出结果虽可能较综合搜索引擎少,但检出结果重复率低、相关性强、查准率高, 适合于满足较具体的、针对性强的检索要求。精准的服务不但使垂直搜索引擎日渐成为令专业人士满意的网络信息检索工具,而且给大家提供了一个相互交流、共享经验和教训、展望行业发展前景的机会和场合, 因此受到越来越多用户的欢迎。

随着网民个性化要求日益增强,网上形成了许多不同兴趣的群体,他们的知识结构、工作岗位和专业不同,对同一事物、同一概念的内涵和外延的理解也就不完全相同,这一切导致了各个用户查询和利用信息的类型不同、深浅程度不同。为了使不同兴趣的群体快速地获取“所查即所要”的网络信息资源,我们应把注意力放在十分有发展前途的专题性搜索引擎上。专题性搜索引擎搜索结果更精确、相关性更高,它不求包罗各个学科,但求本专业、本学科最全,其服务对象是专业人员与研究人员。

1.2搜索引擎发展现状

1.2.1搜索引擎分类

目前,市场上众多的搜索引擎,有着很多分类方法,这里按照信息搜集方法和服务提供方式的不同,我们把它们分为三大类。

(1)目录式搜索引擎

以人工方式或半自动方式搜集信息,由编辑员查看信息之后,人工形成信息摘要,并将信息置于事先确定的分类框架中【1】。信息大多面向网站,提供目录浏览服务和直接检索服务,该类搜索引擎因为加入了人的智能,所以信息准确、导航质量高,缺点是需要人工介入(维护工作量大)、信息量少、信息更新不及时。这类搜索引擎中最具代表性的莫过于大名鼎鼎的Yahoo雅虎。其他著名的还有Open Directory Project(DMOZ)、LookSmart、About等。国内的搜狐、新浪、网易搜索也都属于这一类。

(2)全文搜索引擎

全文搜索引擎是名副其实的搜索引擎,国外具代表性的有Google、Fast/AllTheWeb、AltaVista、Inktomi、Teoma、WiseNut等,国内著名的有百度(Baidu)。它们都是通过从互联网上提取的各个网站的信息(以网页文字为主)而建立的数据库中,检索与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户,因此他们是真正的搜索引擎。

(3)元搜索引擎

这类搜索引擎没有自己的数据,而是将用户的查询请求同时向多个搜索引擎递交,将返回的结果进行重复排除、重新排序等处理后,作为自己的结果返回给用户【1】。服务方式为面向网页的全文检索。这类搜索引擎的优点是返回结果的信息量大,缺点是不能够充分使用原搜索引擎的功能,用户需要做更多的筛选。

著名的元搜索引擎有InfoSpace、Dogpile、Vivisimo等(元搜索引擎列表),中文元搜索引擎中具代表性的有搜星搜索引擎。在搜索结果排列方面,有的直接按来源引擎排列搜索结果,如Dogpile,有的则按自定的规则将结果重新排列组合,如Vivisimo。

目前,商业的搜索引擎站点正在结合各种搜索引擎的优点。在类型上有逐渐融合的趋势,例如,Yahoo!在保持人工分类的同时,使用Google的机器人搜索引擎,用户查询时,如果选择“网站搜索”便搜索人工分类库,选择网页搜索,便搜索机器人搜索引擎的索引库【2】。一些传统的机器人搜索引擎也增加了人工分类的内容,以提供高精度的导航信息。

1.2.2 垂直搜索引擎的出现

在最近的几年中,通用搜索引擎发展很快,现在技术也非常成熟。垂直搜

索概念虽然很早就提出来,但发展缓慢。中国在这方面相对来说,就更差一步。现在国外已经有一些相对来说比较优秀的垂直搜索引擎了。

(1)Elsevier的Scirus系统

Scirus科学搜索引擎是一种专为搜索高度相关的科学信息而设计的搜索引擎,连续获得2001和2002年The Search Engine Watch Awards授予的“Best Specialty Search Engine”奖,以及2004年Web Marketing Association授予的Best Directory or Search Engine Website奖【4】。Scrius是目前互联网上最全面、综合性

最强的科技文献门户网站之一。它只面向包含有科学内容的网站,如大学和作

者个人主页以及Elsevier自己的数据库。

(2)Berkeley的Focused Projec系统

这个系统有一个印度籍科学家Soumen Chakrabarti ( http://cse.Iitb.ac.in/soumen ) 带头开发研究的,他是从事垂直搜索研究最早之一。该系统通过两个程序来指导爬行器:一个是分类器(Classifier),用来计算下

载文档与预定主题的相关;另一个程序是净化器(Distiller),用来确定那些指向

很多相关资源的页面【4】。该系统的一些相关部分已经开源,这个系统的特色

也就是它的爬虫器,通过这个爬虫可以抓取到尽量相关的主题页面,从而使的

整个系统都是和特定主题相关的。

(3) NEC研究院的Citeseer

Citeseer是一个非常有名的针对科学领域论文的检索系统。Citeseer是NEC

研究院在自动引文索引(Autonomous Citation Indexing ,ACI)机制上建设的一个

学位论文数字图书馆,提供一种通过引文链接文献的方式,目标是从多个方面

促进学术文献的传播与反馈。Citeseer主要用于检索Postscript和PDF文件格式的

学位论文。目前在其数据库中可检索到超过500000篇论文,设计的主体包括:互连网分析和检索、数字图书馆与引文搜索、机器学习、神经网络、语音识别、人脸识别、元搜索引擎、音频/音乐等【4】。

1.3论文主要研究内容和结构

网站数量的急剧增长已经使得人们对于搜索引擎的首要关注点从如何找到

更多的信息转到如何找到准确、用户的信息,查准率己经成为搜索引擎的首要目标。为避免传统搜索引擎大而不准的缺点,本文从垂直搜索引擎入手,针对特定用户群,研究由点到面的信息检索新思路。在垂直搜索中运用提取特征的智能化搜索,使搜索更加有效和准确。

本论文的章节都是围绕着垂直搜索来逐步展开的。内容安排如下:

第一章为绪论,介绍了本论文的研究背景、搜索引擎的相关概念和技术、垂直搜索引擎的基本理论和本文的主要研究内容。

第二章讲解了通用搜索引擎,因为垂直搜索引擎和通用搜索引擎在技术上有很多相同的部分,可以作为单独一个部分降级。

第三章主要讲述了垂直搜索引擎的关键技术,这个章节是本文的核心部分之一,对PageRank,信息抽取,分词详细的分析。。

第四章主要详细讲述了垂直搜索引擎的各个技术,并结合具体实现来描述垂直搜索引擎的关键技术。

最后总结了系统研究和开发的经验,给出了结论,并指出了今后需要进一步研究和改进的地方。

1.4本章小结

本章作为本文的开头部分,主要是对搜索引擎做了一个简单的介绍,包括搜索引擎的历史、分类。重点介绍了一下现有的垂直搜索引擎的现状,主要现有的搜索引擎的系统,包括成型的垂直搜索引擎。

相关文档