时至今日,与SEO相关度或网页排名话题中“频次或密度”的内容仍然不绝于耳,过去的东西就让他过去吧。
首先我们从关键词的频次与密度开始来述说本文的第一个内容。
关键词频次与密度
似乎我们一直认为,当用户搜索某个关键词时,该关键词在网页中出现的频次与密度越高越好,当然还有一些观点认为这个值控制在3%-5%,可是,你们知道这个数字是从哪里来的吗?
如果我没有记错的话,是06-07年美国SEO专家写的一本书中出现的这个一个数字,之后该书被中译之后就泛滥了,泛滥是一个多么胆颤的词。
就算这是对的也是过去了,假设是07年写成的书,写书难道不需要1年时间吗? 也就是说这个概念在06年就有了,实践证明难道最少不需要1年时间吗? 最早最早这个做法可能在05年开始的,如今已经7年过去了,大家还在怀疑搜索引擎开发工程师的智商吗?
就算上述的内容属于伪造,那么我们用一个实例来思考一下关键词频次和密度的现象,假设我们搜索一个关键词“临沂八九点人才网”,如果按照频次和密度来思考问题的话,出现“临沂人才网”与“八九点”的网页最能获得相关性的亲睐。
那么,作为用户的我们,我们在搜索“临沂八九点人才网”的时候,希望反馈的结果是点击一次即可得到的信息呢,还是一大堆充满关键词的文章呢?(还不如看小说)
如果还不能理解,本文看到这里就可以点击右上角的X按钮,或者Alt+F4。
我总是希望通过让大家站在用户角度去考虑SEO或者搜索引擎,可很多朋友发信息给我总是问一些我都不知道该怎么回答的走偏的问题。
希望大家能明白一句话,满足用户需求是企业的生存之本,百度它只是一个企业而已,仅此而已,百度的受众就用户,是你、我以及你我身边的这些人。
对于SEO来说,成为行业的佼佼者就需要满足用户需求,获得更多行业内的流量,这是SEO的一方面,也是我擅长的,如果客官您非要说XXX营销,XXX推广的概念,不好意思,我不太懂。 我只能从用户以及技术角度去叙述我的SEO。
好了,接下来我们从技术角度聊聊搜索引擎是如何计算关键词与页面之间的相关度?
作为一个用户,我们需要在搜索引擎上面输入一个或多个词组来查询我们需要找到的信息,例如上述提到的“临沂八九点人才网”,此时不到1秒的时间内搜索
引擎返回给我们一大堆结果,那么它是如何认为排在前面的这些结果对搜索用户有用,或者它是如何计算用户输入的关键词与返回的结果密切相关呢?
下面虽然是从技术角度去解答,但依旧是以满足用户需求的基本前提出发。
当我们提交给搜索引擎一个词组的时候,搜索引擎会将其进行分词处理,这也是大家知道的,早年百度的一项外包服务就是中文分词,与现在的海量科技一样。
分词的作用在于将用户的词组分成独立表达意思的核心关键词,为什么要进行这一步?答案是搜索引擎需要将用户输入的关键词分词后进行独立关键词需求匹配最后整合在一起才可计算出用户输入的关键词所表达的意思。(稍后会有内容介绍,这里只做一个预设)
这里假设我们输入的关键词为query,分词后得到q1,q2…….qn,对于搜索引擎来说,直接对用户输入的一个词组进行需求类型匹配。
这里还涉及到另外一个概念,那就是query或者q1可能表达了不同的需求,就好比汉字中的多音字,或者英文单词中一个单词代表了不同的意思。
搜索引擎有一套计算关键词需求的算法(熟悉搜索引擎开发的朋友应该能看懂我说的是什么):“词语需求概率模型”。
该模型使用一套比较复杂的计算公式来表达的,需要有较强的悟性或者数学功底的人才能明白其中的逻辑,我这里用白话文给大家介绍一下。
所谓词语需求概率模型,就是把分词前或分词的词语分成三类
1、词语(词语本身)
2、词语对应的需求类型(好比一个英文单词代表了不同的含义,可能存在含义1,含义2等等)
3、词语对应的需求类型概率(词语匹配含义1的概率以及陪陪含义2的概率,等等)
下面的内容有些绕,我尽量用我没上过学的语言功底表达清楚:
对于确定分词前或分词后的词语需求类型,在搜索引擎中以下的算法是一种较为常见的:
1、通过已存在的搜索日志来确定各词语的需求类型
2、通过人工标注来确定个词语的需求类型
通过以上两种方式(第二种过时),可以将一个query分词后的q1-qn对应到与其匹配的需求类型集合中。
可能大家对上一句话有些疑问,什么是query分词后的q1-qn对应到与其匹配的需求类型集合中。
例如“临沂八九点人才网”分词后得到“临沂人才网”与“八九点”,其中“临沂人才网”可能的匹配到的需求类型包括:
1、视频
2、图片
3、商品
4、博客
5、论坛
6、小说
以上6点以及更多的需求类型加起来就是“临沂人才网”单一词语对应匹配需求类型的集合。
对于第3点也就明白了,query对应需求集合中每一项可能的概率就是“词语对应的需求类型概率”。
那么搜索引擎是如何从搜索日志中来确定query需求的呢?
搜索日志中记录了用户搜索时间、用户浏览器cookies(用户ID)、搜索关键词、搜索结果URL在搜索结果中的排名、用户点击搜索结果的顺序、搜索结果URL地址等。
也就是说,从历史用户行为可匹配到大部分用户query对应的需求类型以及需求类型概率。
(说明1:这里要说一点,例如搜索“临沂人才网”,视频需求类型概率为0.5,小说需求类型概率为0.3,漫画需求类型概率为0.1,在10条搜索结
果中会出现这三种搜索结果,根据需求类型概率来排序,也就解释了为什么关键词的排名会波动的原因之一,时效性的用户需求类型概率也会影响排名位置。)
明白了上述内容后,也应该可以理解,将用户query分词后进行q1-qn的需求匹配以及需求类型概率计算后整合之后的需求匹配度就是query分词前的用户需求。
这仅仅是匹配query的需求类型。 那么query的需求类型概率如何计算呢?
这里还要引入一个引子来计算分词前query的需求类型概率,确定了需求类型概率也就确定了所有符合需求类型的页面,根据需求类型概率匹配的用户需求。
通常搜索一个query分词后会得到1个或多个子词。 可能包含N中需求类型,假设这个值为2,那么搜索行尸走肉,会确定将要返回给用户的搜索结果应该是:视频类型搜索结果以及小说类型的搜索结果(参见说明1)。
上述内容表达了搜索引擎如何确定用户query的需求,那么如何去计算query与可能参与排名页面的相关度呢?
搜索引擎解决了用户需求,就解决了核心问题-了解用户搜索需求。
例如当前已经了解到,搜索“临沂八九点人才网”的用户极可能是要找视频类与小说类的信息,那么根据视频类信息来进行页面的语义分析,一般搜索引擎语义分词包括但不仅限于以下几种:
1、基于字符串的语义分析
2、基于计算机理解的语义分析
3、基于统计的语义分析
4、基于语义分词
以上4点内容不难理解,还有一点需要注明,那就是搜索引擎还会过滤一些内容,例如大家都知道的,搜索引擎会过滤一些“的、地”之类的词,搜索引擎一般会过滤:
1、停用词集合内所有的词语
2、非独立表意的词语
说明2:搜索引擎还会用另外一种技术来了解用户需求,一般来说,用户在输入一个查询关键词的时候,会把比较重要或者能表达核心查询意思的词放置于头部或尾部。所以搜索引擎有时会直接将用户搜索关键词的头部或者尾部放入用户需求的需求类型概率的集合中。
现在确定了用户需求就是视频,那么如何来匹配到与视频相关的页面就是最后一个需要解决的问题。
一般来说,需求有两种类型:
1、文本类
2、非文本类
在非文本类中又包括但不仅限于以下类型
1、视频
2、图片
3、商品
4、博客
5、论坛
6、小说
7、等等
简单地说如此已经可以确定网页与视频类需求的关键词,剩下的就是通过网页的权威度值来进行排序了。