搜索引擎发展史揭密,SEO优化必学
搜索引擎发展史揭密,seo优化必学

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

 搜索引擎技术伴随着www的发展是引人注目的。搜索引擎大约经历了三代的更新发展:

 第一代搜索引擎出现于1994年。这类搜索引擎一般都索引少于1,000,000个网页,极少重新搜集网页并去刷新索引。而且其检索速度非常慢,一般都要等待10秒甚至更长的时间。在实现技术上也基本沿用较为成熟的ir(information retrieval)、网络、数据库等技术,相当于利用一些已有技术实现的一个www上的应用。在1994年3月到4月,网络爬虫world wide web worm(wwww)平均每天承受大约1500次查询。

 大约在1996年出现的第二代搜索引擎系统大多采用分布式方案(多个微型计算机协同工作)来提高数据规模、响应速度和用户数量,它们一般都保持一个大约50,000,000网页的索引数据库,每天能够响应10,000,000次用户检索请求。1997年11月,当时最先进的几个搜索引擎号称能建立从2,000,000到100,000,000的网页索引。altavista搜索引擎声称他们每天大概要承受20,000,000次查询。

 自1998年到现在,出现了一个搜索引擎空前繁荣的时期,我们统称这一时期的搜索引擎为第三代搜索引擎。第三代搜索引擎的发展有如下几个特点:

     (1)索引数据库的规模继续增大,一般的商业搜索引擎都保持在几千万甚至 上亿个网页。

     (2)除了一般意义上的搜索以外,开始出现主题搜索和地域搜索。很多小型的垂直门户站点开始使用该技术。

     (3)由于搜索返回数据量过大,检索结果相关度评价成为研究的焦点。相关的研究又可以分为两类:一类是对超文本链的分析,在这方面stanford大学的google系统和ibm的clever系统作出了很大的贡献;另一类是用户信息的反馈,direct hit系统采用的就是这种方法。

     (4)开始使用自动分类技术。northern light和inktomi的directory,engine都在一定程度上使用了该技术。

 

    2000年搜索引擎2000年大会上,按照google公司总裁larry page的演讲,google正在用3,000台运行linux系统的个人电脑在搜集web上的网页,而且以每天30台的速度向这个微机集群里添加电脑,以保持与网络的发展相同步。每台微机运行多个爬虫程序搜集网页的峰值速度是每秒100个网页,平均速度是每秒48.5个网页,一天可以搜集超过4,000,000网页。

 

 现在有许多网站推出号称第四代的搜索引擎,但是因为没有明显的标志,“第四代”的说法还仅仅是一个说法,并没有成为一个明显的趋势。随着时间的推移,相信会有一个比较统一的标准形成。

 

1、几个著名的搜索引擎

(1)altavista

    altavista创建于1995年12月,其网络域名是http:/www.altavista.conm。在不考虑网络传输速度的情况下,altavista每秒可以检索200gb的数据量,作为一种搜索的量化指标,这个速度远远快于你在硬盘上找一个文件。[2]

 

(2)yahoo

    yahoo最开始是比较常用的查询工具,后来发展成综合性的网站,涵盖搜索、新闻、邮件等。其域名是http://www.yahoo.com。yahoo的真正实力来自yahoo的分类层次,yahoo的定位非常准确,他们的主要服务对象是查询者而不是其它网站的网管。作为一个其它网站网址的收录者,它正确地处理了查询者、网络管理员之间的相互关系。对于提供网络目录服务站点来说,数据库中储存的网址信息越丰富、越准确,越能为查询者提供高质量的服务,而高质量的服务是维持高访问率的关键。使用人工进行站点分类是一项极大的工程。一般站点只有两层到三层目录来归纳与日俱增的上百万个信息点,而yahoo通常都有十几层,它所提供的详细分类索引能帮助用户迅速找到相关站点。[2]

 

