算法基础

当前比较成功的搜索引擎系统大多是基于关键词匹配和结合向量空间模型来完成用户的检索请求的。典型的系统包括Google和天网系统。通常这类系统在对已抓取回来的网页进行分析时,要提取网页中出现的关键词和摘要信息,并以关键词作为网页的特征项。

天网系统在搜集并分析一篇网页时,提取并记录了网页中出现的关键词,同时根据公式赋予每个关键词一个权值,这些关键词的权值构成一个向量空间,可以用来表示该网页。另外,我们还从网页中提取了512个字节的有效文字(指用户实际访问该网页时能看到的文字,在html和其他格式的网页中,有一些用户看不到的文字,它们告诉浏览器该执行什么样的操作及如何显示网页,包括字体、颜色、排版等信息)作摘要。当用户查询时,摘要同网页的标题、URL等信息一起显示给用户,供用户了解网页的内容,选择感兴趣的进行浏览。

算法描述

考虑到基于关键词匹配的搜索引擎系统的特点,结合使用网页的向量空间模型,我们提出了5种网页消重算法,用于快速、有效地发现Web上的转载网页。下面逐一介绍这几种算法。在以下的描述中,用Pi表示第i个网页,其权值最高的前N个关键词构成的特征项集合为Ti={t1,t2,…,tin},其对应的特征向量为Wi=<Wi1,Wi2,…Wim>,其摘要用Abstract(Pi)表示,前N个关键词拼接成的字符串用Concatenate(Ti)表示,而先对N个关键词按字母序排序后再拼接成的字符串用Concatenate(sort(Ti))表示。另外,用MD5(X)来表示字符串X的MD5散列值,用Mirror(Pi,Pj)表示Pi和Pj互为转载网页,用A→B表示“若A成立则B成立”。

算法分析

可以看出,我们设计的第1种算法采用了对网页摘要求MD5散列值的方法,当两个网页的散列值(占16个字节)相同时,就认为二者是互为转载的。由于MD5算法的严格性保证了当两个网页的摘要内容有一个字节不同时,其散列值就不同,这样就使得本来应作为转载处理的却没有被确定为转载网页。为此,我们又基于向量空间模型理论,提出了第2种和第5种算法。第5种算法表明,当两个网页的权值最高的前N个关键词集合相同时就认为二者是互为转载的网页。第2种算法比第5种要严格一些,它不仅要求两个转载网页的前N个关键词相同,其顺序也是一致的(按权值排序),因而第2种算法有可能会漏掉一些转载网页。
算法2和算法5都只是要求转载网页的前N个特征项相同,没有考虑到这些特征项所构成向量的夹角大小。算法3和算法算法4则分别在算法2和算法5的基础上分别考虑了两个网页特征向量的相似度。但向量相似度的计算并没有使用夹角余弦值来定义,因为它只度量了两个向量的夹角大小,而没有考虑向量的长度。我们认为只有当两个向量的夹角小,同时其长度相差也小时,二者才是相似的。针对这一点,我们又设计了判断两个向量相似度的方法,即算法3和4的第二个条件:

可以看出,SIM能够同时兼顾向量的夹角和长度两个因素。当两个网页内容毫不相关时(即它们的关键词集合没有交集),Wi与Wj垂直,SIM的值为1。当两个网页相同时,SIM为0。当两个网页相似而不相同时,SIM的值介于0和1之间,于是SIM的值成为判断两个网页相似度的标准。另外,类似于算法5是对算法2的条件放松,算法4也是对算法3的放松。
后四种算法都对向量空间模型理论作了较大的简化。首先,我们只从网页中出现的所有关键词组成的M个特征向量提取了前 N个(N<M),这把理论模型的限制放松了。只所以可以这样做是因为:

1、特征向量的前N个分量绝对值大,基本能确定特征向量的方向。取较少的关键词能减少算法的复杂度。尽管有可能降低其准确度,降低多少,后面的实验将对其作出评测。

2、转载网页的制作人,对网页稍加改动变成相似网页时,不能改变其基本意思。而网页的基本意思一般通过其中出现的高频词来反映。后面的(M-N)个词出现的次数为1或2,相对而言,这些词的出现是不稳定的,当使用这些词来判断相似网页时,反而会漏掉一大批相似网页。

其次,后4种算法都要求前N个关键词组成的集合要相同。这却把理论模型的限制加强了。这主要是由于对算法复杂度的考虑,判断两集合交集大小需要先求出它们的交集。求交集运算的复杂度较大,而把一百万网页两两求交集,其1012量级的运算量是我们不敢提及的。我们只能考虑用MD5算法对集合签名,实际上就是对关键词序列签名,来表示集合的相同与不同。签名算法有极高的敏感性,作用对象稍有不同就会给结果带来很大的差异,并且不可能从签名差异的大小来判断原签名对象差异的大小。作这样的简化后,有可能出现这样的情况,位置在N附近的词在排序上出现的微小变动,如第N 个词与第N+1个词位置互换了,本来是两篇相似度很高的文章,可能会被我们的算法漏掉。这对算法的影响到底有多大,我们仍需通过实验来评测。

