搜索引擎优化(seo)的基本工作模块( 盆友们初识搜索引擎2.1搜索引擎分类及评价标准 )
优采云 发布时间: 2021-12-26 07:09搜索引擎优化(seo)的基本工作模块(
盆友们初识搜索引擎2.1搜索引擎分类及评价标准
)
1. 写在前面
今天和小伙伴们一起学习一下通用搜索引擎的一些技术要点。
鉴于搜索引擎内容量大,每个部分都够写几篇文章了,所以这篇文章只是给一个好思路,需要老手们深入挖掘。
通过本文,您将对通用搜索引擎的基本原理和组成有更清晰的认识。仔细阅读后,您一定会有所收获!
废话不多说,大家赶紧上车鸭!
2. 认识搜索引擎2.1 搜索引擎分类
搜索引擎根据使用场景和规模可以简单分为两类:
一般搜索也叫大搜,如谷歌、百度、搜狗、神马等都属于这一类。
垂直搜索,也叫垂直搜索,是特定领域的搜索,比如用QQ音乐搜索周杰伦的歌曲。
尽管两类搜索引擎的数据规模和数据特征不同,但它们都旨在弥合用户和海量信息之间的鸿沟。
2.2 搜索推荐
搜索和推荐经常被比较,但两者之间存在一些差异和联系。
2.3 搜索引擎评价标准
我们每天都和搜索引擎打交道,评价一个搜索引擎的好坏可以简单概括为:准确性、及时性、响应速度、权威性等。
换句话说,搜索引擎了解用户真正想要查找的内容,并能够快速准确地显示出来。一些热点、突发的信息也可以及时收录和展示,可以很好的赢得用户。
这个目标需要搜索引擎多个模块的协同处理,这是一个复杂的系统工程,不是一件容易的事。
3.通用搜索引擎概述3.1 搜索引擎的基本流程
大白尝试用通俗易懂的语言来大致表达一下通用搜索引擎的工作原理:
1. 网络蜘蛛爬虫每天都在孜孜不倦地采集
网页,然后存储起来,让每个站点的页面都有一份镜像,这个规模是百亿/百亿。
2. 简单的镜像不能直接使用。它需要对每个网页进行处理、切分,建立搜索词与网页的对应关系,这样用户在搜索某样东西时,就会得到大量相关的网页。
3. 例如,“搜索隐藏的角落”可能会找到100个相关网页,但网页和搜索词之间的相关性必须强或弱,因此需要对网页进行排序。排序的策略很多,最后把高质量的网页放在前面,展示给用户。
用户看到相关结果后,点击或跳过,搜索引擎根据用户的相关动作进行调整,实现整个闭环过程。
4. 为了更好的理解用户的真实目的,需要进行搜索词意图理解、分词、同义词替换、语法纠错等处理,然后基于这些搜索词,并为用户找到它心目中的网页。
例如,搜索词是“鹰”,它可能是一只老鹰,也可能是一支NBA球队:
3.2 一个搜索引擎的基本组成
下面我们从整体的角度来简单的看一下各个模块的基本组成和主要功能:
接下来简单介绍几个模块的基本内容和技术要点。
4. 网络爬虫模块介绍
网络爬虫模块是一般搜索引擎的一个非常基础的组件。一般由分布式爬虫实现。我们来看看这个搬运工是如何实现海量网页的发现的:
一个网络爬虫的基本过程:
爬取过程中有多种遍历策略:深度优先遍历DFS、广度优先遍历BFS、部分PageRank策略、OPIC在线页面重要性计算策略、大站优先策略等。
在工程实践中,需要根据自身情况和搜索引擎的特点,选择某种策略或多种策略的组合。
网络爬虫需要遵循Robots协议(网络爬虫排除标准),这是网络爬虫与网站之间的君子协议。该站点使用该协议来告诉网络爬虫什么可以被捕获,什么不能被捕获。
网络爬虫还需要考虑爬取的频率,以防止网站负担过重。总之,搜索引擎的网络爬虫需要做一个谦虚的绅士。
5. 网页内容处理模块
爬虫模块存储网页内容后,网页内存处理模块开始对网页内容进行分析。主要任务包括:数据清洗、网页内容分词、建立正向索引、建立倒排索引等。
5.1 数据清洗
一般来说,网页中除了具体的内容外,还会有很多无关的东西,比如html标签、推广等,在实际搜索引擎中是无用的。
内容处理模块会清理掉无用的数据和标签,为后续的分词做准备。
5.2 中文分词
通过分词关键词提取清洗后的内容。比如一个网页有1000个词,分词后大概有50个词。内容以不同的权重处理。
在分词过程中,会剔除停用词、虚词等,如“de、de、di”等,以尽量还原网页的主要内容。
我们使用在线网页分词工具和真实网页来模拟这个过程:
网页在线分词工具:
抓取网页:
可见分词后可以标注词频。这些都是后续网页排名的重要来源,但是中文很复杂,所以分词算法很多。常见的包括:
5.3 前索引
假设我们对每个网页的docid进行了唯一编号,经过前面的分词后,一个网页就会被分成多个不同权重的实体词。
所谓forward row,就是根据docid得到属于网页的所有内容,按照我们的思路,这是一个正向的过程,相对来说,会有一个倒排索引。
我们以一页《隐藏的角落》剧情介绍为例,模拟分词,大致如下(本次分词结果纯脑补,以实际情况为准):
5.4 倒排索引
假设我们对10,000个网页进行细分,其中收录
一些公共搜索词:微山湖、智慧虎山、三十年、隐藏角落等,因此我们将在总结关系后构建搜索词->网页映射。
所以对于有很多网页的搜索词“隐藏的角落”,倒排索引就相当于一个词可以拉出多少篇文章的过程。
就像我们想到食物时想到的一样:火锅、烧烤、烤鸭、炒菜等等,都是一个从点到面的过程。这个反向过程在搜索引擎中非常重要。
5.5 本章小结
内容处理模块对抓取到的网页进行清理,爬虫模块的pre-new URL,内容分词,建立正向索引和倒排索引,中间环节。
尤其提到正向索引和倒排索引,字面上并不直观,但道理不难理解:
前排索引:具体指关键词有多少个页面,特指属于页面本身的内容集合,是一个网页。
倒排索引:搜索关键词对应多少个相关网页,即备选网页的集合,是一种网页。
6. 页面排序和用户模块 6.1 页面排序的必要性
由于存储的网页有数百亿个,因此一个搜索词可能与数万、数十万甚至更多的相关网页相关。
网页排名需要综合考虑:相关性、权威性、时效性、丰富性等方面。
搜索引擎必须向用户展示高质量、相关性强的网页,并将其放在最前面,否则搜索结果会很差,用户不会购买。
事实上,情况也是如此。例如,搜索引擎返回 10 页结果,每页 10 个,以及 100 个摘要。一般用户点击1-3页后的页面,不会再点击。因此,排序后的header内容对于搜索结果是至关重要的。
我们仍然以搜索“隐藏角落”为例。百度一共返回了10页,其中1-2页的内容相关性强,算是比较好的搜索结果:
6.2 常用网页排名策略
网页排名策略是一个不断优化和改进的演化过程。让我们来看看排名策略:
这是早期搜索引擎经常采用的方法。比较简单,但是效果还不错。
简单来说就是以关键词在网页上出现的频率和位置作为排名依据,因为一般认为搜索词出现的频率越高,位置越重要,网页的相关性越好,排名就越高。
词频不是简单的计数次数。判断关键词的相对频率需要一个全局的概念。这就是我们要讲的TF-IDF逆文档频率。来看看百度百科的解释:
TF-IDF(词频-逆文档频率)是一种常用的信息检索和数据挖掘加权技术。
TF 是词频,IDF 是逆文档频率。
TF-IDF 是一种统计方法,用于评估单词对文档集或语料库中文档的重要性。
一个词的重要性与它在文档中出现的次数成正比,但同时与它在语料库中出现的频率成反比下降。
举个栗子:
“用餐”一词在网页中出现了 10 次。虽然出现了很多次,但是“用餐”这个词太常见了,因为它出现在很多其他网页上,所以搜索词“用餐”的重要性相对下降了。
链接分析认为:一个网页被其他网页引用的次数越多或引用的权威网页越多,该网页的质量就越高。
基于链接分析的排序算法有很多,其中最著名的PageRank算法被谷歌广泛采用作为其核心排序算法。
先看一下PageRank算法的基本思想:
网页的重要性由 PageRank 值衡量。一个网页的PageRank值体现在两个方面:其他网页引用该网页的数量和其他网页引用该网页的重要性。
假设一个网页A被另一个网页B引用,网页B为网页B引用的网页分配PageRank值,因此网页A被引用越多,PageRank值越高。
另外,网页B越重要,它所指的页面可以分配的PageRank值就越多,网页A的PageRank值越高,它就越重要。
其实这个算法说起来很简单:比如你写个公众号,转载一个大V就相当于引用了。其他公众号转发的越多,您的公众号内容的质量就越高。
PageRank算法也有一定的问题。例如,它对新页面不友好。新页面暂时没有被大量引用,所以PageRank值很低,而且PageRank算法强调网页之间的引用关系,可能对网页本身的主题内容不够重视。,也就是所谓的话题漂移问题。
与PageRank算法类似,还有一些其他的算法来弥补主题关联问题,包括:HillTop算法、Topic-Sensitive PageRank算法、HITS算法等,本文不再展开。
6.3 网页反作弊和SEO
搜索引擎中也有二到八原则。头部的网页占据了大量的点击流量,这也意味着巨大的商业价值。
SEO这里就要说到了,我们来看看百度百科对SEO的定义:
搜索引擎优化也称为 SEO,或搜索引擎优化。它是通过分析搜索引擎的排名规则来了解各种搜索引擎如何搜索,如何抓取网页,以及如何确定特定的关键词搜索。排序结果的技术。
搜索引擎使用容易被搜索和引用的方法有针对性地优化网站,提高网站在搜索引擎中的自然排名,吸引更多用户访问网站,增加网站访问量,提高网站的销售能力和推广能力 提升网站品牌效应的能力。
路高一尺,魔高,唯有魔,方能胜魔。
网页反作弊是搜索引擎需要解决的重要问题。常见的有内容防作弊、链接分析防作弊等。
6.4 用户搜索意图理解
用户模块直接与用户交互,接收用户的搜索词,准确理解用户的搜索意图非常重要。
事实上,用户的输入是多种多样的,部分口语化,甚至拼写错误,不同背景的用户对同一个搜索词的要求不同,使用无争议搜索词的目的也不同。
7. 全文摘要
搜索引擎是一个非常复杂的系统工程,涉及到很多算法和工程实现。本文旨在和大家简单梳理一下搜索引擎的基本组成和运行原理,是一篇科普文章。
一个搜索引擎的每一个模块都做好并不容易,也是互联网产品科技含金量的典型代表。深入研究一个模块将受益匪浅。
点击观看,喜欢吗?支持我