SimHash算法,关键词堆砌打击

Simhash算法又被SEO站长们成为关键词匹配算法,当用户搜索一个关键词的时候,会出现相关的网站进行展现,但是前些年有个别站长发现关键词密度越高排名越好,这是搜索引擎前期的漏洞,Simhash算法(也成分词匹配算法)对关键词堆砌起到了决定性的打击,尤其是新站一旦有关键词堆砌的嫌疑,将会在好几个月内无法获得排名。

说到文本相似性计算,大家首先想到的应该是使用向量空间模型VSM(Vector Space Model)。使用VSM计算相似度,先对文本进行分词,然后建立文本向量,把相似度的计算转换成某种特征向量距离的计算,比如余弦角、欧式距离、Jaccard相似系数等。这种方法存在很大一个问题:需要对文本两两进行相似度比较,无法扩展到海量文本的处理。想想像Google这种全网搜索引擎,收录了上百亿的网页,爬虫每天爬取的网页数都是百万千万级别的。为了防止重复收录网页,爬虫需要对网页进行判重处理。如果采用VSM方法,计算量是相当可观的。

这里介绍的SimHash算法很好的解决了VSM方法的缺陷,该方法最初由Google提出,用于网页去重。在介绍SimHash前,先大概说下传统的Hash算法。我们知道,衡量一个Hash算法好坏的一个指标是随机性。也被称作简单一致散列假设:每个关键字都等可能地散列到m个槽位中的任何一个中去,并与其他的关键字已被散列到哪一个槽位中无关。说白了,就是让散列的分布尽量均匀,哪怕内容发生很小的变化,hash值也会发生很大的变化。因此,根据传统的hash值无法得知被散列内容的相似程度。

simhash可以计算文本间的相似度,我们可以通过simhash算法计算出文档的simhash值,通过比较各个文本的simhash值之间的汉明距离的大小来判断其相似度,汉明距离越小,则相似度越大。一般大文本去重,大小<=3的即可判断为重复。



simhash算法分为5个步骤:1、分词、2、hash、3、加权、4、合并、5、降维


1、分词:

选择适合自己的分词库进行分词即可。

如“欢迎来到随迹”->(分词后)“欢迎”、“来到”、“随迹”


2、hash:

对每个词计算其hash值,hash值为二进制数01组成的n-bit签名。

设“欢迎“(100101)、“来到”(101011)、“随迹”(101011)


SimHash算法


3、加权:

对于给定的文本,权值即为分词后对应词出现的数量。给所有特征向量进行加权,即W = Hash * weight;这里我们假设三个词权值分别为4、5、9;

根据计算规则遇到1则hash值和权值正相乘,遇到0则hash值和权值负相乘

例如给“欢迎”的hash值“100101”加权得 到:W(欢迎) = 1001014 = 4 -4 -4 4 -4 4,给“来到”的hash值“101011”加权得到:W(来到)=1010115 = 5 -5 5 -5 5 5,剩下的按此规则计算


4、合并

将上述各个特征向量的加权结果累加,变成只有一个序列串。拿前两个特征向量举例,例如“欢迎”的“4 -4 -4 4 -4 4”和“来到”的“5 -5 5 -5 5 5”进行累加,得到“4+5 -4+-5 -4+5 4+-5 -4+5 4+5”,得到“9 -9 1 -1 1”。


5、降维

对于n-bit签名的累加结果,如果大于0则置1,否则置0,从而得到该语句的simhash值,最后我们便可以根据不同语句simhash的海 明距离来判断它们的相似度。例如把上面计算出来的“9 -9 1 -1 1 9”降维(某位大于0记为1,小于0记为0),得到的01串为:“1 0 1 0 1 1”,从而形成它们的simhash签名。


申明:本站内容仅代表个人观点,仅供学习参考;未经授权任何个人或组织单位不得复制、转载、摘编以及其它形式的应用!

本站文章可能使用到互联网上的资料,若对您造成困扰,请联系 kk19@foxmail.com除理

本文地址:https://www.chateach.com/seo/seosuanfa/407

