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优化效果。网站诊断可以从很多方面出发,可以从页面的规范程度,站点的内容,网站的代码等等各个方面都是决定网站最终优化效果的因素。今天不讲那么多细节性的,就从网站展现排名来诊断网站的优化效果。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1141
    • SEO诊断
    • 网站优化
  • 什么是网站的抓取频次

    抓取频次,网站收录

    抓取频次是搜索引擎蜘蛛在单位时间内容访问网站的次数,比如在百度站长工具内容看到的抓取的频次都是按天进行统计的,那么数据中的抓取频次都是日抓取频次。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1604
    • 抓取频次
    • 网站收录
  • 百度统计事件跟踪怎么添加

    百度统计事件跟踪,_trackEvent

    百度统计事件跟踪_trackEvent怎么添加使用,以一个页面点击的追踪统计作为一个例子。来演示下如何部署使用百度统计的事件分析js-api接口。学会合理利用事件分析功能,会对数据统计的灵活度有很大的提升,不仅对于SEO优化,网站的转化优化都可以提供强有力的支持。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2569
    • 百度统计事件跟踪
    • _trackEvent
  • SEO关键词优化的必需知道的秘诀

    SEO关键词优化

    SEO关键词优化的必需知道的秘诀?SEO优化的本质上让设置的词有排名,通过搜索,能找到我们的网站(引流)。做优化的时候,我们还是需要掌握一点小技巧,方法策略运用对了。后面优化起来就会比较方便,而关于技巧方面的。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1473
    • SEO关键词优化
  • 网站优化哪个数据指标最重要?

    网站优化,seo数据

    资深SEO优化师可以说出一大堆影响SEO优化效果的因素。影响排名的因素不胜枚举,就比如百度搜索引擎的白皮书中就列举出来了很多影响排名的因素,那么在众多因素中,哪个因素最核心呢?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1184
    • 网站优化
    • seo数据
  • 服务器的安全对SEO重要性

    服务器安全对SEO的重要性

    服务器的安全对SEO重要性?服务器的安全性,一般用户不怎么关注,因为安全意识不强,就出现很多网站被攻击的问题,影响到网站的安全服务器。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2246
    • 服务器安全对SEO的重要性
  • 网站为什么不收录

    网站不收录

    有些站点不管怎么折腾就是不收录,那你知道不收录的原因吗?我们如何知道站点不收录的原因。网站不收录的原因,大致可以分类两类:内容没有被抓取到和网站存在违规不符合收录标准。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1147
    • 网站不收录
  • 揭秘搜索引擎蜘蛛IP:如何轻松获取所有搜索引擎蜘蛛IP?

    蜘蛛IP,搜索引擎

    在搜索引擎优化(SEO)的世界中,搜索引擎蜘蛛的IP地址如同“隐形访客”的身份证号码。掌握这些IP不仅能帮助你精准识别真实蜘蛛,还能优化网站抓取策略、过滤垃圾流量,甚至预判网站的收录趋势。那么,如何高效获取并验证这些IP?今天潘某人SEO将为带你深入探索!

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 620
    • 蜘蛛IP
    • 搜索引擎
  • 网站内容更新频率对SEO的影响

    SEO的影响,内容更新

    ​想必大家都听过,每天要定时定量的更新内容,来促进蜘蛛的抓取从而获取到更高SEO效果,相信很多站点都一直坚持着内容的更新。这么做虽然没有大问题,但是很多时候却是在徒劳的浪费人力。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1170
    • SEO的影响
    • 内容更新
  • nofollow标签对于网站优化的作用

    nofollow标签,内链优化,外链优化

    nofollow标签对于网站优化的作用,针对nofollow标签在外链优化以及内链优化中的作用,以及注意事项简单的分析了其作用,对于网站优化还是十分重要的!

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1784
    • nofollow标签
    • 内链优化
    • 外链优化
  • seo优化必须知道的网站路径结构重点

    seo优化,网站路径,采集

    网站路径是最容易被站长们忽略的关键点,网站路径对于网站的结构有着关键的影响,并且对于seo优化起到了深远的影响。今天给大家分享下,网站路径与seo之间的关系,我们应该如何处理正确的处理网站路径。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1226
    • seo优化
    • 网站路径
    • 采集
  • 网站排名靠前的方法

    排名靠前的方法

    网站排名靠前的方法?如何让网站内容排到首页是所有SEOER们日思夜想的问题,其实当关键词的排名到了前50,或者说想进入前二页并不是简单的靠页面优化就可以达到的排名,无论你页面关键词布局多么合理,只要不是权重绝对高,基本上是很难进入前二页的。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1155
    • 排名靠前的方法
  • 网址结构优化对于SEO的重要性

    网址结构,网站层级

    你的网站的结构是怎么样的结构呢?是佛性随意来,还是条例清晰彰显网站结构层级的呢?不要忽视网址结构的设计对于SEO优化还是比较重要的一个方面。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1431
    • 网址结构
    • 网站层级
  • SEO网站页面性能优化指南

    网站页面速度优化

    SEO网站页面性能优化指南,慢速主要原因: 1、关键子资源耗时较严重; 2、页面存在额外跳转; 3、主文档耗时较为严重。页面打开速度直接的影响着转化的水平

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2205
    • 网站页面速度优化
  • SEO中domain的是什么

    domain,什么是domain

    SEO中domain的是什么,domain可以一定程度上反映外链数,但是能作为外链数量的判断标准。如何提升domain数。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2120
    • domain
    • 什么是domain
  • h5哪些标签可以seo优化

    h5标签,seo优化

    HTML5中可以用哪些代码标签来做SEO搜索引擎优化?H5中的标签可以使得网页内容更加结构化,可以更加清楚的展示页面内容的结构,可以提升对于搜索引擎的友好性,可以更加容易的识别网站内容以及站点的类型。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2527
    • h5标签
    • seo优化
  • 移动端网站优化步骤是什么

    移动优化方法

    目前国内手机用户已经突破了10亿,并且手机上网已经替代电脑设备成为了主流的上网搜索方式,正因为移动搜索市场的越来越庞大,也就不得不使得越来越多的站点也开始关注其移动端的SEO优化问题,那么移动的SEO优化大致是一个什么样的步骤呢,和PC端有什么不同之处呢?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1512
    • 移动优化方法
  • 如何做好网站中期优化工作?

    网站中期优化

    如何做好网站中期优化工作?当我们的网站排在前20名时,这个时间也是网站的关键优化时期,就像孩子已经达到了同一个发展阶段。您能否排在第一位,看看您想要如何工作?首先,让我们把它分成三点。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1510
    • 网站中期优化