搜索引擎: 起源, 发展, 原理与Google

Gopher 发表于 2005/08/05 10:06 一品 百草园 (www.ywpw.com)

加跟贴 发新贴

网络资源的特点(与传统数据库相比):

内容丰富,应有尽有。

更新变化太快,不确定性高。

有待于规范化、标准化。(能规范化吗?)

检索没有定式,没有标准答案。

Sergey Brin and Lawrence Page. The Anatomy of a Large-Scale Hypertextual Web Search Engine. 1998年4月在WWW年度大会上发表,引起全球学术界广泛关注。目前该文被引用309次。

所有搜索引擎的祖先,是1990年由Montreal的M c G i l l University三名学生(Alan Emtage、Peter Deutsch、Bill Wheelan)发明的Archie(Archie FAQ)。Alan Emtage等想到了开发一个可以用文件名查找文件的系统,于是便有了Archie。Archie是第一个自动索引互联网上匿名FTP网站文件的程序,但它还不是真正的搜索引擎。Archie是一个可搜索的FTP文件名列表,用户必须输入精确的文件名搜索,然后Archie会告诉用户哪一个FTP地址可以下载该文件。

由于Archie深受欢迎,受其启发,Nevada System Computing Services于1993年开发了一个Gopher(Gopher FAQ)搜索工具Veronica(Veronica FAQ)。Jughead是后来另一个Gopher搜索工具。

世界上第一个Spider程序,是MIT Matthew Gray的World wide Web Wanderer,用于追踪互联网发展规模。刚开始它只用来统计互联网上的服务器数量,后来则发展为也能够捕获网址(URL) 。

改进:假设所有网页都可能有连向其他网站的链接,那么从一个网站开始,跟踪所有网页上的所有链接,就有可能检索整个互联网。

1993年底,一些基于此原理的搜索引擎开始纷纷涌现,其中最负盛名的三个是:The World Wide Web Worm、NASA的Repository-Based Software Engineering (RBSE) spider。

RBSE是第一个索引Html文件正文的搜索引擎,也是第一个在搜索结果排列中引入关键字串匹配程度概念的引擎。

Excite 的历史可以上溯到1993年2月,6个Stanford University(斯坦福大学)大学生的想法是分析字词关系,以对互联网上的大量信息作更有效的检索。到1993年中,这已是一个完全投资项目 Architext,他们还发布了一个供webmasters在自己网站上使用的搜索软件版本,后来被叫做Excite for Web Servers。(注:Excite后来曾以概念搜索闻名,2002年5月,被Infospace收购的Excite停止自己的搜索引擎,改用元搜索引擎 Dogpile)。

1994年4月,斯坦福大学的两名博士生,美籍华人杨致远和David Filo共同创办了Yahoo)。随着访问量和收录链接数的增长,Yahoo目录开始支持简单的数据库搜索。因为Yahoo!的数据是手工输入的,所以不能真正被归为搜索引擎,事实上只是一个可搜索的目录。Yahoo!中收录的网站,因为都附有简介信息,所以搜索效率明显提高。(注:Yahoo以后陆续使用Altavista、Inktomi、Google提供搜索引擎服务)

Yahoo! 几乎成为20世纪90年代的因特网的代名词。

1995年,一种新的搜索引擎形式出现了——元搜索引擎(Meta Search Engine)。用户只需提交一次搜索请求,由元搜索引擎负责转换处理后提交给多个预先选定的独立搜索引擎,并将从各独立搜索引擎返回的所有查询结果,集中起来处理后再返回给用户。

第一个元搜索引擎,是Washington大学硕士生 Eric Selberg 和 Oren Etzioni 的 Metacrawler。元搜索引擎概念上好听,但搜索效果始终不理想,所以没有哪个元搜索引擎有过强势地位。

DEC 的AltaVista是一个迟到者,1995年12月才登场亮相。但是,大量的创新功能使它迅速到达当时搜索引擎的顶峰。在当时,Altavista最突出的优势是它的速度(据说,设计altavista的目的,据说只是为了展示DEC Alpha芯片的强大运算能力)。而Altavista的另一些新功能,则永远改变了搜索引擎的定义。

AltaVista是第一个支持自然语言搜索的搜索引擎,第一个实现高级搜索语法的搜索引擎(如AND, OR, NOT等)。

1998 年10月之前,Google只是斯坦福大学的一个小项目。95年博士生Larry Page开始学习搜索引擎设计,于1997年9月15日注册了google.com的域名,1999年2月,Google完成了从Alpha版到Beta 版的蜕变。Google公司则把1998年9月27日认作自己的生日。

