搜索引擎技术基础.ppt
《搜索引擎技术基础.ppt》由会员分享,可在线阅读,更多相关《搜索引擎技术基础.ppt(34页珍藏版)》请在沃文网上搜索。
1、搜索引擎原理搜索引擎原理目录目录目录目录一、一、搜索引擎总体介绍搜索引擎总体介绍二、爬虫技术介绍二、爬虫技术介绍三、中文分词和排序算法介绍三、中文分词和排序算法介绍四、查询四、查询/存储技术、存储技术、Cache Server介绍介绍一、搜索引擎总体介绍一、搜索引擎总体介绍(一一)搜索引擎定义搜索引擎定义“搜索引擎搜索引擎”技术,完全来源于历史悠久的全文检索技术。技术,完全来源于历史悠久的全文检索技术。“搜索引擎搜索引擎”从字面上可拆分为从字面上可拆分为“搜搜”、“索索”、“引擎引擎”三个含义。三个含义。“搜搜”就是大量信息的抓取,抓取回来后的信息进行智能提就是大量信息的抓取,抓取回来后的信息
2、进行智能提取、排重、质量分析等处理。取、排重、质量分析等处理。“索索”就是大量处理后信息的存储、信息排序、快速查询就是大量处理后信息的存储、信息排序、快速查询等。等。“引擎引擎”就是指系统不但能存储亿级的数据,而且还能有就是指系统不但能存储亿级的数据,而且还能有巨大的并发处理能力,这样的系统才有资格被叫着巨大的并发处理能力,这样的系统才有资格被叫着“引擎引擎”。一、搜索引擎总体介绍一、搜索引擎总体介绍(二二)搜索引擎主要核心技术:搜索引擎主要核心技术:搜索引擎主要核心技术为搜索引擎主要核心技术为:(1)中英文分词语言处理;中英文分词语言处理;(2)排序算法;排序算法;(3)网络爬虫;网络爬虫;
3、(4)查询查询/存储技术存储技术 (三)搜索引擎的组成部分(三)搜索引擎的组成部分 搜索引擎一般包括四个组成部分:搜索引擎一般包括四个组成部分:搜索器、索引器、检索器、用户接口搜索器、索引器、检索器、用户接口搜索器(爬虫搜索器(爬虫SPIDER)的功能是在)的功能是在Internet中漫游,发现和搜集信息。中漫游,发现和搜集信息。索引器索引器(INDEXER)的功能是理解搜索器所搜索的信息,从中抽取出索引的功能是理解搜索器所搜索的信息,从中抽取出索引项,用于描述文档以及生成文档集的索引表。项,用于描述文档以及生成文档集的索引表。检索器检索器(SEARCHER)的功能是根据用户的查询在索引库中快
4、速检出文档,的功能是根据用户的查询在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并实现进行文档与查询的相关度评价,对将要输出的结果进行排序,并实现某种用户相关性反馈机制。某种用户相关性反馈机制。用用户户接接口口(USER INTERFACE)的的作作用用是是输输入入用用户户查查询询、显显示示查查询询结结果果、提提供供用用户户相相关关性性反反馈馈机机制制。主主要要的的目目的的是是方方便便用用户户使使用用搜搜索索引引擎擎,高高效率、多方式地从搜索引擎中得到有效、及时的信息。效率、多方式地从搜索引擎中得到有效、及时的信息。一、搜索引擎总体介绍一、搜索引擎总体介绍(四四
5、)系统图:系统图:二、爬虫技术介绍二、爬虫技术介绍(一一)爬虫技术总体介绍:爬虫技术总体介绍:网络爬虫是一个自动提取网页的程序,它为搜索引擎网络爬虫是一个自动提取网页的程序,它为搜索引擎从从Internet网上下载网页,是搜索引擎的重要组成。网上下载网页,是搜索引擎的重要组成。网络爬虫网络爬虫使用多线程技术,让爬虫具备更强大的抓取使用多线程技术,让爬虫具备更强大的抓取能力。能力。网络爬虫网络爬虫还要完成信息提取任务,对于抓取回来的网还要完成信息提取任务,对于抓取回来的网页提取出来页提取出来:新闻、电子图书、行业信息等。对于新闻、电子图书、行业信息等。对于MP3、图片、图片、Flash等各种不同
6、内容,要实现自动识等各种不同内容,要实现自动识别、自动分类及相关属性测试(例如:别、自动分类及相关属性测试(例如:MP3文件要包文件要包含的文件大小,下载速度等属性)。含的文件大小,下载速度等属性)。二、爬虫技术介绍二、爬虫技术介绍(二二)抓取对象:抓取对象:1.静态网页:爬虫从一个或若干初始网页的静态网页:爬虫从一个或若干初始网页的URL开始,获得初始网开始,获得初始网页上的页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列放入队列,直到满足系统的一定停止条件。直到满足系统的一定停止条件。2.动态网页动态网页:分析动态网页参
7、数,按照一定规章,分析动态网页参数,按照一定规章,“拼拼”出所有要被出所有要被抓取内容抓取内容URL,只抓取这些特定范围内动态网页。,只抓取这些特定范围内动态网页。3.特殊内容:比如特殊内容:比如RSS、XML数据,情况特殊需特殊处理。如新闻数据,情况特殊需特殊处理。如新闻的滚动新闻页面,需要爬虫不停地监控扫描,发现新内容马上就进的滚动新闻页面,需要爬虫不停地监控扫描,发现新内容马上就进行抓取。行抓取。4.文件对象:图片,文件对象:图片,MP3、Flash、视频等文件的抓取,都要特殊、视频等文件的抓取,都要特殊处理。比如说:图片抓取出来后,要知道图片文件类型、图片文件处理。比如说:图片抓取出来
8、后,要知道图片文件类型、图片文件的大小、图片的像素大小,还要转换出来缩略图。的大小、图片的像素大小,还要转换出来缩略图。二、爬虫技术介绍二、爬虫技术介绍(三三)抓取策略:抓取策略:1.深度优先策略:对于一些大网站及静态网页为主的抓取内容,深度优先策略:对于一些大网站及静态网页为主的抓取内容,采取深度策略抓取,便于在最短时间内获得最大量内容。采取深度策略抓取,便于在最短时间内获得最大量内容。2.广度优先策略广度优先策略:对于一些动态网页或小网站,采取广度策略抓对于一些动态网页或小网站,采取广度策略抓取,同时对多个网站进行抓取,减小对各个小网站的压力,避取,同时对多个网站进行抓取,减小对各个小网站
9、的压力,避免造成恶意攻击。免造成恶意攻击。3.合作抓取策略合作抓取策略:由被抓取网站,提供可被抓取内容的由被抓取网站,提供可被抓取内容的sitemap网站地图,双方协议好,只抓取这些特定内容,在抓取速度及网站地图,双方协议好,只抓取这些特定内容,在抓取速度及时间上双方前期进行协商。另外还可以完全由被抓取方,提供时间上双方前期进行协商。另外还可以完全由被抓取方,提供详细内容,抓取过程都可以省略一些步骤。详细内容,抓取过程都可以省略一些步骤。三、中文分词和排序算法介绍三、中文分词和排序算法介绍(一一)中文分词:中文分词:中文本身存在着很大的歧义性,同样一句话,不同的断句,表达中文本身存在着很大的歧
10、义性,同样一句话,不同的断句,表达的意思就不一样。这对于计算机去做机器分析,就带来了巨大的的意思就不一样。这对于计算机去做机器分析,就带来了巨大的困难。困难。下面的中文断句,来自百度广告宣传片下面的中文断句,来自百度广告宣传片:我知道你不知道我知道你不知道我知道你不知道我知道你不知道我知道你不知道我知道你不知道三、中文分词和排序算法介绍三、中文分词和排序算法介绍(一一)中文分词:中文分词:另外中文的具体含义,还必须放在具体的前后语言环境中去分析。另外中文的具体含义,还必须放在具体的前后语言环境中去分析。比如说:比如说:乒乓球拍卖完了乒乓球拍卖完了我去学校我去学校商店商店,发现乒乓,发现乒乓 球
11、拍球拍 卖卖 完完 了了在今天的在今天的慈善拍卖会慈善拍卖会上,世界冠军们夺冠时的乒乓球上,世界冠军们夺冠时的乒乓球 拍卖拍卖 完完 了了 中文分词,在具体的算法实现上分为三种:中文分词,在具体的算法实现上分为三种:1.字符串匹配字符串匹配(正序、逆序、最少切分、最大切分等正序、逆序、最少切分、最大切分等)2.基于理解(词法,句法等方式处理)基于理解(词法,句法等方式处理)3.基于统计基于统计在中文搜索引擎中,目前基本上是这三种算法混合使用。第二种的算在中文搜索引擎中,目前基本上是这三种算法混合使用。第二种的算法实现起来过于复杂,所以以第一种和第三种算法为主。法实现起来过于复杂,所以以第一种和
12、第三种算法为主。三、中文分词和排序算法介绍三、中文分词和排序算法介绍(一一)中文分词:中文分词:语言本身也是在不停的进化和发展的,新的词语层出不穷,一些老语言本身也是在不停的进化和发展的,新的词语层出不穷,一些老的词语渐渐被弃用。作为中文分词的基础的词语渐渐被弃用。作为中文分词的基础-词库,其新词补充和词库,其新词补充和老词删除就是非常重要的工作。老词删除就是非常重要的工作。“超级女声超级女声”、“超女超女”、“李宇春李宇春”、“八荣八耻八荣八耻”、“非典非典”,当这些新词的出现时,搜索引擎需要快速捕捉到,并且马上把其,当这些新词的出现时,搜索引擎需要快速捕捉到,并且马上把其添加到分词系统中去
13、。添加到分词系统中去。如何判断那些词是新词,这就全部倚靠算法来实现。新词捕捉主要如何判断那些词是新词,这就全部倚靠算法来实现。新词捕捉主要来源于新闻和网络来源于新闻和网络BBS论坛,主要机制是依靠统计程序,统计上升论坛,主要机制是依靠统计程序,统计上升速度最高的词。另外作为搜索引擎公司,对众多用户的搜索词进行速度最高的词。另外作为搜索引擎公司,对众多用户的搜索词进行“用户行为用户行为”分析,也能提高其分析,也能提高其“新词补充新词补充”效果。效果。三、中文分词和排序算法介绍三、中文分词和排序算法介绍(二二)排序算法:排序算法:搜索引擎的排序算法(搜索引擎的排序算法(ranking algori
14、thm),决定了各个网页、图),决定了各个网页、图片、片、MP3等数据的重要性排列顺序,也决定了最终用户查询到的数等数据的重要性排列顺序,也决定了最终用户查询到的数据排序。搜索引擎的据排序。搜索引擎的排序算法排序算法是人工智能的完满体现,它是对百亿是人工智能的完满体现,它是对百亿级数据进行重要性分析的数学实现。级数据进行重要性分析的数学实现。“PageRank”是是Google公司在排序算法上的专利技术,也是公司在排序算法上的专利技术,也是Google能从众多搜索引擎公司中脱颖而出的最核心技术,作为其搜索服务能从众多搜索引擎公司中脱颖而出的最核心技术,作为其搜索服务能够超过其他竞争对手最有力的
15、武器。能够超过其他竞争对手最有力的武器。不同搜索引擎公司不同搜索引擎公司排序算法排序算法的优劣,直接决定了广大搜索引擎用户的优劣,直接决定了广大搜索引擎用户对搜索服务的选择,在互联网上,一个普通用户更换搜索服务只需对搜索服务的选择,在互联网上,一个普通用户更换搜索服务只需要要5秒钟,所以秒钟,所以排序排序算法就成为了各个搜索引擎公司最核心机密。算法就成为了各个搜索引擎公司最核心机密。另外,每个搜索引擎公司也必须不停地改进其另外,每个搜索引擎公司也必须不停地改进其排序排序算法。算法。三、中文分词和排序算法介绍三、中文分词和排序算法介绍(二二)排序算法:排序算法:排序算法部分参考指标:排序算法部分
16、参考指标:指标指标加分加分减分减分网站硬件指标网站硬件指标网站网络好,系统稳定网站网络好,系统稳定网站系统不稳定,网络不好网站系统不稳定,网络不好网站包含网页数网站包含网页数总网页数目多总网页数目多总网页数目少总网页数目少网页大小网页大小网页大小适中网页大小适中网页多大或过小网页多大或过小其他网页链到本网页其他网页链到本网页数目多数目多数目少数目少网页内网页内URL数数数目适中数目适中过多或过少过多或过少网页相关性网页相关性URL连接网页是相关内容连接网页是相关内容URL连接网页不是相关内容连接网页不是相关内容网页更新网页更新/生成日期生成日期日期近的日期近的日期远的日期远的网页类型网页类型静
17、态网页静态网页动态网页动态网页网页内样式网页内样式网页设计样式中等网页设计样式中等网页设计样式过于复杂或简单网页设计样式过于复杂或简单网页具体内容网页具体内容分词后,各个词权重总和高分词后,各个词权重总和高分词后,各个词权重总和低分词后,各个词权重总和低用户访问行为用户访问行为点击多的网页点击多的网页点击少的网页点击少的网页三、中文分词和排序算法介绍三、中文分词和排序算法介绍(二二)排序算法:排序算法:排序算法虽然解决了网页排序的问题,但是有时候有些搜索结果还排序算法虽然解决了网页排序的问题,但是有时候有些搜索结果还是很难让用户满意。为此,搜索引擎排序算法一项重要改进:是很难让用户满意。为此,
18、搜索引擎排序算法一项重要改进:“聚聚类类”,就被引进来提高排序效果。,就被引进来提高排序效果。“聚类聚类”方法,是把网页分类成各种不同类型,比如说:分类为方法,是把网页分类成各种不同类型,比如说:分类为“体育体育”、“娱乐娱乐”、“军事军事”、“旅游旅游”、“金融金融”、“政治政治”、“汽车汽车”、“房产房产”等。针对每一种分类,各自有一套专用的排序等。针对每一种分类,各自有一套专用的排序算法。算法。当查询词为当查询词为“高尔夫高尔夫”时,查询结果为时,查询结果为“体育体育”+“汽车汽车”,排序,排序算法为通用算法;但当查询词为算法为通用算法;但当查询词为“高尔夫高尔夫 伍兹伍兹”时,其分类就
19、能确时,其分类就能确定为定为“体育体育”,其排序算法就采用,其排序算法就采用“体育体育”类别的算法。类别的算法。三、中文分词和排序算法介绍三、中文分词和排序算法介绍(二二)排序算法:排序算法:排序算法是决定了各个网页的排序,但是对于一些特殊情况,也需排序算法是决定了各个网页的排序,但是对于一些特殊情况,也需要要“人工干预人工干预”,毕竟一个通用算法并不能解决所有问题。,毕竟一个通用算法并不能解决所有问题。比如说:查询词为比如说:查询词为“北理北理”,其实含义是,其实含义是“北京理工大学北京理工大学”。在。在Google的搜索结果中,第一个就是的搜索结果中,第一个就是“北京理工大学北京理工大学”
20、,但在,但在“北京北京理工大学理工大学”网页中根本找不到网页中根本找不到“北理北理”两个字。以下是搜索结果:两个字。以下是搜索结果:北京理工大学北京理工大学以工为主,包含理工、管理、法律、外语的多科性全国重点大学。以工为主,包含理工、管理、法律、外语的多科性全国重点大学。 “人工干预人工干预”是排序算法,非常重要的一个补充,大大改进了搜索是排序算法,非常重要的一个补充,大大改进了搜索结果。搜索引擎公司的竞价排名和滚动排名,也都是结果。搜索引擎公司的竞价排名和滚动排名,也都是“人工干预人工干预”的范畴。的范畴。(二二)排序算法:排序算法:GOOGLE的的PageRank技术技术PageRank
21、技术是技术是Google 检索结果的一种排序算法检索结果的一种排序算法,中文通常译为页中文通常译为页面级别或页面等级面级别或页面等级,根据这个算法根据这个算法,Google 认为每个网页都有一个反认为每个网页都有一个反映其重要性的值映其重要性的值,值越高表明其页面级别越高值越高表明其页面级别越高,即网页越重要即网页越重要;网页的质量和重要性也可以通过其它网页对其超文本链接的数量来衡网页的质量和重要性也可以通过其它网页对其超文本链接的数量来衡量量,具体来说具体来说,假如网页假如网页A 有一个指向网页有一个指向网页B 的链接的链接,则意味着网页则意味着网页A 认为网页认为网页B 是重要的。是重要的
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 搜索引擎 技术 基础