【机器学习基础】机器学习入门核心:Jaccard相似度 (Jaccard Index) 和 Pearson相似度 (Pearson Correlation)

在这里插入图片描述

机器学习入门核心:Jaccard相似度 (Jaccard Index) 和 Pearson相似度 (Pearson Correlation)

      • 一、算法逻辑
        • Jaccard相似度 (Jaccard Index)
        • **Pearson相似度 (Pearson Correlation)**
      • 二、算法原理与数学推导
        • 1. Jaccard相似度公式
        • 2. Pearson相似度公式
      • 三、模型评估中的角色
        • 相似度度量的评估重点
        • 在推荐系统中的评估
      • 四、应用案例
        • Jaccard相似度案例
        • Pearson相似度案例
      • 五、面试题及答案
        • 常见问题:
      • 六、相关论文
      • 七、优缺点对比
      • 总结

一、算法逻辑

Jaccard相似度 (Jaccard Index)
  • 核心思想
    衡量两个集合的相似性,定义为 交集大小与并集大小的比值。关注样本间的 共有特征是否存在,忽略具体数值大小。
  • 适用场景
    文本相似度(词集模型)、推荐系统(用户行为二值化)、生物信息学(基因序列匹配)。
Pearson相似度 (Pearson Correlation)
  • 核心思想
    衡量两个变量间的 线性相关程度,通过协方差与标准差的比值计算。关注数值变化的 方向和幅度一致性
  • 适用场景
    推荐系统(用户评分预测)、金融(资产价格相关性)、生物统计(基因表达量相关性)。

二、算法原理与数学推导

1. Jaccard相似度公式

设集合 A A A B B B,其相似度为:
J ( A , B ) = ∣ A ∩ B ∣ ∣ A ∪ B ∣ J(A, B) = \frac{|A \cap B|}{|A \cup B|} J(A,B)=ABAB

  • 分子 ∣ A ∩ B ∣ |A \cap B| AB 为共同元素个数
  • 分母 ∣ A ∪ B ∣ = ∣ A ∣ + ∣ B ∣ − ∣ A ∩ B ∣ |A \cup B| = |A| + |B| - |A \cap B| AB=A+BAB
  • 值域 [ 0 , 1 ] [0, 1] [0,1],0 表示无交集,1 表示完全相同

扩展形式(加权Jaccard)
J w ( A , B ) = ∑ i min ⁡ ( w A , i , w B , i ) ∑ i max ⁡ ( w A , i , w B , i ) J_w(A, B) = \frac{\sum_i \min(w_{A,i}, w_{B,i})}{\sum_i \max(w_{A,i}, w_{B,i})} Jw(A,B)=imax(wA,i,wB,i)imin(wA,i,wB,i)
适用于带权重的特征(如TF-IDF)。

2. Pearson相似度公式

设变量 X X X Y Y Y 的观测值分别为 { x 1 , x 2 , . . . , x n } \{x_1, x_2, ..., x_n\} {x1,x2,...,xn} { y 1 , y 2 , . . . , y n } \{y_1, y_2, ..., y_n\} {y1,y2,...,yn},其相关系数为:
ρ X , Y = cov ( X , Y ) σ X σ Y = ∑ i = 1 n ( x i − x ˉ ) ( y i − y ˉ ) ∑ i = 1 n ( x i − x ˉ ) 2 ∑ i = 1 n ( y i − y ˉ ) 2 \rho_{X,Y} = \frac{\text{cov}(X,Y)}{\sigma_X \sigma_Y} = \frac{\sum_{i=1}^n (x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^n (x_i - \bar{x})^2} \sqrt{\sum_{i=1}^n (y_i - \bar{y})^2}} ρX,Y=σXσYcov(X,Y)=i=1n(xixˉ)2 i=1n(yiyˉ)2 i=1n(xixˉ)(yiyˉ)

  • x ˉ , y ˉ \bar{x}, \bar{y} xˉ,yˉ:样本均值
  • cov ( X , Y ) \text{cov}(X,Y) cov(X,Y):协方差
  • σ X , σ Y \sigma_X, \sigma_Y σX,σY:标准差
  • 值域 [ − 1 , 1 ] [-1, 1] [1,1]
    • 1 1 1:完全正相关
    • − 1 -1 1:完全负相关
    • 0 0 0:无线性相关