(3)google

    google创建于1998年,网络域名是http://www.google.com。6年来,google公司已经由一个纯粹的搜索引擎网站发展为一家非凡的门户网站——拥有广告网络、对比购物服务、电子邮件和web出版产品,是全球影响力最大的搜索引擎之一。google支持100多种语言,界面简洁友好。它以其复杂而全自动的搜索方法排除了任何人为因素对搜索结果的影响。虽然google也在搜索结果旁刊登相关广告,但没人能花钱买到更高的网页级别,从而保证了网页排名的客观公正。google可以方便、诚实、客观地在网上找到有价值的资料。据www.guangzhoujob.com站长了解google目录中收录了10亿多个网址,这在同类搜索引擎中是首屈一指的。这些网站的内容涉猎广泛,无所不有。

 

(4)citeseer

    citeseer引文搜索引擎由nec公司在美国普林斯顿的nec研究所(nec research institute,inc)研制开发,网络域名为http://citeseer.ist.psu.edu。1997年起利用自主的研究成果“自动引文标引系统”在网上建立样品数字图书馆,并起名为“citeseer-scientific literature digital library”,公开在互联网上提供服务。

citeseer采用机器自动识别技术搜集互联网上postscript和pdf文件格式的各种类型的学术论文,然后依照引文索引方法标引和连接每一篇文献。至今citeseer标引的网页数超过1000万,存储的文献全文达60万篇;内容主要涉及计算机科学领域,主题包括智能代理、人工智能、硬件、软件工程、数据压缩、人机交互、操作系统、数据库、信息检索、网络技术、机器学习等。

读者访问citeseer既可像使用搜索引擎那样检索浏览相关学术文献,也可利用其特有的引文检索功能查看文献的引用与被引用信息,同时还能获得相关学科最新文献与出版物引用排行。系统实现全天24小时实时更新,包括下载ps或pdf格式的全文。

 

 除以上所介绍的搜索引擎外,还有如msn、sohu、infoseek、northern、light、lycos、excite等著名的搜索引擎,这里就不一一介绍。

 

2、搜索引擎的分类

 (1)通用搜索引擎

 对所有网页和文件进行收录整理并提供搜索服务,又可以分为两类,一类以google为代表,几乎完全是由程序自动控制整个流程,人为的干预很少,效率比较高,比较公平,但缺点是由于程序的信息处理能力的局限性,对于网页内容的分类不够准确,有可能给用户提供实际并不需要的页面链接;另一种以yahoo为代表,依靠人工建立庞大细致的分类体系,方便用户找到自己最需要的页面,这样可以最大限度保证分类的准确性,但是互联网上的信息量正以前所未有的速度增长,人工分类的效率相比之下就过于低下了,不能满足“查全”的要求。

 

(2)专业搜索引擎

 针对某一特定领域或特定文件类型进行收录整理并提供搜索服务。例如citeseer,就是典型的专业搜索引擎。其他的如中国北大天网ftp搜索引擎,专门针对ftp目录下的文件进行搜索;最近随着博客(网络日志)兴起而兴起的博客搜索引擎,由于博客的分类机制比较稳定,而且博客的世界里常常关心的是最新的最有意思的一些新闻,因此未来很可能有大的发展;音乐搜索引擎、电影搜索引擎,针对特定的音频、视频文件格式提供搜索;等等。

 

(3)元搜索引擎

 元搜索引擎是基于通用web搜索引擎gse框架建立的一种搜索机制。gse框架结构主要由用户、web服务器、web信息获取与处理接口、任务调度器、连接管理器web及搜索引擎组成。用户只需递交一次检索请求,由元搜索引擎负责转换处理后提交给多个预先选定的独立搜索引擎,并将所有查询结果集中起来以整体统一的格式呈现到用户面前。通用web搜索引擎框架将因特网上众多的现有的web搜索引擎看成一个整体,为用户提供一个透明的分布式异构web搜索引擎环境,该种方式的引擎可以看作元搜索引擎,它为用户提供一个统一的、集成的查询请求,元搜索引擎根据知识库中的信息转换为各个web搜索引擎所能识别的格式,然后发给各个搜索引擎,由这些搜索引擎完成实际的信息检索。元检索引擎在搜索到各个web搜索引擎系统返回的结果后,经过比较分析,然后以一定的格式返回用户。

 

