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优化效果

    如何判断网站的优化效果,尤其是新站的效果有什么科学有效的方法去判定网站所处的一个阶段。如果通过数据看出搜索引擎对于站点的评级。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1073
    • seo优化效果
  • robots协议不生效怎么处理

    robots

    为什么明明已经设正确设置的robots的屏蔽规则,但是就是不生效导致不该收录的内容被收录了呢?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 770
    • robots
  • 什么是网站权重,如何快速提升

    提升权重,

    相信SEO优化人员都是非常关注自己站点权重,更甚者有些公司招聘考核都是按照权重来的,对于这种行为我只能说非常的不专业。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 990
    • 提升权重
  • SEO已死,是真相还是忽悠?

    SEO已死

    SEO的环境已经经历了巨大的变革,尤其是在短视频内容和AI技术迅速发展的背景下。来越多的用户倾向于通过短视频平台来获取信息。这改变了传统的文本搜索模式。随着AI的发展,搜索引擎能够提供更加精确的答案,有时甚至不需要用户点击进入网站。于是,一些人得出结论:“SEO已死”,但真相真的是如此吗?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 126
    • SEO已死
  • 百度天网算法,用户隐私保护

    百度天网算法,用户隐私保护

    百度天网算法打击恶意盗取网民的QQ号、手机号进行营销推广的行为。打击这种严重侵犯用户隐私的行为的站点。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1533
    • 百度天网算法
    • 用户隐私保护
  • 网站栏目数量对于权重的影响

    网站栏目,权重,seo

    ​如果您近期正在打算搭建网站,那么看到这篇文章就赶上了。很多站点在网站搭建的时候就为后期的SEO优化埋下了诸多的坑。如网站的栏目结构可以说是重灾区。网站的栏目数量要适当不宜多,对于大多数网站栏目数量控制在3-5左右差不多。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 657
    • 网站栏目
    • 权重
    • seo
  • 为什么网站有收录却没有流量?

    收录,流量

    相信很多人对于网站有收录但是却没有流量,甚至一些站点的整体收录不错,但是网站的流量却依然很差,今天潘某人SEO为您来揭秘其中的缘由!

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 755
    • 收录
    • 流量
  • SEO入门到精通需要掌握的知识

    SEO入门教程

    简单理解:SEO实际上是指搜索引擎优化,主要的目的是基于SERP(搜索结果),通过更加符合搜索引擎抓取、索引、排名的方法,有针对性的调整自有网站的相关数据指标,从而提高目标网站相关关键词的排名。 那么对于SEO优化入门者需要掌握哪些知识点,走向精通。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2153
    • SEO入门教程
  • wordpress建站怎么样,适合SEO优化吗

    wordpress建站

    wordpress建站是非常不错的,非常使用于新手,可以不写一句代码,快速的搭建属于自己的一个站点,并且wordpress拥有大量的模板插件,不但可以满足美观的展示效果,大量的插件支持也可以满足基本的SEO优化需求。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1594
    • wordpress建站
  • HillTop谷歌排名算法

    HillTop算法

    HillTop算法可以有效的屏蔽垃圾低质量外链,防止外链作弊。其实HillTop算法的指导思想和PageRank的是一致的,都是通过网页被链接的数量和质量来确定搜索结果的排序权重。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2461
    • HillTop算法
  • 百度资源平台VIP俱乐开放申请加入

    百度VIP俱乐

    百度搜索资源平台VIP俱乐部由原有的“以用户规模为核心的定向邀请制”升级为更贴近用户以及搜索需求的“以内容优质/领域权威等为核心的开放申请制”,为更多站点开放申请机会,助力优质资源脱颖而出。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 1138
    • 百度VIP俱乐
  • AI人工智能生成内容用于SEO优化可行吗?

    AI写作,SEO优化,文心一言

    对于SEO来说最大的难点在于内容的创作,首先在长时间的运营之后,SEO们会发现内容创作思路的匮乏,同时内容的创作会消耗大量的人力,AI人工智能的出现可以很好的解决这个问题,AI写作是否可以运用于SEO优化呢?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 798
    • AI写作
    • SEO优化
    • 文心一言
  • 如何降低网站跳出率

    降低网站跳出率

    影响网站的跳出率的原因有哪些,从网站的可访问性、用户体验、以及站点的内容上,分析这些因素对于网站跳出率产生的影响,以及我们应该进行怎么的操作,才能更好的降低跳出率高的问题........

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 2107
    • 降低网站跳出率
  • DNS对于SEO至关重要

    DNS服务器,seo

    如果你错误的选择dns服务器,那么对于站点的SEO优化是致命的,轻则影响SEO效果,严重的甚至站点会被搜索引擎所屏蔽。因此重视dns服务器,正确的选择对于seo优化是必要的也是重要的。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 909
    • DNS服务器
    • seo
  • 想要做好网站seo优化内容,需要知道这几点

    seo优化,网站内容

    近年来网站seo优化越来越难做了,那是凡事都有双面性,网站seo优化越来越难,那么逐渐的会更多站点及优化人员逐渐的放弃被淘汰,这也正是大家机遇。如今很多人在唱衰seo,从相关的统计数据可以看到搜索引擎的用户量和搜索量依然强劲庞大,虽然说新媒体平台近几年的发展态势迅猛,但是需要知道此类流量性质和搜索引擎还是有很大区别的。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 747
    • seo优化
    • 网站内容
  • 百度spider 主要抓取策略类型

    百度spider,抓取

    =Baiduspider在抓取过程中面对的是一个超级复杂的网络环境,为了使系统可以抓取到尽可能多的有价值资源并保持系统及实际环境中页面的一致性同时不给网站体验造成压力,会设计多种复杂的抓取策略。

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 608
    • 百度spider
    • 抓取
  • 网站使用重复模版对SEO优化的影响

    SEO优化

    网站优化第一步就是建站,对于大多数的公司网站都是通过外包来做,这类站点我们就会遇到一个问题,网站的代码、样式都是套模板,都是在相同版本下修改衍生出来的;最终出现的问题就是网站模板的重复度比较高。许多人会遇到这样一个问题:相同或相似的网站模板是否会对SEO优化产生负面影响?

    用于表示时间的图标 一个时钟的图标,用于向用户表达后面跟着的是一个时间
    用于表示阅读次数的图标 一个类似睁开眼睛的图标,用于向用户表达后面跟着的数字是一个阅读的次数 178
    • SEO优化
  • 网站目录提交网址,对SEO还有作用吗?

    网站目录,外链,SEO优化

    网站目录是站点外链优化途径之一,那么如今提交网站目录对于SEO优化效果大吗?网站目录作为外链的一种形式,它的效果遵从外链相关的规则和算法。

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