AI学习指南机器学习篇-K均值聚类距离度量

news/2024/7/8 3:35:48 标签: ai
aidu_pl">

AI学习指南机器学习篇-K均值聚类距离度量

在机器学习领域中,K均值聚类是一种常用的无监督学习方法,它能够将数据集中的样本划分为K个不同的簇,使得同一簇内的样本相似度较高,不同簇之间的样本相似度较低。而在K均值聚类的过程中,距离度量是一项非常重要的工作,它决定了样本之间的相似度如何计算,从而影响了最终的聚类结果。

本篇文章将详细介绍K均值聚类中常用的距离度量,包括欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离等,并解释不同距离度量在聚类过程中的影响和选择。此外,我们将给出具体的示例,以便读者更好地理解和运用这些距离度量方法。

1. 欧氏距离

欧氏距离是最常用的距离度量方法之一,它在K均值聚类中也有着广泛的应用。欧氏距离是指在n维空间中,两个点之间的真实距离,它的计算公式如下:

d ( x , y ) = ( x 1 − y 1 ) 2 + ( x 2 − y 2 ) 2 + . . . + ( x n − y n ) 2 d(x,y) = \sqrt{(x_1-y_1)^2 + (x_2-y_2)^2 + ... + (x_n-y_n)^2} d(x,y)=(x1y1)2+(x2y2)2+...+(xnyn)2ail" style="min-width: 1.02em; height: 1.28em;">

其中x和y分别代表两个样本点的n维特征向量。

在K均值聚类中,使用欧氏距离来度量样本之间的相似度,计算样本点到簇中心的距离时,通过欧氏距离可以直观地表示出样本点与簇中心的远近程度。欧氏距离适用于各个特征维度对聚类结果的影响类似的情况,当特征维度差异较大时,欧氏距离的聚类效果可能会受到影响。

举个例子来说明欧氏距离在K均值聚类中的应用。假设有一个二维数据集,包含若干个样本点,我们要对这些样本点进行K均值聚类,其中K=3。首先随机初始化三个簇中心,然后计算每个样本点到这三个簇中心的欧氏距离,将每个样本点划分到距离最近的簇中心所对应的簇中。重复这个过程直到收敛为止,最终得到了三个簇,每个簇包含了一些相似的样本点。

2. 曼哈顿距离

曼哈顿距离是另一种常用的距离度量方法,它的计算公式如下:

d ( x , y ) = ∣ x 1 − y 1 ∣ + ∣ x 2 − y 2 ∣ + . . . + ∣ x n − y n ∣ d(x,y) = |x_1-y_1| + |x_2-y_2| + ... + |x_n-y_n| d(x,y)=x1y1+x2y2+...+xnyn

与欧氏距离不同的是,曼哈顿距离是指两点在标准坐标系上的绝对轴距总和。在K均值聚类中,曼哈顿距离的应用和欧氏距离类似,用于度量样本之间的相似度。曼哈顿距离在处理高维数据时可能比欧氏距离更加鲁棒,因为它更注重各个特征维度的绝对轴距总和,而不受特征维度差异的影响。

举个例子来说明曼哈顿距离在K均值聚类中的应用。假设有一个三维数据集,我们要对这些样本点进行K均值聚类,其中K=2。使用曼哈顿距离计算样本点到两个簇中心的距离,然后将每个样本点划分到距离最近的簇中心所对应的簇中。同样地,重复这个过程直到收敛为止,最终得到了两个簇,每个簇包含了一些相似的样本点。

3. 切比雪夫距离

切比雪夫距离是一种用于度量两个向量的最大距离的方法,它的计算公式如下:

d ( x , y ) = max ⁡ ( ∣ x 1 − y 1 ∣ , ∣ x 2 − y 2 ∣ , . . . , ∣ x n − y n ∣ ) d(x,y) = \max(|x_1-y_1|, |x_2-y_2|, ..., |x_n-y_n|) d(x,y)=max(x1y1,x2y2,...,xnyn)

切比雪夫距离适用于需要关注各个特征维度的最大差异的情况,因此在K均值聚类中也有着一定的应用。在一些特征维度差异很大的情况下,切比雪夫距离可能比欧氏距离和曼哈顿距离更具有鲁棒性,能够更好地度量样本间的相似度。

