机器学习如何度量相似性 Cosine

【Python机器学习】零基础掌握Pairwise辅助工具集评估函数方法 通过对, 和等函数的综合运用能够在数据科学和机器学习的项目中更深入地了解数据的特性和结构。这些函数提供的丰富的距离和相似性度量手段,揭示数据间复杂关系提供了强大的工具。无论是处理小规模数据集还是大规模数据集,无论是线性关系还是非线性关系,Scikit-learn的这一系列函数都能够提供灵活而高效的解决方案。它们不仅能够更好地理解数据,还能够基于这些洞察做出更明智的决策和预测,从而在各种应用领域取得成功。 阅读详情

夹角余弦(Cosine)

   几何中夹角余弦可用来衡量两个向量方向的差异,机器学习中借用这一概念来衡量样本向量之间的差异。

(1)在二维空间中向量A(x1,y1)与向量B(x2,y2)的夹角余弦公式:

(2) 两个n维样本点a(x11,x12,…,x1n)和b(x21,x22,…,x2n)的夹角余弦。类似的,对于两个n维样本点a(x11,x12,…,x1n)和b(x21,x22,…,x2n),可以使用类似于夹角余弦的概念来衡量它们间的相似程度。

  即:

       夹角余弦取值范围为[-1,1]。夹角余弦越大表示两个向量的夹角越小,夹角余弦越小表示两向量的夹角越大。当两个向量的方向重合时夹角余弦取最大值1,当两个向量的方向完全相反夹角余弦取最小值-1。

       夹角余弦的具体应用可以参阅参考文献[吴军. 数学之美 系列 12 - 余弦定理和新闻的分类.]。

(3)Matlab计算夹角余弦

例子:计算(1,0)、( 1,1.732)、( -1,0)两两间的夹角余弦

X = [1 0 ; 1 1.732 ; -1 0]

D = 1- pdist(X, 'cosine')  % Matlab中的pdist(X, 'cosine')得到的是1减夹角余弦的值

结果:

D =

    0.5000   -1.0000   -0.5000


pdist的函数的详解,见博客点击打开链接

                     

                   这里我们还要用到一个函数 squareform,把行向量,变为举证D ,其中D(i,j)  D(j,i)代表 i 和j 的相似度/距离。

上源码

 

 clear
>> X = [1 0 ; 1 1.732 ; -1 0]

X =

    1.0000         0
    1.0000    1.7320
   -1.0000         0

>> D = 1- pdist(X, 'cosine')

D =

    0.5000   -1.0000   -0.5000

>> squareform(D)

ans =

         0    0.5000   -1.0000
    0.5000         0   -0.5000
   -1.0000   -0.5000         0


参考文章:点击打开链接      

                 

【DL经典回顾】距离度量大汇总(7-余弦距离(Cosine Distance)) 余弦距离(Cosine Distance)衡量的是两个向量在方向上的差异性,而不是在大小上的差异。 阅读详情

相关推荐

Unity类银河战士恶魔城学习总结(P103之前 Enemy相关 , 骷髅战士,状态机,敌人状态,)

udemy的Alex银河战士恶魔城,记录我自己的学习,代码会逐渐每一p更新,仅供参考学习。

suzh1qian的博客 1633

【白话数据分析】距离度量的相似度计算

在数据分析和数据挖掘中,经常需要数值化样本个体间差异的大小,进而评价个体的相似度或者进行分类。比如统计分析中的相关性分析,数据挖掘中进行的KNN分类与K-means聚类,还有推荐系统算法中搜索引擎的物品推荐。 为了能由简及易的深刻阐述样本相似度的基本原理和应用,我们从一个基本的例子出发,并且结合程序计算,结合图像直观区分各个相似之间的差异。 由距离引出的相似度 欧几里得距离 曼哈顿距离 闵可夫斯基距离 余弦相似度 杰卡德相似度 皮尔逊相关系数 样本 特征1 特征2 特征3 特征4 .

qq_41775769的博客 2454

高德地图JS API私有化部署实战:从数据爬取到内网集成

本文详细介绍了高德地图JS API私有化部署的完整流程,涵盖从地图瓦片数据爬取、JS API离线化改造到内网项目集成的实战步骤。重点解决了在封闭内网环境中实现地图功能的核心难题,并提供了Vue.js项目中的具体集成代码与调试技巧,帮助开发者在离线环境下构建稳定可靠的地图应用。