网页消重算法(via北大天网课题组)相关推荐

  1. 网页查重算法Shingling和Simhash和bloom filter研究

    网页查重算法Shingling和Simhash和bloom filter研究 在网页查重算法中 shingling 和 simhash 被认为是当前最好的两个算法. shingling算法 shing ...

  2. 视频封面如何消重 修改视频md5 百度网盘

             视频封面如何消重 修改视频md5 百度网盘          当短视频市场的繁华落尽,回归商业本质或许是当下正道.告别表面的虚假逻辑,真正把短视频行业的发展落地到具体的商业上,探索一 ...

  3. 短视频消重批量处理软件,短视频伪原创工具,火山头条快手秒拍 今日头条自媒体搬运原创视频批量去...

    视频解析下载支持今日头条快手抖音火山映客陌陌西瓜美拍微博等 快手今日头条火山秒拍陌陌美拍抖音小咖秀视频下载软件神器或手机 视频去重消重伪原创 批量处理短视频 小视频 自媒体视频工具 快手视频搬运 快手 ...

  4. 在线编辑视频、去重消重去水印视频深度处理什么视频批量采集下载软件好?在什么网站下载好?...

    在线编辑视频.去重消重去水印 视频深度处理 什么视频批量采集下载软件好?在什么网站下载好? 有视频批量采集下载软件吗?在哪里下载安全? 好的视频去重消重去水印软件与视频下载软件 对视频进行深度处理的软 ...

  5. 短视频消重去重九种方法,组合使用原创度更高,各平台轻松过原创

    想做好视频去重,首先要了解视频查重的机制 网上流传的检查MD5其实已经过时了,现在MD5已经是过去式. 查重要对视频的方方面面进行检查,包括但不限于: 视频的标题,封面,描述,时长,标签,分辨率,背景 ...

  6. 好用的视频消重 如何查看视频md5

             好用的视频消重 如何查看视频md5          即使两年时间过去,内容层面持续打造毛毛姐.李佳琦这样的爆款网红,在社交维度上新多闪,电商层面努力孵化网红带货,抖音仍向多方出手. ...

  7. 火山小视频消重软件 什么软件可以修改视频md5

             火山小视频消重软件 什么软件可以修改视频md5          你知道吗?......                      在短视频操作中,视频修改的作用显得尤为重要,这里介 ...

  8. 手机视频消重软件 怎么修改视频的md5

             手机视频消重软件 怎么修改视频的md5          先了解下抖音用户分析的一些数据,这个也就是咱们经常说的用户画像.                      在短视频操作中, ...

  9. 快手视频消重 视频编辑后md5会变吗

             快手视频消重 视频编辑后md5会变吗          当短视频行业的发展从资本驱动的时代进入到以自我为主的发展时代,它开始尝试与外部行业实现打通,从而可以为我们打开一个更加多样化发 ...

最新文章

  1. 手机上 a 标签妙用
  2. 判断均匀平面波的极化形式_化学选修3丨分子极性如何判断?四步就能搞定!...
  3. 普通卷积armv7-neon指令集实现—QNNPACK
  4. Java 11的期望
  5. 《剑指offer》全解(图文结合,通俗易懂,一篇看爽)
  6. python pca降维_MLK | 机器学习的降维quot;打击quot;
  7. Javascript快速排序
  8. matlab聚合矩阵,c#和ILNumerics与Matlab中最有效的矩阵聚合方式
  9. jquery.serialize
  10. 51单片机原理知识点,复位时钟和时序(二)
  11. 幻想三国android官方版,幻想三国ol官方版下载
  12. swagger注解介绍
  13. 【Proteus仿真】集成运算放大器搭建以及基本功能电路
  14. 为何程序员工资高?原因都在这儿了!
  15. 油田智能化远程监控系统_油气田长停井图像远程传输监控系统
  16. Linunx报Resource temporarily unavailable解决办法
  17. 什么是Java api
  18. JPEG与jpg的区别
  19. 盛世昊通:科技赋能下,汽车产业链将面临哪些机遇和变局
  20. Mac上一款最受欢迎的SSH客户端

热门文章

  1. win10没有管理员执行权限
  2. ncode2019安装教程_nCode DesignLife|ANSYS 17.0 nCode DesignLife下载 v12.0免费版 附使用教程 - 121下载站...
  3. Navicat 12 自增长设置找不到问题
  4. 刷题笔记(二) 操作系统任务调度问题
  5. 白酒营销策划方案,如何通过社群一年做了超过8000万的营业额?
  6. 火狐浏览器安装EditThisCookie插件
  7. findwindow函数 vb 获取不到句柄_C/C++实战018:获取目录下的指定文件
  8. 基于Springboot体育馆预约管理系统
  9. SCCB协议理解及实现
  10. 智能用户增长: 一站式的消费者资产管理和运营平台