3、搜索引擎目前主要存在的问题

     现在的搜索引擎可谓“百花齐放”,google、yahoo、百度、天网等搜索引擎激烈竞争,连之前很少涉及搜索引擎领域的微软也按捺不住,推出了msn搜索引擎。但是仍然有许多问题:

     (1)网络信息量太大,而且处于不断的更新当中,难以进行全面的收录,而且收录得越多,全面的更新越困难。

     (2)对于搜索引擎使用者的真正需求,程序并不能准确判断。同样的关键词,不同的人可能需要查找的内容不一样。要在返回查找结果的过程中,将所有结果按重要程度从高到低的顺序组织起来呈现给用户,排序算法是十分关键的。目前许多搜索引擎都使用基于关键字查询的传统的信息检索算法和技术,返回的页面数量仍然是成千上万。然而“据估计近85%的用户只浏览搜索引擎返回的第一页结果”因此,如何将用户最感兴趣、最重要的页面放在搜索结果的前面就成为影响搜索质量的一个重要因素。

     (3)现在越来越多的人为了能够在搜索引擎返回的结果中排位靠前,特别针对搜索引擎的算法进行一定的优化,如在网页中大量添加热门搜索词汇等,影响搜索引擎的正确判断,使得用户得到许多毫无用处的结果。

     (4)分词技术不完善,对中文的检索结果很多不能与用户期望的很好匹配。

 

4、几种排序算法简介

(1)hits算法

 它是由康奈尔大学(cornell university)的jon kleinberg博士于1998年首先提出的,hits的英文全称为hypertext-induced topic search。目前,它为ibm公司阿尔马登研究中心(ibm almaden research center)的名为“clever”的研究项目中的一部分。kleinberg认为搜索开始于用户的检索提问,每个页面的重要性也依赖于用户的检索提问,他将用户检索提问分为三种:特指主题检索提问(specific queries,也称窄主题检索提问)、泛指主题检索提问(broad-topic queries,也称宽主题检索提问)及相似网页检索提问(similar-page queries)。而hits算法则专注于改善泛指主题检索的结果。kleinberg将网页(或网站)分为两类,即hubs和authorities。应该注意的是,每个页面也有两个级别(ranking),即hubs(中心级别)和authorities(权威级别),authorities为具有较高价值的网页,依赖于指向它的页面,而hubs为指向较多authorities的网页,依赖于它所指向的页面。hits算法的目标就是通过一定的计算(迭代计算)方法以得到针对某个检索提问的最具价值的网页,即排名最高的authority。

 

(2)pagerank算法

 虽然web页面的重要性取决于人的兴趣、知识、意见等主观判断,但仍有一些与页面重要性相关的客观准则可供利用。pagerank算法的基本思想是:如果一个页面被许多其他页面引用,则这个页面很可能是重要页面;一个页面尽管没有被多次引用,但被一个重要页面引用,那么这个页面很可能也是重要页面;一个页面的重要性被均分并传递到它所引用的页面。页面的重要性用pagerank度量。最后搜索引擎按照页面的pagerank值对搜索结果进行排序,将pagerank值高的重要页面放在前面。

 

5、中文分词、相似度判别

