机器学习中的相似性度量方法:闵可夫斯基距离
创作时间:
作者:
@小白创作中心
机器学习中的相似性度量方法:闵可夫斯基距离
引用
CSDN
1.
https://m.blog.csdn.net/augustme/article/details/139903405
闵可夫斯基距离(Minkowski Distance)是一种在多维空间中衡量两点间距离的方法,它是对多个其他常见距离度量方法(如曼哈顿距离、欧式距离和切比雪夫距离)的一种概括和推广。
计算公式
两个向量或者两个点A(x1, x2, x3, ..., xn)和B(y1, y2, y3, ..., yn)之间的闵可夫斯基距离定义公式为:
d(A, B) = (∑i=1n |xi - yi|p)1/p
其中,p是一个正实数参数。
- 当p=1时,闵可夫斯基距离退化为曼哈顿距离(绝对距离、城市街区距离),即:
d(A, B) = ∑i=1n |xi - yi|
- 当p=2时,闵可夫斯基距离退化为欧几里得距离(欧氏距离),即:
d(A, B) = √(∑i=1n (xi - yi)2)
- 当p→∞时,闵可夫斯基距离变为切比雪夫距离(棋盘距离),即两点在各维度上距离的最大值:
d(A, B) = lim p→∞ (∑i=1n |xi - yi|p)1/p = max(|xi - yi|)
闵可夫斯基距离由于包含了多种距离度量,因此具有较广的适用范围。根据具体的应用场景和数据特性,可以选择合适的p值来定义距离。
代码实现
下面是用Python实现的闵可夫斯基距离计算代码:
import numpy as np
def minkowski_distance(x, y, p=2):
"""
计算两个点之间的闵可夫斯基距离
参数:
x, y: 数组或列表,代表两个点的坐标
p: 正实数,闵可夫斯基距离的指数
返回:
d: 闵可夫斯基距离
"""
# 确保x和y是NumPy数组
x = np.array(x)
y = np.array(y)
# 检查x和y的维度是否相同
if x.shape != y.shape:
raise ValueError("输入的点必须具有相同的维度")
# 计算闵可夫斯基距离
diff = np.abs(x - y)
distance = np.sum(diff ** p) ** (1 / p)
return distance
# 示例数据
A = [1, 2, 3]
B = [2, 3, 5]
# 计算欧几里得距离 (p=2)
euclidean_distance = minkowski_distance(A, B, p=2)
print(f"欧几里得距离: {euclidean_distance}")
# 计算曼哈顿距离 (p=1)
manhattan_distance = minkowski_distance(A, B, p=1)
print(f"曼哈顿距离: {manhattan_distance}")
# 计算切比雪夫距离 (使用大的p值,例如1000,来近似)
chebyshev_distance = minkowski_distance(A, B, p=10000) # 注意:这不是严格的切比雪夫距离,近似
print(f"切比雪夫距离近似: {chebyshev_distance}")
# 计算闵可夫斯基距离 (p=3)
minkowski_distance_p3 = minkowski_distance(A, B, p=3)
print(f"闵可夫斯基距离 (p=3): {minkowski_distance_p3}")
输出结果:
欧几里得距离: 2.449489742783178
曼哈顿距离: 4.0
切比雪夫距离近似: 1.0000693171203765
闵可夫斯基距离 (p=3): 2.154434690031884
通过这个例子,我们可以看到不同p值下计算出的距离值,这有助于理解闵可夫斯基距离的灵活性和适用性。
热门推荐
富士山新登山费背后:揭秘这座地质奇观的保护之道
三星堆新发现:玉石器作坊揭秘古蜀文明
如何使用ChatGPT创建一份优质简历
2025:时空守护者与传统文化的复兴
人工智能培训机会如何提高就业竞争力
上下楼梯膝盖疼,走平路却没事,是怎么回事?
膝盖外侧疼痛怎么办?
如何选到靠谱的锂电池复合集流体?
电影 《周处除三害》:炫目影像视听语言下的当代救赎叙事
回避型依恋者的恋爱难题:如何表达爱意?
如何避免情感伤害?理解回避型依恋心理
红色家风助力成长:一位“新时代好少年”的养成记
炎陵税务:以“红石榴”党建品牌创新税费管理新格局
慢性阑尾炎症状 女性要注意什么
阑尾炎患者的腹痛症状属于哪类疼痛
花梨木和紫檀木哪个好?6个维度全面解析两种名贵木材
如何合理安排有限的资金使用?这种资金安排有哪些方法?
高桥和希揭秘:《游戏王》背后的文化密码
如何建立反家庭暴力的社区支持网络
近百家公司公布业绩快报,九成盈利,58家实现营收净利双增
从新手到冠军:一个游戏王决斗者的成长之路
游戏王高手教你如何在游戏中应用规则
《游戏王》最新竞技攻略:掌握高级策略技巧
从《游戏王》看武藤游戏的决斗魅力
周末探秘沈阳国家森林公园:避暑消夏好去处!
香港留学宿舍环境解读
香港大学住宿全攻略:校内宿舍申请指南及校外租房推荐
沈阳一日游:这些地方不去会后悔!
沈阳秋日摄影攻略:故宫、丁香湖、东陵必拍
两个Excel表怎么求和公式