simhash去重算法实践
2017-12-20 20:52
162 查看
自己实践simhash算法的几点经验:
1 数据已处理,正则表达式去除各种转义符号
2 将文本中的数字和字母等去除
3 分词后去除停顿词
步骤,
1 文本预处理
代码步骤
1 jieba分词 获取features
2 hash函数计算hash值
3 计算海明距离AxoB(两个二进制串中不同位的个数)
将第一篇features建立index
更详细可以查看:http://blog.csdn.net/heiyeshuwu/article/details/44117473
1 数据已处理,正则表达式去除各种转义符号
2 将文本中的数字和字母等去除
3 分词后去除停顿词
步骤,
1 文本预处理
代码步骤
1 jieba分词 获取features
2 hash函数计算hash值
3 计算海明距离AxoB(两个二进制串中不同位的个数)
将第一篇features建立index
objs = [(str(0), Simhash(features))]index = SimhashIndex(objs, k=hamming_distance) 其他篇
s1 = Simhash(features)relation_list = index_s.get_near_dups(s1)if len(relation_list) == 0: index.add(str(actual_count), s1)其中actual_count只是index中s1的词典键
百度的去重算法
百度的去重算法最简单,就是直接找出此文章的最长的n句话,做一遍hash签名。n一般取3。 工程实现巨简单,据说准确率和召回率都能到达80%以上。更详细可以查看:http://blog.csdn.net/heiyeshuwu/article/details/44117473
相关文章推荐
- [转] 文本相似性算法Simhash原理及实践
- 第八周实践项目3 顺序串一些算法操作
- 第七周上机实践—项目2—建立链队算法库
- 挖掘DBLP作者合作关系,FP-Growth算法实践(1):从DBLP数据集中提取目标信息(会议、作者等)
- 第十五周实践项目1—验证算法(3)希尔排序
- 美团推荐算法实践:机器学习重排序模型成亮点
- 亿级推广流量仍能精准推荐?解读核心算法的应用实践 推荐
- 生活中实践算法之递归
- DeepID算法实践
- 第十六周上机实践项目1 - 验证算法(冒泡排序)
- 第十六周实践项目(1)—验证算法2快速排序
- simhash算法原理及实现
- 【数据结构与算法】一致性Hash算法及Java实践
- 第十六周上机实践—项目1(4)—验证算法 冒泡排序 直接选择排序
- MATLAB从入门到算法实践
- 数据挖掘系列-朴素贝叶斯分类算法原理与实践
- 经典图算法Java代码实践:BFS,DFS以及几种最短路径算法
- swift算法实践(1)
- 数据结构实践——验证算法
- 传统算法和深度学习的结合和实践,解读与优化 deepfake