(1)中文分词

 众所周知,英文是以词为单位的,词和词之间是靠空格隔开,而中文是以字为单位,句子中所有的字连起来才能描述一个意思。例如,英文句子i am a student,用中文则为:“我是一个学生”。计算机可以很简单通过空格知道student是一个单词,但是不能很容易明白「学」、「生」两个字合起来才表示一个词。把中文的汉字序列切分成有意义的词,就是中文分词,有些人也称为切词。我是一个学生,分词的结果是:我/是/一个/学生。中文分词的准确与否,常常直接影响到对搜索结果的相关度排序。

 中文分词技术属于自然语言处理技术范畴,对于一句话,人可以通过自己的知识来明白哪些是词,哪些不是词,但如何让计算机也能理解?其处理过程就是分词算法。

 现有的分词算法可分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。

 基于字符串匹配的分词方法又叫做机械分词方法,它是按照一定的策略将待分析的汉字串与一个「充分大的」机器词典中的词条进行配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。按照扫描方向的不同,串匹配分词方法可以分为正向匹配和逆向匹配;按照不同长度优先匹配的情况,可以分为最大(最长)匹配和最小(最短)匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。常用的几种机械分词方法有正向最大匹配法(由左到右的方向)、逆向最大匹配法(由右到左的方向)、最少切分(使每一句中切出的词数最小)。还可以将上述各种方法相互组合,例如,可以将正向最大匹配方法和逆向最大匹配方法结合起来构成双向匹配法。由于汉语单字成词的特点,正向最小匹配和逆向最小匹配一般很少使用。一般说来,逆向匹配的切分精度略高于正向匹配,遇到的歧义现象也较少。统计结果表明,单纯使用正向最大匹配的错误率为1/169,单纯使用逆向最大匹配的错误率为1/245。但这种精度还远远不能满足实际的需要。实际使用的分词系统,都是把机械分词作为一种初分手段,还需通过利用各种其它的语言信息来进一步提高切分的准确率。

 一种方法是改进扫描方式,称为特征扫描或标志切分,优先在待分析字符串中识别和切分出一些带有明显特征的词,以这些词作为断点,可将原字符串分为较小的串再来进机械分词,从而减少匹配的错误率。另一种方法是将分词和词类标注结合起来,利用丰富的词类信息对分词决策提供帮助,并且在标注过程中又反过来对分词结果进行检验、调整,从而极大地提高切分的准确率。

 对于机械分词方法,可以建立一个一般的模型。

 基于理解的分词方法通过让计算机模拟人对句子的理解,达到识别词的效果。其基本思想就是在分词的同时进行句法、语义分析,利用句法信息和语义信息来处理歧义现象。它通常包括三个部分:分词子系统、句法语义子系统、总控部分。在总控部分的协调下,分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。这种分词方法需要使用大量的语言知识和信息。由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此目前基于理解的分词系统还处在试验阶段。

 基于统计的分词方法认为从形式上看,词是稳定的字的组合,因此在上下文中,相邻的字同时出现的次数越多,就越有可能构成一个词。因此字与字相邻共现的频率或概率能够较好的反映成词的可信度。可以对语料中相邻共现的各个字的组合的频度进行统计,计算它们的互现信息。定义两个字的互现信息,计算两个汉字x、y的相邻共现概率。互现信息体现了汉字之间结合关系的紧密程度。当紧密程度高于某一个阈值时,便可认为此字组可能构成了一个词。这种方法只需对语料中的字组频度进行统计,不需要切分词典,因而又叫做无词典分词法或统计取词方法。但这种方法也有一定的局限性,会经常抽出一些共现频度高、但并不是词的常用字组,例如「这一」、「之一」、「有的」、「我的」、「许多的」等,并且对常用词的识别精度差,时空开销大。实际应用的统计分词系统都要使用一部基本的分词词典(常用词词典)进行串匹配分词,同时使用统计方法识别一些新的词,即将串频统计和串匹配结合起来,既发挥匹配分词切分速度快、效率高的特点,又利用了无词典分词结合上下文识别生词、自动消除歧义的优点。
