机器学习--K-Means

K均值聚类

算法过程

K − m e a n s K-means K−means 是 聚类 c l u s t e r i n g clustering clustering 算法的一种,就是给你一坨东西,让你给他们分类:

我们的 K − m e a n s K-means K−means 大概是这样一个流程:

  1. 第一步随机生成两个点(因为这里我想分两类,你想分几类你就弄几个点),标记为两个聚类中心 c l u s t e r    c e n t r i o d cluster \; centriod clustercentriod,像这样:
  1. 然后重复以下两个步骤:

1. 遍历每个点 x ( i ) x^{(i)} x(i),分别计算点 x ( i ) x^{(i)} x(i) 到两个聚类中心的距离 d 1 d_1 d1 和 d 2 d_2 d2,然后比较大小。并标记这个点为距离更小的那一类

2. 分别遍历同一类的所有点,计算这些点的几何平均位置,并把聚类中心移动到这个位置

这样说起来可能很抽象,我们还是用图像来更清晰的表示一下这个过程:

图画到这里我们就能明显的观察到两个聚类已经被划分好了。

优化目标函数

像前面介绍的线性回归、逻辑回归、 S V M SVM SVM 一样,这里的 K − m e a n s K-means K−means 也有一个用于优化的函数:

n o t a t i o n notation notation: c i c_i ci 表示点 x i x_i xi 的类别, μ k \mu_k μk 表示聚类中心 k k k, μ c i \mu_{c_i} μci 表示 x i x_i xi 所属的那个聚类中心

J ( c 1 , ⋯   , c m , μ 1 , ⋯   , μ K ) = 1 m ∑ i = 1 m ∣ x i − μ c i ∣ 2 J(c_1, \cdots, c_m, \mu_1, \cdots, \mu_K) = \frac{1}{m}\sum_{i = 1}^m |x_i - \mu_{c_i}|^2 J(c1,⋯,cm,μ1,⋯,μK)=m1i=1∑m∣xi−μci∣2

我们要做的就是:

min ⁡ c , μ J ( c 1 , ⋯   , c m , μ 1 , ⋯   , μ K ) \min\limits_{c, \mu} J(c_1, \cdots, c_m, \mu_1, \cdots, \mu_K) c,μminJ(c1,⋯,cm,μ1,⋯,μK)

看得出来,这就是要最小化所有点 x i x_i xi 与其所属的聚类中心 μ x i \mu_{x_i} μxi 的距离的平方和。

跑 114514 114514 114514次 k − m e a n s k-means k−means

可能你也注意到了,我们如果只跑一遍 k − m e a n s k-means k−means 的话可能不会得到一个很好的分类方案,所以我们考虑每次随机初始化聚类中心,然后跑很多遍(取决于你的数据规模和时间) k − m e a n s k-means k−means,对于每次计算出来的 c , μ c, \mu c,μ 算出它的 J ( c , μ ) J(c, \mu) J(c,μ),然后在其中选择 J ( c , μ ) J(c, \mu) J(c,μ) 最小的那个分类方案作为最后的答案。

相关推荐
网管NO.14 分钟前
OpenClaw 完全卸载指南(Windows + WSL2)
网络·人工智能·windows·ubuntu
逆境不可逃4 分钟前
【用AI学Agent】Agent入门进阶:Prompt工程
大数据·数据库·人工智能
HoneyMoose5 分钟前
草台班子和 AI 泡沫
人工智能
四千岁6 分钟前
保姆级教程:WSL 安装 Ollama,本地免费跑开源大模型
人工智能
七七powerful6 分钟前
运维养龙虾--用 AI 驾驭 Zabbix:zabbix-mcp-server 深度指南
人工智能·zabbix·zabbix mcp
小马过河R8 分钟前
AI时代下的CLI优势与MCP对比
人工智能·ai·语言模型·agent·cli·智能体·mcp
Web3VentureView11 分钟前
SYNBO 已上线 BitMart 交易所,Synbo Camp 同步开启
人工智能·区块链·媒体·加密货币·synbo
kay_54511 分钟前
YOLO26 | 注意力机制 | 以分解式双层注意力提升语义表达与细节捕捉【完整步骤】
人工智能·目标检测·计算机视觉·目标跟踪·视觉检测·yolo26·yolo26改进
itpan806712 分钟前
Claude Code 源码分析技术文档
人工智能
用户51914958484513 分钟前
Cacti 1.2.26 远程代码执行漏洞利用工具 (CVE-2024-25641)
人工智能·aigc