weixin_29062255的博客 318

【sklearn练习】KMeans ---- iris(鸢尾花)数据集聚类评估

文章目录一、数据集探索二、数据预处理三、构建模型获取结果四、聚类结果可视化五、聚类模型评估① 轮廓系数② 卡林斯基 - 哈拉巴斯指数③ FMI评价法 一、数据集探索 iris数据集是常用的分类实验数据集,由Fisher,1936收集整理。iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。数据集包含150个数据样本,分为3类,每类50个数据,每个数据包含4个属性。可通过花萼长度,花萼宽度,花瓣长度,花瓣宽度4个属性预测鸢尾花卉属于(Setosa,Versicolour,Virginica)三个种..

懂得一千零一种,赋予你失败的方法! 1万+

使用机器学习算法预测黄金价格

在本文中,我们将使用线性回归、XGBoost和LSTM这三种不同的机器学习算法来预测黄金价格。接下来,我们使用线性回归、XGBoost和LSTM分别建立了模型,并进行了训练和预测。这些机器学习算法可以帮助我们对黄金价格进行预测,但请注意,市场价格受多种因素影响,因此预测结果可能并不完全准确。接下来,我们需要对数据进行一些预处理,以便用于机器学习模型的训练和测试。我们将使用80%的数据作为训练集,20%的数据作为测试集。最后,我们将绘制每个模型的预测结果,并将其与实际价格进行比较,以评估模型的性能。

QromMatlab的博客 1316

Vue3 - 详细实现接入使用海康威视监控云端显示及控制功能,网站集成安装海康监控及实时监控显示、回放、放大缩小画面、视频画面截图、截屏抓拍、摄像头控制,实时推流及播放器解决延迟卡顿等问题(详细代码)

vue3,nuxt3,海康威视,海康监控,摄像头监控,实时监控画面,海康插件,视频播放,回放,视频流地址,取流协议,视频sdk播放,hik,rtsp,rtmp,hls,ws,网站,网页,h5页面,后台管理系统,vue3对接海康监控设备,无法连接,报错,vue3对接海康处理接口认证规则,监控实时预览和回放功能,海康api接口,安全认证,海康开放平台,官方文档,播放海康摄像头的监控视频,海康实时监控播放详细步骤,web,黑屏,特别卡不流畅怎么办,解决无法推流,录像,连接不上,vue3,海康,vue海康视频监控,

🏆 前端领域优质创作者 1万+

k-mean的简单实现 机器学习

k-mean算法简单实现

qq_55896320的博客 429

分数间隔均衡器的基本原理及应用(使用Matlab)

通过对接收信号进行加权求和,分数间隔均衡器可以抵消信号在传输过程中受到的频率响应失真。Matlab提供了丰富的工具和函数,可以方便地实现分数间隔均衡器,并进行性能评估。分数间隔均衡器(Fractional Interval Equalizer)是一种数字信号处理技术,用于均衡带通信道中的信号失真。分数间隔均衡器的基本原理是通过对接收信号进行加权求和,以抵消信号在传输过程中受到的频率响应失真。分数间隔均衡器在通信系统中具有广泛的应用。最后,我们通过比较均衡后的信号和发送数据的阈值来进行解调,并计算误码率。

2301_79325657的博客 680

度量学习 度量函数 metric learning deep metric learning 深度度量学习

曼哈顿距离(CityBlockSimilarity) 同欧式距离相似,都是用于多维数据空间距离的测度。 欧式距离(Euclidean Distance) 用于衡量多维空间中各个点之间的绝对距离。使用时各个维度量级最好能够在同一个尺度上。 马氏距离(Mahalanobis distance) 一种有效的计算两个未知样本集的相似度的方法。与欧氏距离将所有维度同等看待不同,其考虑到各种...

心之所向 2万+

FPGA开发中的操作系统

在FPGA开发中,操作系统起着关键的作用,它负责任务管理、资源管理、中断处理和设备驱动程序等功能。在实际的FPGA开发中,可以选择使用现有的操作系统,如MicroC/OS-II、FreeRTOS等,或者根据具体需求自行设计和开发操作系统。在FPGA(可编程逻辑门阵列)开发中,操作系统扮演着关键的角色,为硬件设计师提供了一种有效的方式来管理资源、调度任务并实现系统级功能。本文将介绍FPGA开发中的操作系统概念,并提供一个简单的示例代码来说明如何在FPGA平台上实现一个基本的操作系统。

