当前位置:文档之家› 搜索引擎发展综述

搜索引擎发展综述

搜索引擎发展综述李锐lirui@(中科院计算技术研究所北京100080)摘要:本文简述了搜索引擎的起源和发展,介绍了国内外的研究现状,对其分类、性能评测、关键技术等方面做了一定的讨论,在此基础上对其发展趋势作了大胆的预测。

关键词:搜索引擎;Web挖掘;信息检索Internet自诞生以来不断成长,其内容不断丰富,整个网络逐渐堆积成一个前所未有的超大型信息库。

Internet作为一个信息平台在人们的日常生活和工作中发挥着越来越重要的作用,人们越来越多地通过Internet获取信息。

在互联网发展初期,网站相对较少,网页数量亦较少,因而信息查找比较容易。

然而伴随互联网爆炸性的发展,普通网络用户想找到所需的资料简直如同大海捞针,以至于迷失在信息的海洋中不知所措,出现了我们所说的" 信息丰富,知识贫乏"的奇怪现象。

搜索引擎正是为了解决这个"迷航"问题而出现的技术。

搜索引擎(Search Engine简称SE)是一个信息处理系统,它以一定的策略在互联网中搜集、发现信息,对信息进行理解、提取、组织和处理,并为用户提供检索服务,从而起到信息导航的目的,一般包括信息搜集、信息整理和用户查询三部分。

从用户的角度来看,它就是一个帮助人们进行信息检索的工具。

1. 发展回眸现代意义上的搜索引擎的祖先,是1990年由美国蒙特利尔大学的学生Alan Emtage等人发明的Archie。

Archie是第一个自动索引互联网上匿名FTP网站文件的程序,但它还不是真正的搜索引擎。

Archie是一个可搜索的FTP文件名列表,用户必须输入精确的文件名搜索,然后Archie会告诉用户哪一个FTP地址可以下载该文件。

由于专门用于检索信息的Robot程序像蜘蛛(spider)一样在网络间爬来爬去,因此,搜索引擎的Robot程序被称为spider(Spider FAQ)程序。

世界上第一个Spider程序,是MIT Matthew Gray的World wide Web Wanderer,用于追踪互联网发展规模。

刚开始它只用来统计互联网上的服务器数量,后来则发展为也能够捕获网址(URL)。

真正意义上的搜索引擎出现于1994年7月。

当时Michael Mauldin将John Leavitt的蜘蛛程序接入到其索引程序中,创建了大家现在熟知的Lycos。

同年4月,Stanford大学的两名博士生,David Filo和美籍华人杨致远(Jerry Y ang)共同创办了超级目录索引Y ahoo,并成功地使搜索引擎的概念深入人心,Y ahoo也被称为第一代搜索引擎。

从此搜索引擎的发展也进入了黄金时代。

1998年9月,同样是Stanford大学两位博士生Larry Page和Sergey Brin在风险投资公司的资助下,成功开发了新一代搜索引擎——Google。

它具有比Y ahoo先前使用的技术更快、更准确搜索到所需信息的特点,被视为第二代搜索引擎的代表。

现在Internet 上已有数千个能提供检索服务的站点,这些站点的搜索引擎在收录的范围、内容、检索方法上都各有不同,采用的技术也各具特色。

比较著名的有Google,Y ahoo,AltaVista,Dogpile,百度等。

目前,搜索引擎的研究、开发十分活跃,各大搜索引擎公司都在投巨资研制搜索引擎系统,同时也不断地涌现出新的具有鲜明特色的搜索引擎产品,搜索引擎已经成为信息领域的产业之一。

它要用到了信息检索、人工智能、数据库、数据挖掘、自然语言理解等领域的理论和技术,具有综合性和挑战性。

又由于搜索引擎有大量的用户,由此衍射出许多商机,具有很好的经济价值。

根据iResearch艾瑞市场咨询《2003年中国搜索引擎研究报告》的研究数据显示,中国的搜索引擎市场2003年达到了5.2亿元人民币,比2002年的2.3亿一年增长了127%,显示了搜索引擎市场的强劲增长;雅虎表示未来5年全球搜索市场将由今年的30亿美元增长至110亿美元。

搜索引擎作为连接互联网的一座桥梁,越来越受到人们的重视,亦引起了世界各国计算机科学界、信息产业界和商界的高度关注,已投入了不少的人力、物力,也取得了不俗的成绩。

2. 分类搜索引擎依其所用技术原理,主要可以分为以下三类:2.1. 目录式搜索引擎:以人工方式或半自动方式搜集信息,由编辑员查看信息之后,人工形成信息摘要,并将信息置于事先确定的分类框架中。

信息大多面向网站,提供目录浏览服务和直接检索服务。

该类搜索引擎因为加入了人的智能,所以信息准确、导航质量高,缺点是需要人工介入、维护量大、信息量少、信息更新不及时。

典型代表是:Y ahoo(现已采用Robot技术)、LookSmart、Open Directory等。

2.2. 基于Robot搜索引擎:基于Robot 的搜索引擎多提供对全文的检索,有时也叫做全文搜索引擎(Full Text)。

通过Robot程序从互联网上搜集信息而建立索引数据库,检索与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户。

这类搜索引擎的代表是:Google、Fast/AllTheWeb、AltaVista、Inktomi、Teoma、WiseNut等;国内代表为:百度(Baidu),"天网"、OpenFind等。

2.3. 元搜索引擎:这类搜索引擎没有自己的数据库,而是将用户的查询请求同时向多个搜索引擎递交,将返回的结果进行去重、排序等处理后,作为自己的结果返回给用户。

