搜索引擎预处理的定义及流程

什么是搜索引擎预处理:

搜索引擎蜘蛛抓取到网站页面后,并不能直接用于搜索排名处理,搜索引擎数据库中的页面数量巨大,如果数据没有进行预先的处理,是无法在用户输入关键词之后瞬时在海量的数据中计算出排名结果的。

因此,搜索引擎需要预先将抓取回来的页面进行处理,从而为关键词排名结果作出准备。搜索引擎预先处理抓取到的页面数据的过程,就是搜索引擎的预处理。

搜索引擎预处理的9个步骤:

搜索引擎对抓取页面的预处理主要由9个步骤组成,分别是:提取文字、中文分词、去停止词、消除噪声、去重复内容、正向索引、倒排索引、链接关系计算、特殊文件处理。

 

1.提取文字

提取文字是搜索引擎预处理的第一步。

蜘蛛抓取的页面内容,除了用户在浏览器上可以看见的部分外,还包括了很多无法用于排名的代码,搜索引擎需要将无法用于排名的代码去除掉,只保留对于排名有价值的文字内容,比如页面的文字、Meta标签中的文字、图片替代文字、视频描述文字、Flash替代文字、链接锚文字等。

 

2.中文分词

搜索引擎存储和处理页面及用户搜索都是以词为基础的。英文等基于字母的语言,在单词之间由空格分隔,搜索引擎可以把句子划分为单词的组合,而中文、日文、韩文等词语之间是没有分隔符号的,搜索引擎必须首先分辨哪几个字组成一个词,哪些字本身就是一个词,这就是搜索引擎的分词技术。

比如“网络营销”可以被认作是一个词,也可以被分为“网络”和“营销”两个词。

搜索引擎分词方法主要有两种,一种是基于词典进行分词,一种是基于统计进行分词。

基于词典进行分词比较容易理解,就是将收集的数据中的汉子与事先准备好的词典中的词条进行匹配,当数据中的汉字串扫描到与词典库中词条相符时,就算分出了一个词。

基于统计的分词方法指的是通过搜索引擎积累的历史数据,分析各个汉字之间组合的概率,从而判断出哪些字组合成一个词语的概率比较高。

 

3.去停止词

人们在使用文字组合成文章的时候,经常会用到一些没有实际含义的介词、冠词、连词、副词、助词、感叹词等,如“的”、“地”、“得”、“啊”、“哈”、“呀”“因此”“所以”“从而”等等,这些词本身是不能表达出意思的,所以也就对页面要表达的主要意思没有什么影响。我们把这些自身无法表达出具体意义的词成为停止词。

停止词无法表达实质的意义,而且会影响搜索引擎的处理效率,所以搜索引擎在进行结果计算的时候会去除掉这些词的影响。

不过这个停止词也不是绝对的,因为在进行搜索时,包含停止词与不含停止词,搜索的结果可能是不一样的。所以,停止词对搜索来说可能没有那么重要,但也会被考虑进搜索计算中。

 

4.消除噪声

网站页面中的一些固定部分,比如版权声明、导航条、广告等,对于页面主题内容没有什么实质的贡献,属于噪声内容,搜索引擎在预处理的过程中会过滤掉这些内容,这个过程就叫做消除噪声。

 

5.去重

搜索引擎不喜欢重复性内容,因为同样的内容参与排名既浪费资源又不利于用户体验。如果在同一网站的不同url出现同样的内容,搜索引擎当然只希望返回其中的一篇,所以会在预处理时需要识别和删除重复内容,这个过程就叫做“去重”

搜索引擎用来“去重”的技术,就是搜索引擎的指纹算法。

 

6.正向索引

搜索引擎经过文字提取、分词、消噪、去重等步骤后,搜索引擎得到了能反映页面主题内容的、以词为单位的内容,接下来搜索引擎就会把页面转化为一个关键词的集合,兵记录页面上每个关键词出现频率、格式、位置等信息。这样就形成了一个特殊的关键词组合的文件,这个文件会对应一个ID。

在搜索引擎数据库中,关键词也用ID表示,最后成为将页面文件对应成多个关键词ID的数据。这种形式就叫做正向索引。

 

7.倒排索引

正向索引不能直接用于关键词排名,原因是计算量过于庞大。按照正想索引进行排名,加入用户搜索关键词SEO”,那么搜索引擎要将所有含有“SEO”这个词的页面找出来,然后再进行排名计算,这种计算量是无法满足瞬时的搜索排名结果的。

为了满足瞬时展现排名结果的需求,搜索引擎会使用倒排索引的方法进行排名计算。所谓倒排索引,就是与正排索引相反,正排索引是页面文件对应关键词ID,倒排索引是关键词ID对应页面文件ID。比如“SEO”这个关键词会对应所有与这个关键词相关的页面文件ID,这样在用户进行“SEO”这个关键词的搜索时,就可以马上找到包含这个关键词的页面文件。

 

8.链接关系计算

搜索引擎排名因素中都包含了页面链接关系的计算,计算链接关系也是搜索引擎预处理中最重要的工作之一。

 

9.特殊文件处理

除了HTML文件外,搜索迎请还需要抓取其他文字文件类型,如PDF、Word、TXT、PPT,以及图片、语音、视频、Flash等非文字内容。

搜索引擎会通过特殊的技术手段将这些文件转化为数据,并用来进行排名计算。