Google在Pagerank、动态摘要、网页快照、 DailyRefresh、多文档格式支持、地图股票词典寻人等集成搜索、多语言支持、用户界面等功能上的革新,象Altavista一样,再一次永远改变了搜索引擎的定义。在2000年中以前,Google虽然以搜索准确性备受赞誉,但因为数据库不如其它搜索引擎大,缺乏高级搜索语法,所以使用价值不是很高,推广并不快。直到2000年中数据库升级后,又借被Yahoo选作搜索引擎的东风,才一飞冲天。

Google原名Googol,意思是10的100次方,是个巨大的数字。Google的胃口如同它的名字,大得出奇。编入其索引的有30多亿页面,4亿幅图片和8亿个新闻公告。

2000年搜索引擎2000年大会上,按照Google公司总裁Larry Page的演讲,Google正在用3,000台运行Linux系统的个人电脑在搜集Web上的网页,而且以每天30台的速度向这个微机集群里添加电脑,以保持与网络的发展相同步。

Google是第二代搜索引擎中的先驱/代表。

搜索引擎原理

搜索引擎并不真正搜索互联网,它搜索的实际上是预先整理好的网页索引数据库。

至少由三部分组成:

爬行器(机器人、蜘蛛)

索引生成器

查询检索器

1、从互联网上抓取网页

利用能够从互联网上自动收集网页的Spider系统程序,自动访问互联网,并沿着任何网页中的所有URL爬到其它网页,重复这过程,并把爬过的所有网页收集回来。

2、建立索引数据库

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

3、在索引数据库中搜索排序

当用户输入关键词搜索后,由搜索系统程序从网页索引数据库中找到符合该关键词的所有相关网页。因为所有相关网页针对该关键词的相关度早已算好,所以只需按照现成的相关度数值排序,相关度越高,排名越靠前。

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

搜索引擎的Spider一般要定期重新访问所有网页(各搜索引擎的周期不同,可能是几天、几周或几月,也可能对不同重要性的网页有不同的更新频率),更新网页索引数据库,以反映出网页内容的更新情况,增加新的网页信息,去除死链接,并根据网页内容和链接关系的变化重新排序。这样,网页的具体内容和变化情况就会反映到用户查询的结果中。

搜索引擎算法

1. Pagerank算法(google)

基本思想:一个页面被多次引用,即很多页面有指向它的链接,则这个页面很重要;一个页面虽未被多次引用,但被另一个重要页面引用,它可能也很重要;一个页面的重要性被均均匀地分布并传递到它引用的页面。

Page&Brin根据此原理,与关键词检索以及其它基于文本的技术一起来提高查询质量。

2. HITS算法(Hypertext Induced Topic Search)

最早由Kleinberg在1999年提出。它依赖于查询式,认为页面的重要性依赖于正在查询的查询式;每页有两个级别,即Authorities(权威级别) 和 Hubs(中心级别)。

3. SALSA算法、pSALSA算法、PHITS算法等。

大体上与HITS算法相类似,或者说是HITS算法的改进和补充。

搜索引擎按工作方式可分为:

全文搜索引擎(Google、AltaVista、Fast/AllTheWeb等)

目录索引(Yahoo!)

元搜索引擎(Infospace、Dogpile等)

垂直主题搜索引擎(专业搜索引擎)以其高度的目标化和专业化在各类搜索引擎中占据了一系席之地。比如象股票、天气、新闻等类的搜索引擎,具有很高的针对性,用户对查询结果的满意度较高。服务垂直(专业)化是互联网发展的大势所趋,区别于大而全的水平网站,垂直网站更注重在单一领域提供更专业、更精深的服务。

Google 简介:

Larry Page,创始人之一,主管产品的总裁。密西根安娜堡大学的荣誉毕业生,拥有理工科学士学位。他还因其出色的领导才能获得过多项荣誉,以奖励他对工学院的贡献。他曾担任密西根大学 Eta Kappa Nu 荣誉学会的会长。目前他暂时从斯坦福大学计算机研究所博士班休学,其指导教授是 Terry Winograd 博士。Google 就是由 Page 在斯坦福大学发起的研究项目转变而来的。

Sergey Brin,创始人之一,主管技术的总裁。出生于莫斯科,是马里兰大学校本部的荣誉毕业生,拥有数学专业和计算机专业的理学士学位。已取得斯坦福大学计算机专业硕士学位,目前暂时从博士班休学。29 岁的 Sergey 是美国国家科学基金会的奖学金得主。他在斯坦福遇到了 Larry Page 并参与了后来成为Google 的研究项目。他们于 1998 年共同创立了 Google。

加跟贴 发新贴一品 百草园索引首页

Powered by AFpost Thu Dec 27 16:10:44 2018.

本论坛上所有文章只反映送交者的观点。我们保留删除任何被认为不适合本坛的文章的权力。