资讯 商家 提交 会员 首页 网站导航

详细内容

返回资讯首页
    1.搜索引擎基本概念:爬取、索引、召回、粗排、精排、重排

    爬取 & 索引

    搜索引擎爬取全网海量页面 → 进行基本的质量评分 → 过滤出小部分质量较佳的网页 → 创建倒排索引(能够通过关键词查询文档)

    召回

    用户发起搜索请求 → 搜索引擎先对关键词进行纠错处理 → 拆成多个词项 → 去索引中查找能够命中这些词项的文档,可能就是这个数

    粗排

    但是文档的实在数量太多了,一股脑的都推给用户显然很二逼,用户不可能都看完,只会看其中极小的一部分,另外也没法保证质量。

    所以要从海量召回的文档中,删除其中内容高度重复的文档,并筛选与搜索词最相关的760个文档,展现给用户。

    这个环节属于海选,需要大量计算,为了不让用户等待过长,一般用快捷优先且相对简单的处理方式,比如BM25、TF-IDF、LDA,具体还有啥咱也不知道。

    精排

    之后就是对760篇文档排序的过程,最终的目的是让排序结果最大概率符合用户预期的结果,这样用户才更有可能点进去了解详情,从而提升搜索的业务价值。

seo

    这部分比海选要复杂的多,涉及一大堆数据挖掘、机器学习、用户行为分析、用户意图识别等算法,大概包括:

  • 通过用户搜索词和前N次搜索词,结合历史日志中其他搜索该词的用户浏览行为,来揣测用户可能的搜索意图

  • 文档的更新时间

  • 文档的历史点击率

  • 文档浏览后终结搜索的比例

  • 用户的网络维度特征(IP、网络类型、地域....)

  • 与搜索词文本匹配度最高的TopN条文档

  • 与搜索词潜在意图覆盖率最高的TopN条文档

  • ....太多了咱也不知道

    上述过程,对应着搜索引擎中,爬取、索引、召回、粗排、精排的几个阶段,属于搜索引擎系统入门级的常识。

    重排

    现在精排后面,还有重排,根据用户的搜索场景(网络、设备、近期点击行为等)和媒体热点,实时调整排序,比如:

  • 你用wifi跟手机网络,搜索结果可能有所不同

  • 今天上午点击的某个结果,下午再次搜索时排名就上去了

  • 上午媒体爆料一个叫GoGo闯神秘人和迪丽热巴约会了,然后下午GoGo闯的搜索结果,就跟上午完全不同了

    2.如何研究排名(一家之言)

    研究收录 vs 研究排名

    在16年以前,本渣觉得研究「排名」是最难的,后来搞了一堆单页站群、泛站群、资讯站群和少数几个单站,大概前后10万域名出头,发现「搞定收录」其实比「搞定排名」麻烦的多,甚至应付广告主没事总tm扣量、跑路不结算、域名被停止解析....,我觉得都比研究排名麻烦。

    因为在16年以前,本渣接触的都是大站,日UV百万级的,所以收录的问题不大,一般就是某个目录收录率低,但不存在完全不收录,或收录极其缓慢的问题。