CqpFsharp的博客 1156

论文工具——写论文好用的绘图工具(甘特图+流程图+网络模型图+泳道图)

* 在写HiFi-GAN论文的代码阅读过程中,我发现仅仅通过文字来描述网络结构,不够详细,所以想绘制出网络结构图,更加具象化的描述出网络结构。想去花了,才发现之前都是通过在线绘图网站画的,费时费力,所以想找一些专门的网站化出比较规范并且高质量的图。一方面是为了方便讲解,提高论文的质量,另外一方面也是为了以后写论文打下良好的基础。 * 这篇文章会根据我以前的画图经验展开,以前是使用绘图软件,手动绘图。后来,看到了其他的方法,但是需要写一些代码,或者需要安装特定的软件,投入成本太大,就没有学。所以,本文分享的工

Blackoutdragon的博客 1万+

相似度度量

度量相似度的方法很多,不同方法适用于不同的场景和数据类型。核函数将数据投影到高维空间,在高维空间中计算相似性,常用于支持向量机(SVM)、核 PCA 等。对于具体应用,如果是非线性数据或者想要捕捉复杂的相似性关系,可以尝试。这些方法通常用于衡量两个向量(特征)的方向或大小的相似性。信息论度量方法通常用于概率分布或分类任务。这些方法多用于图像、嵌入、或生成模型任务。如果是概率分布间的相似度,

ZacharyGz的博客 1443

【深度学习新浪潮】算力上太空:NVIDIA Space-1 Vera Rubin Module 深度技术解析

NVIDIA Space-1 Vera Rubin Module 不只是一款芯片模组,它是天地一体化 AI 的基础设施底座。它用成熟的 GPU 架构 + 航天级加固,把地面 AI 生态直接平移到太空。下一个 AI 创新战场,不在云端,而在轨道。在轨 LLM星上多模态实时处理卫星自主组网与分布式推理太空算力成为云计算的一级节点参考资料NVIDIA 官方博客:NVIDIA 推出太空计算,将 AI 送入太空轨道GTC 2026 黄仁勋主题演讲。

专注:太空算力、AI infra、异构调度、大模型成本工程 1125

常见相似性度量指标的全面介绍

相似性度量指标是数据分析中不可或缺的工具。集合相似性推荐Jaccard和Dice。向量相似性推荐Cosine和Tanimoto。定制化需求可以使用Tversky指数进行权重调整。

m0_68989328的博客 1803

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

机器学习中的数学——相似性度量(一):余弦相似度(Cosine Similarity)

本文深入解析机器学习中的余弦相似度(Cosine Similarity),从数学原理到实战应用全面讲解。通过对比欧氏距离,突出余弦相似度在文本处理、推荐系统等高维稀疏数据场景中的独特优势,并提供Python实现技巧和典型应用案例,帮助开发者高效掌握这一核心相似性度量方法。

weixin_30443813的博客 270

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

机器学习中距离和相似性度量方法

在机器学习和数据挖掘中,我们经常需要知道个体间差异的大小,进而评价个体的相似性和类别。最常见的是数据分析中的相关分析,数据挖掘中的分类和聚类算法,如 K 最近邻(KNN)和 K 均值(K-Means)等等。根据数据特性的不同,可以采用不同的度量方法。一般而言,定义一个距离函数 d(x,y), 需要满足下面几个准则: 1) d(x,x) = 0 // 到自己的...

永远飞翔的鸟 4867

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

文本相似性度量: 算法与性能

1.背景介绍 在当今的大数据时代,文本数据的产生和处理已经成为了一种日常事件。从社交媒体、新闻报道、论文、博客到商品描述、用户评价等,文本数据在各个领域都有广泛的应用。随着数据的增长,文本相似性度量的研究和应用也逐渐成为了关注的焦点。文本相似性度量是指用于衡量两个文本之间相似性的算法和方法,它可以用于文本检索、文本摘要、文本分类、垃圾邮件过滤、机器翻译等多种应用场景。本文将从算法、性能和实例等方...

AI天才研究院 902