服务方式为面向网页的全文检索。

这类搜索引擎的优点是返回结果的信息量更大、更全,缺点是不能够充分使用所使用搜索引擎的功能,用户需要做更多的筛选。

著名的元搜索引擎有InfoSpace、Dogpile、Vivisimo等(元搜索引擎列表),中文元搜索引擎中具代表性的有搜星搜索引擎。

除上述三大类引擎外,还有以下几种非主流形式:集合式搜索引擎、门户搜索引擎:如AOL Search、MSN Search等、免费链接列表(Free For All Links,简称FFA)等。

3. 性能指标搜索引擎是一种互联网信息检索工具,因此对其性能评价可以参考传统型文献检索工具的质量评价标准,结合搜索引擎在信息组织加工及检索服务提供方式等内容进行;又因为它直接跟踪网络信息并面向网络信息用户,对它的评价因该立足于用户的利益立场。

通俗地讲,能令大多数网络用户满意的搜索引擎就是一个好的搜索引擎。

通常情况下,我们可以从以下几个方面来衡量一个搜索引擎的性能:3.1. 召回率(Recall):又称查全率,指搜索引擎提供的检索结果中相关信息文档数与网络信息中存在的相关信息文档数之比, 因检索结果是在对检索需求与搜索引擎的索引数据库中的文档进行匹配后的文档集合, 这一指标也是搜索引擎对网络信息覆盖率的真实反映。

3.2. 精度(Precision):又称查准率,是搜索引擎提供的检索结果与用户信息需求的匹配程度, 也是检索结果中有效信息的文档数与搜索引擎提供的全部文档数之比。

3.3. 检索速度:又称响应时间,检索速度一般而言取决于两个因素, 即与带宽有关的网络速度及搜索引擎本身的速度, 只有在二者均获得可靠的技术支持的情况下, 才能保证理想的检索速度。

对于一个检索系统来讲,召回率和精度很难做到两全其美:召回率高时,精度低;精度高时,召回率低。

对于搜索引擎系统来讲,因为没有一个搜索引擎系统能够覆盖所有的网络资源,所以召回率很难计算。

目前的搜索引擎系统都非常关心精度。

对于上面的衡量方法,有其不足之处,还有其他方面的因素没能考虑,在文献[7]中以用户为导向运用层次分析法建立一个分析模型,文献[8]中提出了一些较好的衡量方法。

影响一个搜索引擎系统的性能有很多因素,最主要的是信息检索模型,包括文档和查询的表示方法、评价文档和用户查询相关性的匹配策略、查询结果的排序方法和用户进行相关度反馈的机制。

另外,我们可以从对搜索引擎的功能要求角度对它进行评价。

在笔者看来,一个理想的搜索引擎系统应该具备以下功能要求:①涵盖较多的互联网资源,资源更新周期不是很长,对于某些特殊信息可以实时更新,这些是查全率的保障之一。

②具备尽可能多的可选择功能,如资源类型(网站、网页、新闻、软件、FTP、MP3、Flash、图像、影视等)选择、等待时间控制、返回结果数量控制、结果时段选择、过滤功能选择、结果显示方式选择等。

③强大的检索请求处理功能(如支持逻辑匹配检索、短语检索、自然语言检索等)。

④详尽全面的检索结果信息描述(如网页名称、URL、文摘、结果与用户检索需求的相关度等)。

⑤支持多种语言检索,比如提供中英文搜索等。

⑥可对结果进行自动分类,如按照域名、国别、资源类型、区域等进行分类整理。

⑦可以针对不同用户提供个性化服务。

4. 原理和关键技术当今搜索引擎的主流是基于Robot的网页搜索系统,本文主要叙述这方面的技术。

搜索引擎的原理,可以看作三步:从互联网上抓取网页→ 建立索引数据库→ 在索引数据库中搜索排序。

①从互联网上发现、搜集有用网页信息利用高性能的Spider程序去自动地在互联网中搜索信息。

一个典型的"网洛蜘蛛"工作的方式,是查看一个页面,并从中找到相关信息,然后它再从该页面的所有URL中出发,爬行到相关页面,重复这过程,直到把爬过的所有网页都收集回来。

搜索引擎的Spider一般要定期重新访问所有网页,更新网页索引数据库,以反映出网页文字的更新情况。

②将收集到的信息进行分类整理,建立索引数据库由分析索引系统程序对收集回来的网页进行分析,提取相关网页信息(包括网页所在URL、编码类型、页面内容包含的所有关键词、关键词位置、生成时间、大小、与其它网页的链接关系等),根据一定的相关度算法进行大量复杂计算,得到每一个网页针对页面文字中及超链中每一个关键词的相关度(或重要性),然后用这些相关信息建立网页索引数据库。

③用户检索过程当用户输入关键词搜索后,由搜索系统程序从网页索引数据库中找到符合该关键词的所有相关网页。

因为所有相关网页针对该关键词的相关度早已算好,所以只需按照现成的相关度数值排序,相关度越高,排名越靠前。

最后,由页面生成系统将搜索结果的链接地址和页面内容摘要等内容组织起来返回给用户。

上面简述了搜索引擎的工作原理,从这里不难看出搜索引擎的基本构成:搜索器、索引器、检索器和用户接口等。

下面介绍几种与之相关的关键技术:① Robot技术,网络机器人Robot(通常也称为网络蜘蛛Spider、爬行者Crawler等)可以用在针对互联网的数据统计、数据搜索、链接维护等方面。

搜索引擎中的网络机器人主要完成两个功能,即分析、获取互联网的链接和读取各链接所对应的网页内容。

相关主题