相关文章

  • 如何判断seo外包是否靠谱

    seo外包

    关键词有需求就有市场,尤其是seo优化市场可以说是鱼龙混杂,很多站点会去选择一些seo外包服务公司来助力公司的seo优化,今天就分享一点避坑指南,如何正确的选择seo外包。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 964
    • seo外包
  • 关键词密度,在SEO中的作用!

    关键词密度

    关键词密度对于关键词的排名有着重要影响,那么关键词密度多少合适呢?相信大家经常听到网上的说法,控制关键词密度2-8%之间。这种说法其实是不对的,对于不同行业适合的关键密度肯定是不一样的。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1270
    • 关键词密度
  • 网站seo如何提升排名,失败的原因什么?

    seo如何提升排名,SEO失败的原因

    大家是不是会遇到这种情况,网站不管自己怎么优化,并且优化是按照算法以及各种标准是执行的,但是就是没有很好的效果,排名坚如磐石一动不动。那么到底是什么原因,是优化的方式不对还是?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1298
    • seo如何提升排名
    • SEO失败的原因
  • 做seo优化排名赚钱吗?

    seo优化赚钱吗

    做seo优化排名赚钱吗?seo优化现在还好做吗?搜索引擎是个大市场,如果想在市场里买东西,就要打广告,所以seo优化不会过时,并且会是一个赚钱的行业。不论是以后做什么行业,我都觉得seo都是不可或缺的技术,因为任何行业都需要做广告推广,而seo则是经济实惠的选择。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2241
    • seo优化赚钱吗
  • SEO挖掘关键词的方法

    关键词挖掘

    找对关键词就是抓住了流量的入口,关键词决定了你内容,决定了可以带来什么类型的流量。那么挖掘关键词的渠道有哪些呢?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 957
    • 关键词挖掘
  • SEO从业者格局打开路也就宽了

    SEO发展,SEO优化

    对于SEO从业者首先要打开格局眼界,才能在SEO优化的路上走远。很多SEO从业者在未自己的再来迷茫,不得不说如今的SEO市场的确也不咋地,不是说SEO优化没有前景,而是SEO的环境很差,有点劣币驱逐良币。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 820
    • SEO发展
    • SEO优化
  • 百度细雨算法打击什么

    百度算法,细雨算法

    细雨算法主要是正对B2B网站,地址栏内容虚假内容进行打击,对于B2B网站应该如何应对。怎么样的内容才是符合百度细雨算法规范的!

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2482
    • 百度算法
    • 细雨算法
  • 要想做好SEO,需要注意哪些方面

    如何做好seo

    如果让站点的排名脱颖而出,需要注意哪些方面呢?要如何才能把关键词排名提升上去呢,做好以下几点对于排名很有比较关键的作用。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 693
    • 如何做好seo
  • 何为百度快照劫持,如何避免?

    百度快照劫持

    百度快照劫持是利用黑客技术拿到了你的ftp,或者应用网站漏洞,来篡改网站的网页内容,主要的通过在网页中插入js代码实现跳转,而当你检查网站代码的时候很难发现问题所在,如果没有一定的技术水平的情况下。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1235
    • 百度快照劫持
  • SEO与付费SEM推广哪个好?

    SEO优化,SEM推广

    网站的推广方式只要有两种SEO(搜索引擎优化)和SEM(搜索引擎竞价推广),两者同时通过在搜索关键词时在搜索引擎上获得靠前的排名,增加展现几率来获取用户的点击。那么SEO与付费SEM推广哪个好呢,那种推广方式才更加适合我们呢?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 925
    • SEO优化
    • SEM推广
  • 【图解】C位直达后台操作说明

    C位直达

    如何在C位直达活动页查看规则、领取词包、上传内容以及查看收益,有兴趣参与C位直达的小伙伴们,千万不能错过这篇干货文章哦!

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1360
    • C位直达
  • 外贸站多语言站点必做的操作,hreflang标签守护你的seo

    hreflang,多语言站点

    对于外贸站点,多语言支持,是拓展国际市场的标配。然而,当同一内容以不同语言呈现时,搜索引擎可能误判为重复页面,导致权重分散甚至降权。hreflang标签作为SEO领域的"语言护照",能有效解决这一难题。今天潘某人SEO就来分享下多语言站点如何通过hreflang标签,有效的避免被搜索引擎判定为重复页面,导致权重分散的问题。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 5134
    • hreflang
    • 多语言站点
  • 百度下拉框的原理及删除方法

    百度下拉框,下拉词删除

    你知道什么是百度下拉框吗?百度下拉框是百度下拉词的承载容器。就是当我们搜索一个关键词的时候,搜索框推荐的相关搜索词。所以下拉框我们也可以理解为是下拉词。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2099
    • 百度下拉框
    • 下拉词删除
  • 新站不收录怎么办,如何快速收录

    新站不收录解决方法

    对于新网站来说收录是一个比较困难的,相信很多SEO们都会遇到。分享一下如何让新站可以实现一个月 不到就开始稳定快速收录,以及新站建站中需要注意的哪些坑.....

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2672
    • 新站不收录解决方法
  • 什么样的外链才是高质量外链?

    高质量外链标准

    外链建设是SEO优化中重要的一项,可以有效快速的提升网站的抓取数量,其实是对于新站更加有意义,可以快速的提升网站的权重,但是随着搜索引擎算法不断的迭代,也推出了打击外链买卖作弊的行为,比如百度搜索引擎就有绿萝算法。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1061
    • 高质量外链标准
  • 简单易用的SEO关键词工具大全

    关键词挖掘工具

    简单易用的SEO关键词挖掘工具有哪些?搜索引擎优化的重要性不言自明,但选择正确的搜索引擎优化工具是一件困难的事,那么哪种搜索引擎优化工具比较适合你

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1295
    • 关键词挖掘工具
  • 【必看】设置死链的秘诀!

    如何设置死链,404,seo

    死链相信大家都不陌生,但是你知道不及时处理死链对于SEO优化会有多大的影响嘛?今天就来普及下死链处理时的注意事项。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 861
    • 如何设置死链
    • 404
    • seo
  • 聚合标签对seo优化的作用

    seo聚合标签

    聚合标签这个词大家可能比较陌生,即使是SEO们也有很多人是没有听说过,聚合标签我们也可以认为是tag标签,那么这类聚合标签对于SEO优化的作用大不大呢?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1979
    • seo聚合标签