千家信息网

常见的相似或相异程度计算方法

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,如何衡量数据点之间的相似或相异程度是聚类算法的基础问题,会直接影响聚类分析的效果,最直观的方法是使用距离函数或者相似性函数。常见的相似或相异程度计算方法。1.计算公式1.Minkowski dista
千家信息网最后更新 2025年12月03日常见的相似或相异程度计算方法

如何衡量数据点之间的相似或相异程度是聚类算法的基础问题,会直接影响聚类分析的效果,最直观的方法是使用距离函数或者相似性函数。

常见的相似或相异程度计算方法。

1.计算公式

1.Minkowski distance

很多距离计算方法都可以归结为基于向量p范数的距离,即Minkowski distance。

dij=(sumsh=1|xihxjh|p)1/pdij=(sumh=1s|xihxjh|p)1/p

2.Euclidean distance

参数p = 2,Minkowski distance退化为Euclidean distance,使用Euclidean distance的聚类算法大多只能发现低维空间中呈超球分布的数据,并且对数据集中的噪声比较敏感。

dij=(sumsh=1|xihxjh|2)1/2dij=(sumh=1s|xihxjh|2)1/2

3.City-block distance

参数p = 1,Minkowski distance演变为City-block distance,City-block distance可以有效提高模糊聚类算法对噪声或者孤立点的鲁棒性。

dij=sumsh=1|xihxjh|dij=sumh=1s|xihxjh|

4.Sup distance

参数p = 无穷,Minkowski distance演变为Sup distance。

dij=maxh|xihxjh|dij=maxh|xihxjh|

5.Cosine similarity

sij=xTixj||xi||||xj||sij=xiTxj||xi||||xj||

6.Mahalanobis distance

Mahalanobis distance为原特征空间中的数据在线性投影空间欧式距离,使用Mahalanobis distance能够使得聚类算法成功发现数据集里成超椭球型分布的类簇,但是Mahalanobis distance会带来较大的计算量。

dij=(xixj)TS1(xixj)dij=(xixj)TS1(xixj)

7.Alternative distance

Alternative distance对数据集里的噪声不敏感。

dij=1exp(β||xixj||2)dij=1exp(β||xixj||2)

8.Feature weighted distance

dij=(sumsh=1wah|xihxjh|)1/2dij=(sumh=1swha|xihxjh|)1/2

2.代码

代码,

import numpy as npa = np.array([1,2,3,4])b = np.array([4,3,2,1])print aprint b#Euclidean distancedistEu = np.sqrt(np.sum((a-b)**2))print "Euclidean distance = ",distEu#City-block distancedistCb = np.sum(np.abs(a-b))print "City-block distance = ",distCb#Sup distancedistSup = max(np.abs(a-b))print "Sup distance = ",distSup#Cosine similaritycosineSimi = np.dot(a,b) / (np.sqrt(np.sum(a**2)) * np.sqrt(np.sum(b**2)))print "Cosine similarity = ",cosineSimi#Alternative distancebeta = 0.5distAlter = 1 - np.exp(-beta * np.sqrt(np.sum((a - b)**2)))print "Alternative distance = ",distAlter#Feature weighted distanceweigh = np.array([0.5,0.3,0.1,0.1])distFea = np.sqrt(np.dot(weigh,np.abs(a-b)))print "Feature weighted distance = ",distFea

输出,

[1 2 3 4][4 3 2 1]Euclidean distance =  4.472135955City-block distance =  8Sup distance =  3Cosine similarity =  0.666666666667Alternative distance =  0.89312207434Feature weighted distance =  1.48323969742


数据 算法 相似 方法 参数 噪声 程度 相异 代码 函数 空间 常见 有效 较大 成功 直观 之间 公式 向量 基础 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 青岛物流软件开发教程 服务器excel管理 亿格瑞连接群晖无法登录服务器 关于网络安全的海报图片 云南中恒网络技术有限公司 网络安全电脑小报 数据库取字段的第十行 南京常用网络技术信息推荐 数据库结构模型有哪几种 我的世界服务器里怎么刷等级 朝阳区先进软件开发排名 辽宁收钱吧互联网科技有限公司 工控软件开发好还是互联网好 部队网络安全警示案例 华为cc08bam服务器组网 vb实现数据库数据查询 我们国家有自己的服务器英语 软件开发 军标 中专计算机网络技术入门教学 如何让数据库占用空间 游戏里怎么更改服务器 上海电气e学苑网络安全答案 战锤3无法访问服务器怎么办 美国软件开发中学 泾县智能软件开发服务调整 网络安全的防护门 捕鱼游戏软件开发一个多少钱 服务器通过数据结构记录用户信息 央厨配送软件开发公司 培训达内网络安全
0