当前位置: 首页 > news >正文

详细介绍:K-Means 聚类的目标函数:簇内误差平方和

详细介绍:K-Means 聚类的目标函数:簇内误差平方和

1. 什么是 K-Means?

K-Means 是一种无监督迭代式的聚类算法:
给定数据集 {x₁, x₂, …, xₙ} 与预设簇数 K,算法把样本划分为 K 个不相交的簇 C₁, C₂, …, Cₖ,使得同一簇内样本尽可能相似,不同簇间样本尽可能远离

核心思想:
> “让簇内‘抱团’,让簇间‘疏远’。”


2. 目标函数 J:簇内误差平方和(WCSS)

K-Means 用几何距离衡量相似性,目标函数 J 定义为:
J=∑k=1K∑x∈Ck∥x−μk∥2J = \sum_{k=1}^{K} \sum_{x \in C_k} \|x - \mu_k\|^2J=k=1KxCkxμk2

> 算法目标:找到使 J 最小的簇划分 {C₁,…,Cₖ} 与质心 {μ₁,…,μₖ}


3. 迭代两步:坐标下降求 J

K-Means 采用坐标下降策略,交替更新两个变量:

步骤固定量优化量公式
E步(Assignment)质心 μₖ样本归属 CₖCₖ = {x : ‖x − μₖ‖² ≤ ‖x − μⱼ‖², ∀j}
M步(Update)Cₖ质心 μₖμₖ = (1/Cₖ) ∑_{x∈Cₖ} x

示例

def kmeans(X, K, max_iter=100):
n, d = X.shape
mu = X[torch.randperm(n)[:K]]          # 随机初始化 K 个质心
for _ in range(max_iter):
# E步:计算距离并分配样本
dist = torch.cdist(X, mu)           # (n, K)
labels = torch.argmin(dist, dim=1)  # (n,)
# M步:重新计算质心
for k in range(K):
mask = labels == k
if mask.sum() > 0:
mu[k] = X[mask].mean(dim=0)
return labels, mu
http://www.jsqmd.com/news/389742/

相关文章:

  • K均值聚类方法求解风电功率聚类以及基于拉丁方抽样的样本削减和场景分析MATLAB代码
  • 基于Simulink的稳定频差分析:光锁相环系统性能仿真研究
  • 直接上结论:千笔·专业降AI率智能体,专科生论文降重首选
  • 摆脱论文困扰! 8个AI论文工具测评:本科生毕业论文+科研写作全攻略
  • 天猫超市购物卡回收成功后,资金多久到账? - 京顺回收
  • 效率直接起飞 8个AI论文工具测评:本科生毕业论文+科研写作必备神器
  • 本科生必看!实力封神的降AIGC软件 —— 千笔AI
  • 格式总出错?9个AI论文工具深度测评,自考毕业论文+科研写作必备!
  • AI开发-python-milvus向量数据库(2-6 -milvus-collection查看、加载、释放)
  • 2026年长治有实力的抖音广告代运营公司推荐,抖音头条信息流广告/抖音广告代运营,抖音广告代运营企业哪个好 - 品牌推荐师
  • Rollup深度解析
  • 2.17
  • StringRedisTemplate - 详解
  • 多线激光扫描仪线数越多越好吗?22线激光如何实现性能与效率平衡? - 匠言榜单
  • 自感专论(马年初一扩写版)
  • Webpack深度解析
  • 施耐德Citect运行时过程分析器选择不同时间跨度同一时刻数值不同原因分析4(续)-cicode定制过程分析器样本数量
  • 从零开始:使用 LangGraph 构建您的第一个多智能体协作系统
  • Headless UI深度解析
  • 2026考博全周期辅导,口碑机构帮你精准定位目标院校,申博套磁指导/考博AI择校服务,考博全周期辅导机构推荐榜单 - 品牌推荐师
  • 基于MPC含分布式光伏配电网有功无功协调优化复现 日前决策出各设备预测出力,日内对各设备出力进行校正
  • 一文搞懂【超详细】TCP编程与UDP编程:核心原理+实战案例
  • 本科生收藏!断层领先的降AIGC网站 —— 千笔·降AIGC助手
  • Radix UI深度解析
  • Vuetify深度解析
  • 吐血推荐!最强的降AIGC网站 —— 千笔·降AI率助手
  • Skills和Powers啥区别
  • 论文写不动?AI论文平台 千笔·专业学术智能体 VS PaperRed,专科生写作新选择!
  • 一篇搞定全流程,AI论文写作软件 千笔·专业论文写作工具 VS 锐智 AI
  • 使用PyTorch 构建模型与管理参数