简化计算形式
ρ X , Y = n ∑ x i y i − ∑ x i ∑ y i n ∑ x i 2 − ( ∑ x i ) 2 n ∑ y i 2 − ( ∑ y i ) 2 \rho_{X,Y} = \frac{n \sum x_i y_i - \sum x_i \sum y_i}{\sqrt{n \sum x_i^2 - (\sum x_i)^2} \sqrt{n \sum y_i^2 - (\sum y_i)^2}} ρX,Y=nxi2(xi)2 nyi2(yi)2 nxiyixiyi


三、模型评估中的角色

相似度度量的评估重点
  1. 鲁棒性

    • Jaccard 对二元噪声鲁棒(如文本拼写错误)
    • Pearson 对数值异常值敏感(需数据标准化)
  2. 可解释性

    • Jaccard:直观的集合重叠比例
    • Pearson:明确的方向性(正/负相关)
  3. 计算效率

    • Jaccard: O ( n ) O(n) O(n),仅需统计元素存在性
    • Pearson: O ( n ) O(n) O(n),但需计算均值/协方差
在推荐系统中的评估
相似度适用反馈类型典型指标
Jaccard隐式反馈(点击/购买)Precision@K, Recall@K
Pearson显式反馈(评分)RMSE, MAE

四、应用案例

Jaccard相似度案例
  1. 文档去重

    • 步骤:将文档转为词集 → 计算Jaccard相似度 → 若 J > 0.9 J > 0.9 J>0.9 判定为重复
    • 工具:MinHash 加速大规模文档比较(如搜索引擎爬虫去重)
  2. 推荐系统

    • 场景:用户A购买商品集 { A , B , D } \{A,B,D\} {A,B,D},用户B购买 { A , C , D } \{A,C,D\} {A,C,D}
    • 计算: J = ∣ { A , D } ∣ ∣ { A , B , C , D } ∣ = 0.5 J = \frac{|\{A,D\}|}{|\{A,B,C,D\}|} = 0.5 J={A,B,C,D}{A,D}=0.5
Pearson相似度案例
  1. 电影推荐(Netflix)

    • 场景:用户对电影的评分数据
      用户电影X电影Y电影Z
      Alice534
      Bob42?
    • 计算Alice与Bob的Pearson相似度:
      ρ = ( 5 − 4 ) ( 4 − 3 ) + ( 3 − 4 ) ( 2 − 3 ) ( 5 − 4 ) 2 + ( 3 − 4 ) 2 ( 4 − 3 ) 2 + ( 2 − 3 ) 2 = 1 + 1 2 2 = 1 \rho = \frac{(5-4)(4-3) + (3-4)(2-3)}{\sqrt{(5-4)^2 + (3-4)^2} \sqrt{(4-3)^2 + (2-3)^2}} = \frac{1+1}{\sqrt{2}\sqrt{2}} = 1 ρ=(54)2+(34)2 (43)2+(23)2 (54)(43)+(34)(23)=2 2 1+1=1
    • 预测:Bob对Z的评分可能接近Alice的评分4
  2. 金融相关性分析

    • 计算两只股票收益率的Pearson相关系数
    • ρ > 0.8 \rho > 0.8 ρ>0.8 表示强正相关(同涨同跌)

五、面试题及答案

常见问题:
  1. Q: Jaccard和Pearson的本质区别是什么?
    A: Jaccard衡量 集合重叠度(存在性),Pearson衡量 数值变化趋势(线性相关性)。

  2. Q: 何时选用Jaccard而非Pearson?
    A: 当数据为二元特征(如是否购买)或需要忽略数值大小时(如文本关键词匹配)。

  3. Q: Pearson相关系数为0是否意味着变量独立?
    A: 否!只能说明无线性关系,但可能存在非线性关系(如二次函数)。

  4. Q: 如何处理Pearson对异常值的敏感性问题?
    A

    • 数据标准化(如Z-score)
    • 改用Spearman秩相关(基于排名而非原始值)
    • 移除离群点

六、相关论文

  1. Jaccard相似度

    • 原始论文:Jaccard, P. (1901). “Étude comparative de la distribution florale dans une portion des Alpes et des Jura”
    • 优化扩展:Broder, A. Z. (1997). “On the Resemblance and Containment of Documents”(MinHash算法)
  2. Pearson相似度

    • 原始论文:Pearson, K. (1895). “Notes on Regression and Inheritance in the Case of Two Parents”
    • 推荐系统应用:Sarwar, B. et al. (2001). “Item-based Collaborative Filtering Recommendation Algorithms”

