Jaccard index, 又称为Jaccard相似系数(Jaccard similarity coefficient)用于比较有限样本集之间的相似性与差异性。Jaccard系数值越大,样本相似度越高。

杰卡德相似系数

两个集合A和B交集元素的个数在A、B并集中所占的比例,称为这两个集合的杰卡德系数,用符号 J(A,B) 表示。杰卡德相似系数是衡量两个集合相似度的一种指标(余弦距离也可以用来衡量两个集合的相似度)。

Python实现:

def jaccard_sim(a, b):

unions = len(set(a).union(set(b)))

intersections = len(set(a).intersection(set(b)))

return intersections / unions

a = ['x', 'y']

b = ['x', 'z', 'v']

print(jaccard_sim(a, b))

杰卡德距离

杰卡德距离(Jaccard Distance) 是用来衡量两个集合差异性的一种指标,它是杰卡德相似系数的补集,被定义为1减去Jaccard相似系数。

杰卡德距离用两个集合中不同元素占所有元素的比例来衡量两个集合的区分度。

根据jaccard相似度可知,AB两个人一共看了五部哈利波特 ,所以并集为5;共同都看过只有1部,交集为1,因此AB相似度为1/5。AC同理。 sim(A,B)=1/5 sim(A,C)=2/4 sim(A,B)但jaccard算法不适合协同过滤,因为在协同过滤中,评分是一个很关键的参考因素,而jaccard算法忽略了其中的评分环节。

杰卡德相似度适合用于隐式反馈数据。例如,使用用户的收藏行为,计算用户之间的相似度,杰卡德相似度就适合来承担这个任务。

jaccard相似度 java_jaccard相似度算法相关推荐

  1. jaccard相似度 java_Jaccard相似度

    背景 我们网站有个功能是评价房子的户型的,开放给经纪人使用,但是呢,经纪人为了蹭展示机会,就疯狂的复制粘贴,这样就导致大量无用的信息出现,影响用户体验.之前还好,偶尔有几个人,刷个几十条的算多的了,也 ...

  2. 文本匹配相似度计算---多种距离算法 ,多种相似度计算算法,一看就懂

    常见的距离算法和相似度(相关系数)计算方法 1.常见的距离算法 1.1欧几里得距离(Euclidean Distance) 欧氏距离是最易于理解的一种距离计算方法,源自欧氏空间中两点间的距离公式. ( ...

  3. 人工智能算法之梯度下降法、协同过滤、相似度技术、ALS算法(附案例分析)、模型存储与加载、推荐系统的冷启动问题

    梯度下降法 求解机器学习算法的模型参数,即无约束优化问题时,梯度下降法是最常采用的方法之一,另一种常用的方法是最小二乘法.这里对梯度下降法做简要介绍. 最小二乘法法适用于模型方程存在解析解的情况.如果 ...

  4. SynchroTrap:基于相似度的异常检测算法

    SynchroTrap简介 什么是SynchroTrap 顾名思义,SynchroTrap即在同步情况下的欺诈.黑产通过控制大量的账号,需要在有限的时间里获取最大的利益,那不可避免的就会产生多个黑产账 ...

  5. R语言使用apriori算法进行关联规则挖掘实战:关联规则概念、频繁项集、支持度(support)、置信度(confidence)、提升度(lift)、apriori算法

    R语言使用apriori算法进行关联规则挖掘实战:关联规则概念.频繁项集.支持度(support).置信度(confidence).提升度(lift).apriori算法 目录

  6. sklearn tfidf求余弦相似度_【基础算法 】文本相似度计算

    在自然语言处理中,文本相似度是一种老生常谈而又应用广泛的基础算法模块,可用于地址标准化中计算与标准地址库中最相似的地址,也可用于问答系统中计算与用户输入问题最相近的问题及其答案,还可用于搜索中计算与输 ...

  7. (二十三)图像相似度比较哈希算法

    图像相似度比较哈希算法 相似图像搜索的哈希算法有三种: 1.均值哈希算法 2.差值哈希算法 3.感知哈希算法 什么是哈希(Hash) • 散列函数(或散列算法,又称哈希函数,英语: Hash Func ...

  8. 地球坐标转换(度分秒转度),火星坐标,百度坐标转换 c++,js ,c# 算法通用

    地球坐标,火星坐标,百度坐标转换 标准地球坐标即GPS设备获得的坐标,该坐标需要经过国家测绘局进行加密后形成火星坐标(GCJ-02 ),我们用的google坐标和高德地图坐标也就是火星坐标 百度地图, ...

  9. 层次分析法-基于节点关键度的DTN路由算法

    当你看到一个知识点的时候,不是收藏和点赞,而是想办法转化成自己需要的知识,好记性不如烂笔头. 层次分析法 层次分析法(运筹学理论),简称AHP,是指将于决策总是有关的元素分解成目标.准则.方案等层次, ...

最新文章

  1. acm经典题Mark
  2. MAPREDUCE实践篇(1)
  3. ICE专题:实现简单的聊天室(一)
  4. LeetCode 481. 神奇字符串(找规律)
  5. python 中locals() 和 globals()
  6. vue项目实践教程1:vux项目搭建和简介
  7. pytorch数据读取之Dataset与DataLoader
  8. FreeSwitch命令:切换视频会议画面布局
  9. 如何制定目标 (转自我学网)
  10. MacBook常用快捷键有哪些?
  11. 记录点滴23(中秋、国庆篇)
  12. webgame源码下载及网页游戏开发资源精华集合
  13. 7.1立体环绕追踪音效|专属个性调音台,这副头戴电竞耳机有点料
  14. python 调用matlab 数据类型问题
  15. linux下anjuta_Linux下搭建C/C++集成开发环境---Anjuta
  16. stm32 NVIC中断管理实现[直接操作寄存器]
  17. 王洪涛:大数据技术的最终目标是应用
  18. 我的同事们(四): Sang Shin
  19. 奥西400服务器维修,奥西tds400驱动
  20. python的十句名言_让人恍然大悟的十句名言(双语版)

热门文章

  1. 2023年最好用mac系统清理垃圾软件CleanMyMac X 4.12.5中文版强悍来袭
  2. 中值滤波的延时性问题
  3. 浏览器返回按钮跳转到指定页面
  4. Oracle之Hint使用总结
  5. 华为交换机配置SNMP
  6. IAR出现SWIM error [30004]问题
  7. maven打包指定jdk的版本
  8. C语言怎么输出一个叉叉图案,C语言数据结构树状输出二叉树,谁能给详细的解释一下...
  9. glHint、gluLookAt、glOrtho、gluPerspective、glViewport
  10. OpenGL中投影函数glOrtho()、glFrustum()以及gluPerspective()以及函数的用法