距离和相似性度量

在机器学习中,经常需要比较个体间差异的大小,进而评价个体的相似性和类别。最常见的是数据分析中的相关分析,数据挖掘中的分类和聚类算法,如K最近邻(KNN)和K均值(K-Means)等。其中,衡量个体间差异的方法,主要分为距离度量和相似性度量。为了方便下面的解释和举例,先设定我们要比较X个体和Y个体间的差异,它们都包含了N个维的特征,即X=(x1, x2, x3, … xn),Y=(y1, y2, y3, … yn)。

crossoverpptx的博客 663

机器学习领域几种距离度量方法metric详解

对scipy.spatial.distance.pdist

Yanir的博客 9479

机器学习中的数学——距离定义(八):余弦距离(Cosine Distance)

余弦距离(Cosine Distance)也可以叫余弦相似度。 几何中夹角余弦可用来衡量两个向量方向的差异,机器学习中借用这一概念来衡量样本向量之间的差异。相比距离度量,余弦相似度更加注重两个向量在方向上的差异,而非距离或长度上。nnn维空间中的余弦距离为: cos⁡(x,y)=x⋅y∣x∣⋅∣y∣=∑i=1nxiyi∑i=1nxi2∑i=1nyi2\cos(x, y)=\frac{x\cdot y}{|x|\cdot|y|}=\frac{\sum_{i=1}^nx_iy_i}{\sqrt{\sum_{i=

冯·诺依曼 5万+

L2 和 COSINE 的区别?文本检索用什么呢?

字段索引使用的是withMetricType(MetricType.COSINE)在。方法里用了withMetricType(MetricType.L2),它们决定了 Milvus 如何计算两个向量之间的相似度。cosine和L2到底是什么?这两个参数有什么区别?) 是 Milvus 进行向量相似性搜索时用的。(比如图像特征、物理空间坐标)。(比如文本相似性、语义匹配)。

童龙辉的博客 1489

机器学习中的各种相似性、距离度量

引自:http://blog.youkuaiyun.com/lg1259156776/ 说明:主要参考了博文《漫谈机器学习中的距离和相似性度量方法》。具体的计算方法可以参看我的上一篇博文《【Matlab开发】matlab中bar绘图设置与各种距离度量》。本文主要关注点在于各个距离、相似度之间的优缺点,及使用时候的注意事项。 1. 闵可夫斯基距离 基本认识 该距离最常用的 p 是

T.s.road 2517

距离和相似度度量方法

http://blog.youkuaiyun.com/pipisorry/article/details/45651315 在机器学习和数据挖掘中,我们经常需要知道个体间差异的大小,进而评价个体的相似性和类别。最常见的是数据分析中的相关分析,数据挖掘中的分类和聚类算法,如 K 最近邻(KNN)和 K 均值(K-Means)等等。 不同距离度量的应用场景 根据数据特性的不同,可以采用不同的度量方法。whi...

皮皮blog 10万+

【Milvus】 支持的度量类型(Metric Types)列举和说明

Milvus 支持的度量类型涵盖浮点向量(L2、IP、COSINE)、二进制向量(HAMMING、JACCARD、TANIMOTO)和稀疏向量(IP),满足多样化的相似性计算需求。浮点向量度量适用于通用场景,二进制向量度量高效且节省存储,稀疏向量度量专为稀疏数据优化。度量类型决定了如何计算两个向量之间的距离或相似度,选择度量类型时,需考虑向量类型、数据预处理(如归一化)和应用场景(如语义搜索或集合比较)。

彬彬侠的博客 2734

漫谈:机器学习中距离和相似性度量方法

漫谈:机器学习中距离和相似性度量方法 在机器学习和数据挖掘中,我们经常需要知道个体间差异的大小,进而评价个体的相似性和类别。最常见的是数据分析中的相关分析,数据挖掘中的分类和聚类算法,如 K 最近邻(KNN)和 K 均值(K-Means)等等。根据数据特性的不同,可以采用不同的度量方法。一般而言,定义一个距离函数 d(x,y), 需要满足下面几个准则: 1) d(x,x) = 0

u010384318的专栏 1738
上一篇: C++ new 和delete
下一篇: Unable to open log device '/dev/log/main': No such file or directory
yes1cpp
博客等级 码龄14年 15粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值