举个例子来说明切比雪夫距离在K均值聚类中的应用。假设有一个二维数据集,我们要对这些样本点进行K均值聚类。使用切比雪夫距离计算样本点到簇中心的距离,然后将每个样本点划分到距离最近的簇中心所对应的簇中。同样地,重复这个过程直到收敛为止,最终得到了K个簇,每个簇包含了一些相似的样本点。

4. 闵可夫斯基距离

闵可夫斯基距离是一种通用的距离度量方法,它可以根据参数p的不同,分别退化为欧氏距离、曼哈顿距离和切比雪夫距离。其计算公式如下:

d ( x , y ) = ( ∑ i = 1 n ∣ x i − y i ∣ p ) 1 p d(x,y) = \left(\sum_{i=1}^{n}|x_i-y_i|^p\right)^{\frac{1}{p}} d(x,y)=(i=1nxiyip)p1

其中p可以取不同的值,当p=2时为欧氏距离,当p=1时为曼哈顿距离,当p=∞时为切比雪夫距离。

在K均值聚类中,闵可夫斯基距离可以根据不同的p值,灵活地选择欧氏距离、曼哈顿距离和切比雪夫距离来度量样本间的相似度。这样就可以更好地适应不同特征维度的差异性,提高聚类的准确性和稳定性。

在K均值聚类中使用闵可夫斯基距离有一个明显的好处,即可以根据实际情况选择合适的p值,以适应不同的数据特点。比如在处理高维数据时,可以选择较大的p值来更加关注各个特征维度之间的最大差异;在处理低维数据时,可以选择较小的p值来更加平衡各个特征维度之间的差异性。

综上所述,K均值聚类中的距离度量是至关重要的,它直接影响了聚类结果的好坏。不同的距离度量方法各有优劣,适用于不同的数据特点。在实际应用中,需要根据具体的数据情况来灵活选择合适的距离度量方法,并结合K均值聚类的迭代优化过程,以获得更加准确和稳定的聚类结果。


http://www.niftyadmin.cn/n/5536439.html

相关文章

FPGA的理解,个人的见解,不一定对

类似于面包板上搭建电路,但是使用的是逻辑单元模块;如加法器,减法器,寄存器等 没有模拟电路的电容,电阻;但是逻辑单元的底层实现,使用MOS管等电路实现电路的开关;从而表示0&#xf…

【国产开源可视化引擎Meta2d.js】快速上手

提示 初始化引擎后,会生成一个 meta2d 全局对象,可直接使用。 调用meta2d前,需要确保meta2d所在的父容器element元素位置大小已经渲染完成。如果样式或css(特别是css动画)没有初始化完成,可能会报错&…

【HarmonyOS NEXT】鸿蒙如何动态添加组件(NodeController)

NodeController用于实现自定义节点的创建、显示、更新等操作的管理,并负责将自定义节点挂载到NodeContainer上。 说明 本模块首批接口从API version 11开始支持 当前不支持在预览器中使用NodeController。 导入模块 import { NodeController } from "ohos…

LeetCode热题100刷题6:160. 相交链表、206. 反转链表、234. 回文链表、141. 环形链表、142. 环形链表 II

160. 相交链表 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/ class Solution { public:ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {ListNode…

JVM的五大内存区域

JVM的五大内存区域 JVM内存区域最粗略的划分可以分为 堆 和 栈 ,当然,按照虚拟机规范,可以划分为以下几个区域: JVM内存分为线程独享区和线程共享区, 其中 方法区 和 堆 是线程共享区, 虚拟机栈, 本地方法…

SQL中使用NEXTVAL获取序列值

SQL中使用NEXTVAL获取序列值 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 在关系型数据库中,序列(Sequence)是一种对象&a…

Word使用中的一些烦人的小问题

文章目录 前言一、表格满一页后再插入行无法显示二、文字显示半截 前言 使用word的时候有一些莫名其妙的情况出现,想问度娘还很难用文字来描述问题,随时记录一下方便以后看 一、表格满一页后再插入行无法显示 点击表格左上方的全选按钮,下一…

【数智化人物展】数势科技创始人兼CEO黎科峰:数智化时代To B软件行业面临颠覆与重塑...

黎科峰 本文由数势科技创始人兼CEO黎科峰投递并参与由数据猿联合上海大数据联盟共同推出的《2024中国数智化转型升级先锋人物》榜单/奖项评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 2020年,对我而言,是职业生涯中的一个重大转折点。在全球新…