到底哪种分词算法的准确度更高,目前并无定论。对于任何一个成熟的分词系统来说,不可能单独依靠某一种算法来实现,都需要综合不同的算法。笔者了解,海量科技的分词算法就采用「复方分词法」,所谓复方,相当于用中药中的复方概念,即用不同的药才综合起来去医治疾病,同样,对于中文词的识别,需要多种算法来处理不同的问题。

 分词中的难题。

 有了成熟的分词算法,是否就能容易的解决中文分词的问题呢?事实远非如此。中文是一种十分复杂的语言,让计算机理解中文语言更是困难。在中文分词过程中,有两大难题一直没有完全突破。

 

 歧义识别。

 歧义是指同样的一句话,可能有两种或者更多的切分方法。例如:表面的,因为「表面」和「面的」都是词,那么这个短语就可以分成「表面的」和「表面的」。这种称为交叉歧义。像这种交叉歧义十分常见,前面举的「和服」的例子,其实就是因为交叉歧义引起的错误。「化妆和服装」可以分成「化妆和服装」或者「化妆和服装」。由于没有人的知识去理解,计算机很难知道到底哪个方案正确。

 交叉歧义相对组合歧义来说是还算比较容易处理,组合歧义就必需根据整个句子来判断了。例如,在句子「这个门把手坏了」中,「把手」是个词,但在句子「请把手拿开」中,「把手」就不是一个词;在句子「将军任命了一名中将」中,「中将」是个词,但在句子「产量三年中将增长两倍」中,「中将」就不再是词。这些词计算机又如何去识别?

 如果交叉歧义和组合歧义计算机都能解决的话,在歧义中还有一个难题,是真歧义。真歧义意思是给出一句话,由人去判断也不知道哪个应该是词,哪个应该不是词。例如:「乒乓球拍卖完了」,可以切分成「乒乓球拍卖完了」、也可切分成「乒乓球拍卖完了」,如果没有上下文其他的句子,恐怕谁也不知道「拍卖」在这里算不算一个词。

 

 新词识别

 新词,专业术语称为未登录词。也就是那些在字典中都没有收录过,但又确实能称为词的那些词。最典型的是人名,人可以很容易理解句子「王军虎去广州了」中,「王军虎」是个词,因为是一个人的名字,但要是让计算机去识别就困难了。如果把「王军虎」做为一个词收录到字典中去,全世界有那么多名字,而且每时每刻都有新增的人名,收录这些人名本身就是一项巨大的工程。即使这项工作可以完成,还是会存在问题,例如:在句子「王军虎头虎脑的」中,「王军虎」还能不能算词?

新词中除了人名以外,还有机构名、地名、产品名、商标名、简称、省略语等都是很难处理的问题,而且这些又正好是人们经常使用的词,因此对于搜索引擎来说,分词系统中的新词识别十分重要。目前新词识别准确率已经成为评价一个分词系统好坏的重要标志之一。

 

(2)相似度判断

 当前比较成功的搜索引擎系统大多是基于关键词匹配来完成用户的检索请求的。典型的系统包括stanford大学研制的google系统以及北大的“天网”系统。通常这类系统在对已抓取回来的网页进行分析时,要提取网页中出现的关键词和摘要信息,并以关键词作为网页的特征项。

如果我们令 来表示网页的集合, 表示特征项集,它由网页集中的所有或部分特征项组成,网页 用特征项空间中的向量 表示,其中:

表示特征项 在网页 中的权值, 表示特征项 在网页 中出现的频率,称为项频, 则表示网页集p中出现了特征项 的网页数目的倒数,称为反向网页频率。

在很多的文档自动分类系统中,任意两个网页 和 的相似度通常用其对应向量 和 的夹角余弦值来定义(如公式2所示),向量夹角越小(即夹角余弦值越大)表明其相似度越高

下一主题:不会编程?Webflow 让你网页设计无压力 上一主题:做SEO的同时如何做好用户体验
        Valid CSS!
  • 客服热线:周一至周五 9:00-18:00
  • 0755-28121545
  • 咨询信箱:[email protected]