Algorithm 版 (精华区)
发信人: AA (积极的人生、美好的人生), 信区: Algorithm
标 题: 搜索引擎技术及趋势(zz)
发信站: 哈工大紫丁香 (2002年05月23日19:45:56 星期四), 站内信件
搜索引擎技术及趋势
2001-02-21 10:20:09
Clicks: 120
作者:李晓明、刘建国 随着因特网的迅猛发展、WEB信息的增加,用户要在信息海
洋里查找信息,就象大海捞针一样,搜索引擎技术恰好解决了这一难题(它可以为用户
提供信息检索服务)。目前,搜索引擎技术正成为计算机工业界和学术界争相研究、开
发的对象。 李晓明:1982年毕业于哈尔滨工业大学,1986年毕业于美国史蒂文斯理工学
院计算机系,获博士学位。现任北京大学计算机科学技术系教授,博士生导师,系主任
. 研究方向为计算机并行与分布处理。 刘建国:北京大学计算机系副教授。 搜索引擎
(Search Engine)是随着WEB信息的迅速增加,从1995年开始逐渐发展起来的技术。据
发表在《科学》杂志1999年7月的文章《WEB信息的可访问性》估计,全球目前的网页超
过8亿,有效数据超过9T,并且仍以每4个月翻一番的速度增长。用户要在如此浩瀚的信
息海洋里寻找信息,必然会"大海捞针"无功而返。搜索引擎正是为了解决这个"迷航"问
题而出现的技术。搜索引擎以一定的策略在互联网中搜集、发现信息,对信息进行理解
、提取、组织和处理,并为用户提供检索服务,从而起到信息导航的目的。搜索引擎提
供的导航服务已经成为互联网上非常重要的网络服务,搜索引擎站点也被美誉为"网络门
户"。搜索引擎技术因而成为计算机工业界和学术界争相研究、开发的对象。本文旨在对
搜索引擎的关键技术进行简单的介绍,以起到抛砖引玉的作用。
分类
按照信息搜集方法和服务提供方式的不同,搜索引擎系统可以分为三大类: 1.目
录式搜索引擎:以人工方式或半自动方式搜集信息,由编辑员查看信息之后,人工形成
信息摘要,并将信息置于事先确定的分类框架中。信息大多面向网站,提供目录浏览服
务和直接检索服务。该类搜索引擎因为加入了人的智能,所以信息准确、导航质量高,
缺点是需要人工介入、维护量大、信息量少、信息更新不及时。这类搜索引擎的代表是
:Yahoo、LookSmart、Open Directory、Go Guide等。 2.机器人搜索引擎:由一个称
为蜘蛛(Spider)的机器人程序以某种策略自动地在互联网中搜集和发现信息,由索引
器为搜集到的信息建立索引,由检索器根据用户的查询输入检索索引库,并将查询结果
返回给用户。服务方式是面向网页的全文检索服务。该类搜索引擎的优点是信息量大、
更新及时、毋需人工干预,缺点是返回信息过多,有很多无关信息,用户必须从结果中
进行筛选。这类搜索引擎的代表是:AltaVista、Northern Light、Excite、Infoseek、
Inktomi、FAST、Lycos、Google;国内代表为:"天网"、悠游、OpenFind等。 3.元搜
索引擎:这类搜索引擎没有自己的数据,而是将用户的查询请求同时向多个搜索引擎递
交,将返回的结果进行重复排除、重新排序等处理后,作为自己的结果返回给用户。服
务方式为面向网页的全文检索。这类搜索引擎的优点是返回结果的信息量更大、更全,
缺点是不能够充分使用所使用搜索引擎的功能,用户需要做更多的筛选。这类搜索引擎
的代表是WebCrawler、InfoMarket等。
性能指标
我们可以将WEB信息的搜索看作一个信息检索问题,即在由WEB网页组成的文档库中
检索出与用户查询相关的文档。所以我们可以用衡量传统信息检索系统的性能参数-召回
率(Recall)和精度(Pricision)衡量一个搜索引擎的性能。 召回率是检索出的相关
文档数和文档库中所有的相关文档数的比率,衡量的是检索系统(搜索引擎)的查全率
;精度是检索出的相关文档数与检索出的文档总数的比率,衡量的是检索系统(搜索引
擎)的查准率。对于一个检索系统来讲,召回率和精度不可能两全其美:召回率高时,
精度低,精度高时,召回率低。所以常常用11种召回率下11种精度的平均值(即11点平
均精度)来衡量一个检索系统的精度。对于搜索引擎系统来讲,因为没有一个搜索引擎
系统能够搜集到所有的WEB网页,所以召回率很难计算。目前的搜索引擎系统都非常关心
精度。 影响一个搜索引擎系统的性能有很多因素,最主要的是信息检索模型,包括文档
和查询的表示方法、评价文档和用户查询相关性的匹配策略、查询结果的排序方法和用
户进行相关度反馈的机制。
主要技术
一个搜索引擎由搜索器、索引器、检索器和用户接口等四个部分组成。 1.搜索器
搜索器的功能是在互联网中漫游,发现和搜集信息。它常常是一个计算机程序,日夜不
停地运行。它要尽可能多、尽可能快地搜集各种类型的新信息,同时因为互联网上的信
息更新很快,所以还要定期更新已经搜集过的旧信息,以避免死连接和无效连接。目前
有两种搜集信息的策略: ● 从一个起始URL集合开始,顺着这些URL中的超链(Hyperl
ink),以宽度优先、深度优先或启发式方式循环地在互联网中发现信息。这些起始URL
可以是任意的URL,但常常是一些非常流行、包含很多链接的站点(如Yahoo!)。 ●
将Web空间按照域名、IP地址或国家域名划分,每个搜索器负责一个子空间的穷尽搜索。
搜索器搜集的信息类型多种多样,包括HTML、XML、Newsgroup文章、FTP文件、字处理
文档、多媒体信息。 搜索器的实现常常用分布式、并行计算技术,以提高信息发现和更
新的速度。商业搜索引擎的信息发现可以达到每天几百万网页。 2.索引器 索引器的功
能是理解搜索器所搜索的信息,从中抽取出索引项,用于表示文档以及生成文档库的索
引表。 索引项有客观索引项和内容索引项两种:客观项与文档的语意内容无关,如作者
名、URL、更新时间、编码、长度、链接流行度(Link Popularity)等等;内容索引项
是用来反映文档内容的,如关键词及其权重、短语、单字等等。内容索引项可以分为单
索引项和多索引项(或称短语索引项)两种。单索引项对于英文来讲是英语单词,比较
容易提取,因为单词之间有天然的分隔符(空格);对于中文等连续书写的语言,必须
进行词语的切分。 在搜索引擎中,一般要给单索引项赋与一个权值,以表示该索引项对
文档的区分度,同时用来计算查询结果的相关度。使用的方法一般有统计法、信息论法
和概率法。短语索引项的提取方法有统计法、概率法和语言学法。 索引表一般使用某种
形式的倒排表(Inversion List),即由索引项查找相应的文档。索引表也可能要记录
索引项在文档中出现的位置,以便检索器计算索引项之间的相邻或接近关系(proximit
y)。 索引器可以使用集中式索引算法或分布式索引算法。当数据量很大时,必须实现
即时索引(Instant Indexing),否则不能够跟上信息量急剧增加的速度。索引算法对
索引器的性能(如大规模峰值查询时的响应速度)有很大的影响。一个搜索引擎的有效
性在很大程度上取决于索引的质量。 3.检索器 检索器的功能是根据用户的查询在索引
库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并实
现某种用户相关性反馈机制。 检索器常用的信息检索模型有集合理论模型、代数模型、
概率模型和混合模型四种。 4.用户接口 用户接口的作用是输入用户查询、显示查询结
果、提供用户相关性反馈机制。主要的目的是方便用户使用搜索引擎,高效率、多方式
地从搜索引擎中得到有效、及时的信息。用户接口的设计和实现使用人机交互的理论和
方法,以充分适应人类的思维习惯。 用户输入接口可以分为简单接口和复杂接口两
种。 简单接口只提供用户输入查询串的文本框;复杂接口可以让用户对查询进行限制,
如逻辑运算(与、或、非;+、-)、相近关系(相邻、NEAR)、域名范围(如.edu、.c
om)、出现位置(如标题、内容)、信息时间、长度等等。目前一些公司和机构正在考
虑制定查询选项的标准。
未来动向
搜索引擎已成为一个新的研究、开发领域。因为它要用到信息检索、人工智能、计
算机网络、分布式处理、数据库、数据挖掘、数字图书馆、自然语言处理等多领域的理
论和技术,所以具有综合性和挑战性。又由于搜索引擎有大量的用户,有很好的经济价
值,所以引起了世界各国计算机科学界和信息产业界的高度关注,目前的研究、开发十
分活跃,并出现了很多值得注意的动向。 1.十分注意提高信息查询结果的精度,提高检
索的有效性 用户在搜索引擎上进行信息查询时,并不十分关注返回结果的多少,而是看
结果是否和自己的需求吻合。对于一个查询,传统的搜索引擎动辄返回几十万、几百万
篇文档,用户不得不在结果中筛选。解决查询结果过多的现象目前出现了几种方法:一
是通过各种方法获得用户没有在查询语句中表达出来的真正用途,包括使用智能代理跟
踪用户检索行为,分析用户模型;使用相关度反馈机制,使用户告诉搜索引擎哪些文档
和自己的需求相关(及其相关的程度),哪些不相关,通过多次交互逐步求精。二是用
正文分类(Text Categorization)技术将结果分类,使用可视化技术显示分类结构,用
户可以只浏览自己感兴趣的类别。三是进行站点类聚或内容类聚,减少信息的总量。 2
.基于智能代理的信息过滤和个性化服务 信息智能代理是另外一种利用互联网信息的机
制。它使用自动获得的领域模型(如Web知识、信息处理、与用户兴趣相关的信息资源、
领域组织结构)、用户模型(如用户背景、兴趣、行为、风格)知识进行信息搜集、索
引、过滤(包括兴趣过滤和不良信息过滤),并自动地将用户感兴趣的、对用户有用的
信息提交给用户。智能代理具有不断学习、适应信息和用户兴趣动态变化的能力,从而
提供个性化的服务。智能代理可以在用户端进行,也可以在服务器端运行。 3.采用分布
式体系结构提高系统结构,两种方法各有千秋。但当系统规模到达一定程度(如网页数达到亿级)时,必然
要采用某种分布式方法,以提高系统性能。搜索引擎的各个组成部分,除了用户接口之
外,都可以进行分布:搜索器可以在多台机器上相互合作、相互分工进行信息发现,以
提高信息发现和更新速度;索引器可以将索引分布在不同的机器上,以减小索引对机器
的要求;检索器可以在不同的机器上进行文档的并行检索,以提高检索的速度和性能。
4.重视交叉语言检索的研究和开发 交叉语言信息检索是指用户用母语提交查询,搜索
引擎在多种语言的数据库中进行信息检索,返回能够回答用户问题的所有语言的文档。
如果再加上机器翻译,返回结果可以用母语显示。该技术目前还处于初步研究阶段,主
要的困难在于语言之间在表达方式和语义对应上的不确定性。但对于经济全球化、互联
网跨越国界的今天,无疑具有很重要的意义。
学术研究
目前搜索引擎领域的商业开发非常活跃,各大搜索引擎公司都在投巨资研制搜索引
擎系统,同时也不断地涌现出新的具有鲜明特色的搜索引擎产品,搜索引擎已经成为信
息领域的产业之一。在这种情况下,对搜索引擎技术相关领域的学术研究得到了大学和
科研机构的重视。如Stanford大学在其数字图书馆项目中开发了Google搜索引擎,在We
b信息的高效搜索、文档的相关度评价、大规模索引等方面作了深入的研究,取得了很好
的成果。NEC美国研究所的Steve Lawrence和C. Lee Giles 1998年和1999年连续两年在
《自然》和《科学》杂志上撰文对搜索引擎技术的研究进行评述。著名的信息检索会议
TREC也从1998年开始增加了Web Track课题,以考察Web文档与其它类型文档在检索性质
上的不同之处,并将测试在大规模的Web库(如100G字节)上进行信息检索的算法性能。
由美国Infornotics公司主办的搜索引擎国际会议从1996年开始,每年举行一次,对搜索
引擎技术进行总结、讨论和展望,参加者有著名的搜索引擎公司、大学和研究机构的学
者,对搜索引擎技术起到了很好的推动作用。另外象IEEE主办的国际万维网会议、人机
交互会议已有越来越多关于搜索引擎技术研究的文章发表。 国内先后有北京大学、清华
大学、国家智能研究中心等高校和研究单位对搜索引擎技术开展研究,并开发出了几个
较好的系统。如由北京大学计算机系网络研究室开发的"天网"中英文搜索引擎(http://
pccms.pku.edu.cn:8000/gbindex.htm),在系统规模及系统性能方面达到了国外中型搜索
引擎系统的技术水平,为国内用户提供了很好的互联网搜索服务,受到了用户的好评。
--
人世间的事谁也无法掌握
该执著的 永不怨悔
改舍去的 不在牵挂
改珍惜的 好好把握
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: NLPCenter.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.942毫秒