毕竟,大站参与760名排序的概率很大的,But一堆海量小站,参与召回的机会都没有。

    研究大站 vs 研究小站

    所以,本渣觉得,大站与小站,研究排名,是两种路线:

    大站研究的是,做的词怎样上首页。
    小站研究的是,做哪些词能上首页。

    研究的方法有两种:正推 和 逆推

    3.正推

    正推就是假设一堆条件,挨个去测试,能否达到自己预期的结果。比如快排的开发,大部分都是 正推的,需要大量测试

    逆推就是通过分析已有的结果,找出其中共同的规律,需要大量观察

    仅研究百度SEO排名规律上,正推的门槛极高。

    比如,很久以前,本渣抓了1000个词(同一个词根)的搜索结果,把每个词的760个结果对应的网页全弄下来,最后我记得就不到40万篇,接近50%的搜索结果都是重复的。

    然后我把这批网页导入到xunsearch(一个开源的搜索引擎,并不是说这个好,而是本渣当时只会这个,还不知道有elasticsearch这个东西)并建立倒排索引。

    同时我还把默认词库整理了下,让这部分行业词分词更准确。

    我的想法是:

    第一步:在xunsearch和baidu,同时搜索一个词,通过调整xunsearch搜索参数,调整出跟百度很接近的结果,比如top10文档大部分一样,只是顺序略有差别。

    第二步:我就修改自己网页的内容,推到xunsearch更新下索引,再次xunsearch搜索下,如果top10能出来,线上网页就按本次修改的上线。如果没出来,就修改其他地方,直到能在Top10出现。

    理想丰满,现实骨感。

    反正第一步始终没出来,毕竟商业搜索引擎,和开源搜索引擎,很多地方是不同的。

    但是这只能代表百度,因为其他搜索入口,如研究微信搜一搜、知乎、小红书的排名规律就容易的多,首先这些平台不存在收录的问题,内容不违规即是收录,二是影响排序的因子比百度少很多。

    anyway,正推我是放弃了

    4.逆推

    下面说说当时做的逆推的思路,相对来讲,逆推比正推省事很多。

    长尾关键词 

    long long time ago,在做站群的时候,当时开发的还不是泛解析程序,能承载无限个关键词的。是库里有多少词,这个程序就生成多少对应数量的页面,或二级域名。

    这意味着,如果库里面塞了一堆根本不可能排在首页的关键词,这是浪费系统资源的,毕竟新域名收录有限,自然希望收录的页面,都是大概率能上排名的页面。

    一个流量词呢,在搜索结果表现,有4种特征:

  • Top10结果爱站权重很高(平均权重>7)

  • Top10结果爱站权重很低(平均权重<2)

  • 搜索结果数很低(搜索结果数<1000)

  • 有高有低(平均权重2-4)

    第一种可能这个词竞争度很大,或者本身是比较敏感的词,比如医疗养生类的,所以百度特意分流给了一些信任度高的大站

    第二种可能这个词是违禁的,但百度有没来得发现,也可能这个词还没被很多人发现。这个可以根据搜索结果的标题,是否完全命中关键词来判断,能命中是前者,不能命中是后者

    第三种是这个词是违禁的,且已经被百度发现删除

    第四种是正常的词,比如不算热门的小说、漫画名啥的

    已排名优先的清洗关键词措施,是找出第1种和第3种词,然后删除掉。

    所以当时找词,比如从爱站导出来的竞品网站关键词,会先按如上方法洗词,洗完之后在上线。同等域名数量的情况下,能多出25%的流量。

    以上是研究长尾词能够大概率上首页的问题,下面来聊聊核心词的排名。

    独立核心词排名

    以前有一种刷词方法,比如核心词是「SEO」,会去同时刷创造出来的新词,比如「SEO流量贩子」,同时title也改成这个词。

    经过 “恰如其分的刷量比例 & 时间拉长”,「SEO」与「SEO流量贩子」会产生关联,「SEO流量贩子」是「SEO」搜索意图中的一种

    这样「SEO流量贩子」排名到首页后,在加大「SEO」的点击,这样核心词「SEO」上首页的概率,比直接硬点概率要大一些。

    所以之前,SEO这个词,在百度指数的下拉,或百度搜索框的下来,总有一些烂七八糟的词

判断网页与核心词的真实相关性(排除点击加权)

    当然,这个不是绝对,同时也跟百度认为网页本身与核心词有多大相关性有关。

比如很多刷快排的站,网页做的乱七八糟,可以说不符合SEO友好性,存在排名很大程度是点击加权,而非相关性,这样快排有点波动就容易被干。

    识别这种情况,可以在搜索词后加个无关紧要的符号,比如「华为工资 。」

    搜索引擎对用户的Query,会先纠错在分词召回,纠错过程就包含去除烂七八糟的符号,之后再排序。

    but,「华为工资 。这个词的排序没有点击加权因素在里面,因为没人点击这个词,同时这个符号对核心词“华为工资”相关性排序的影响很低,因为每篇文档都有一大堆句号。

    所以你看「华为工资 。」与「华为工资」的排序,几乎一样的。但对比「seo 。」与「seo」的搜索结果,就非常奇妙了。

    或者,也可以把主词拆开来搜索,比如「华为工资 华为 工资」,或者输入两次「华为工资 华为工资」

    海量核心词排名

    但如果有很多核心词怎么办?

    比如某类词根,如:

  • 关于XXX的作文

  • {城市}公司

  • {古诗名称}

  • ....

    long long time ago,本渣的做法是:

    1)把这批词,全部扔到百度搜索框,依次提取下拉框的词

    2)计算每个后缀的出现频次
    3)选择频次最高&标题完全命中关键词搜索结果少的词缀,作为网页title的补充

    举个例子,比如{城市}公司,标题只写「{XX}公司」,有些浪费,因为这个词后面有人搜:

  • {XX}公司大全

  • {XX}公司名录

  • {XX}公司黄页

  • {XX}公司排行

  • {XX}公司排名

  • {XX}公司代办

  • ......

    但是又不能所有后缀都加上,所以疑问是:添加哪个后缀,能大概率让「{XX}公司」和「{XX}公司{后缀}」都有排名?

    全国300多个县级市,60%+城市,其下拉框都会出现“排名”,其实“名录”、“黄页”的出现频次也不少,跟“排名”差不多,但是这两个词缀做的人太多了,也就是搜索结果标题完全命中的数量比较多,所以最后用了“排名”,即title为:“北京公司排名”结果是,二三线城市差不多都上去了。

    一线城市没上去是因为,搜索需求太丰富,比如:代办、摇号、转让...