七、优缺点对比

相似度优点缺点
Jaccard1. 计算简单高效;
2. 对二元数据直观;
3. 不受特征值大小影响
1. 忽略特征权重;
2. 对稀疏数据敏感(分母小)
Pearson1. 捕捉线性关系方向;
2. 可解释性强;
3. 标准化消除量纲影响
1. 对异常值敏感;
2. 要求数据近似正态分布;
3. 仅反映线性关系

总结

  • Jaccard相似度
    处理 二元特征集合关系 的金标准,适用于文本、图结构数据。
  • Pearson相似度
    分析 连续变量线性相关性 的核心工具,适用于评分预测、金融分析。
    关键选择依据:数据特征(二元/连续)、分析目标(存在性/趋势性)、计算效率需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/news/907763.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity3D仿星露谷物语开发57之保存库存信息到文件

1、目标 保存下面库存栏中信息到文件中。 2、修改SceneSave.cs脚本 添加2行代码: 3、修改InventoryManager对象 添加Generate GUID组件。 4、修改InventoryManager.cs脚本 添加继承自ISaveable 添加属性信息: private string _iSaveableUniqueID;pub…

测量3D翼片的距离与角度

1,目的。 测量3D翼片的距离与角度。说明: 标注A 红色框选的区域即为翼片,本示例的3D 对象共有3个翼片待测。L1与L2的距离、L1与L2的角度即为所求的翼片距离与角度。 2,原理。 使用线结构光模型(标定模式&#xff0…

深入理解 SQL 的 JOIN 查询:从基础到高级的第一步

在处理数据库时,我们常常需要从多个表中提取数据。比如想知道一个城市的天气情况,同时又想知道这个城市的具体位置。这就需要将 weather 表和 cities 表结合起来查询。这种操作在 SQL 中被称为 JOIN 查询。 现在看下两种表的情况 1.weather 表&#xff…

上传头像upload的简易方法,转base64调接口的

1.首页使用el-image显示数据&#xff0c;用的是转base64后端返给的 <el-table-column prop"avatar" align"center" label"头像"><template #default"scope"><el-image style"height: 40px;width: 40px;" :sr…

[AD] CrownJewel-1 Logon 4799+vss-ShadowCopy+NTDS.dit/SYSTEM+$MFT

QA QA攻擊者可以濫用 vssadmin 實用程式來建立卷影快照&#xff0c;然後提取 NTDS.dit 等敏感檔案來繞過安全機制。確定卷影複製服務進入運作狀態的時間。2024-05-14 03:42:16建立卷影快照時&#xff0c;磁碟區複製服務會使用機器帳戶驗證權限並列舉使用者群組。找到卷影複製過…

rtpmixsound:实现音频混音攻击!全参数详细教程!Kali Linux教程!

简介 一种将预先录制的音频与指定目标音频流中的音频&#xff08;即 RTP&#xff09;实时混合的工具。 一款用于将预先录制的音频与指定目标音频流中的音频&#xff08;即 RTP&#xff09;实时混合的工具。该工具创建于 2006 年 8 月至 9 月之间。该工具名为 rtpmixsound。它…

GitHub 趋势日报 (2025年05月28日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 2379 agenticSeek 1521 computer-science 841 n8n 577 langflow 351 qlib 282 skt…

threejsPBR材质与纹理贴图

1. PBR材质简介 本节课没有具体的代码&#xff0c;就是给大家科普一下PBR材质&#xff0c;所谓PBR就是&#xff0c;基于物理的渲染(physically-based rendering)。 Three.js提供了两个PBR材质相关的APIMeshStandardMaterial和MeshPhysicalMaterial,MeshPhysicalMaterial是Mes…

Android 12系统源码_多屏幕(四)自由窗口模式

一、小窗模式 1.1 小窗功能的开启方式 开发者模式下开启小窗功能 adb 手动开启 adb shell settings put global enable_freeform_support 1 adb shell settings put global force_resizable_activities 11.2 源码配置 copy file # add for freedom PRODUCT_COPY_FILES …

C# 将HTML文档、HTML字符串转换为图片

在.NET开发中&#xff0c;将HTML内容转换为图片的需求广泛存在于报告生成、邮件内容存档、网页快照等场景。Free Spire.Doc for .NET作为一款免费的专业文档处理库&#xff0c;无需Microsoft Word依赖&#xff0c;即可轻松实现这一功能。本文将深入解析HTML文档和字符串转图片两…

【HTML-15.2】HTML表单按钮全面指南:从基础到高级实践

表单按钮是网页交互的核心元素&#xff0c;作为用户提交数据、触发操作的主要途径&#xff0c;其重要性不言而喻。本文将系统性地介绍HTML表单按钮的各种类型、使用场景、最佳实践以及高级技巧&#xff0c;帮助开发者构建更高效、更易用的表单交互体验。 1. 基础按钮类型 1.1…

吴恩达MCP课程(4):connect_server_mcp_chatbot

目录 完整代码代码解释1. 导入和初始化2. 类型定义3. MCP_ChatBot 类初始化4. 查询处理 (process_query)5. 服务器连接管理6. 核心特性总结 示例 完整代码 原课程代码是用Anthropic写的&#xff0c;下面代码是用OpenAI改写的&#xff0c;模型则用阿里巴巴的模型做测试 .env 文…

C++内存学习

引入 在实例化对象时&#xff0c;不管是编译器还是我们自己&#xff0c;会使用构造函数给成员变量一个合适的初始值。 但是经过构造函数之后&#xff0c;我们还不能将其称为成员变量的初始化&#xff1a; 构造函数中的语句只能称为赋初值&#xff0c;而不能称作初始化 因为初…

MySQL 大战 PostgreSQL

一、底层架构对比 ​​维度​​​​MySQL​​​​PostgreSQL​​​​存储引擎​​多引擎支持&#xff08;InnoDB、MyISAM等&#xff09;单一存储引擎&#xff08;支持扩展如Zheap、Zedstore&#xff09;​​事务实现​​基于UNDO日志的MVCC基于堆表(Heap)的MVCC​​锁机制​​…

基于FPGA的二叉决策树cart算法verilog实现,训练环节采用MATLAB仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) MATLAB训练结果 上述决策树判决条件&#xff1a; 分类的决策树1 if x21<17191.5 then node 2 elseif x21>17191…

【RAG】RAG综述|一文了解RAG|从零开始(下)

文章目录 5. RAG的架构5.1 Naive RAG5.2 Advanced RAG5.2.1 检索前处理和数据索引技术5.2.2 知识分片技术5.2.3 分层索引5.2.4 检索技术5.2.4.1 优化用户查询5.2.4.2 通过假想文档嵌入修复查询和文档不对称5.2.4.3 Routing5.2.4.5 自查询检索5.2.4.6 混合搜索5.2.4.7 图检索5.2…

山东大学软件学院项目实训-基于大模型的模拟面试系统-面试官和面试记录的分享功能(2)

本文记录在发布文章时&#xff0c;可以添加自己创建的面试官和面试记录到文章中这一功能的实现。 前端 首先是在原本的界面的底部添加了两个多选框&#xff08;后期需要美化调整&#xff09; 实现的代码&#xff1a; <el-col style"margin-top: 1rem;"><e…

FPGA纯verilog实现MIPI-DSI视频编码输出,提供工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目我这里已有的 MIPI 编解码方案 3、设计思路框架工程设计原理框图FPGA内部彩条RGB数据位宽转换RGB数据缓存MIPI-DSI协议层编码MIPI-DPHY物理层串化MIPI-LVDS显示屏工程…

LXQt修改开始菜单高亮

开始菜单红色高亮很难看 mkdir -p ~/.local/share/lxqt/palettes/ mkdir -p ~/.local/share/lxqt/themes/ cp /usr/share/lxqt/palettes/Dark ~/.local/share/lxqt/palettes/Darker cp -p /usr/share/lxqt/themes/dark ~/.local/share/lxqt/themes/darker lxqt-panel.qss L…

DeepSeek-R1-0528-Qwen3-8B 本地ollama离线运行使用和llamafactory lora微调

参考: https://huggingface.co/deepseek-ai/DeepSeek-R1-0528-Qwen3-8B 量化版本: https://huggingface.co/unsloth/DeepSeek-R1-0528-Qwen3-8B-GGUF https://docs.unsloth.ai/basics/deepseek-r1-0528-how-to-run-locally 1、ollama运行 升级ollama版本到0.9.0 支持直接…