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

【聚类】 K-means

K-means

文章目录

  • K-means
    • 1. 算法介绍
    • 2. 公式及原理
    • 3. 伪代码

1. 算法介绍

  • 背景与目标
    K-means 是最经典、最常用的原型聚类(prototype-based clustering)算法之一,由 Stuart Lloyd 于1957年提出,1982年被广泛推广。其核心目标是:

    将给定的 n n n 个数据点划分为 K K K 个簇,使得簇内样本的相似度(通常用欧氏距离)最大化、簇间差异最大化。

  • 应用场景

    • 客户分群、市场细分
    • 图像分割(基于像素特征)
    • 文档聚类(基于文本向量)
    • 低维数据的快速可视化与预处理
  • 核心思路

    1. 初始化:在数据空间中随机选取 K K K 个点作为初始簇心(centroid),或使用 k-means++ 改进;

    2. 迭代优化

      • 分配(Assignment):将每个样本指派给最近的簇心;
      • 更新(Update):根据新的簇内样本重新计算簇心;
    3. 收敛判定:当簇心位置不再发生显著变化,或达到最大迭代次数时停止。


2. 公式及原理

2.1 目标函数
K-means 旨在最小化簇内平方误差之和(Within-Cluster Sum of Squares, WCSS):

J = ∑ j = 1 K ∑ x i ∈ C j ∥ x i − μ j ∥ 2 , J = \sum_{j=1}^K \sum_{\mathbf{x}_i \in C_j} \bigl\|\mathbf{x}_i - \boldsymbol{\mu}_j\bigr\|^2, J=j=1KxiCj xi

http://www.xdnf.cn/news/7080.html

相关文章:

  • 前端获取用户的公网 IP 地址
  • 08 Nginx模块
  • AI:OpenAI论坛分享—《AI重塑未来:技术、经济与战略》
  • 二:操作系统之进程通信(IPC)
  • WRFOUT投影转换——兰伯特转等经纬度
  • 学习黑客HTTP 请求头
  • LangGraph Platform 快速入门
  • 如何设置 MySQL 的 root 密码:详细指南
  • LLM笔记(九)KV缓存调研
  • 利用jieba分词交集运算,挑选出相同身份证
  • 华为云Astro轻应用创建业务对象(BO)的概念梳理
  • 如何用mockito+junit测试代码
  • [LevelDB]LevelDB版本管理的黑魔法-为什么能在不锁表的情况下管理数据?
  • muduo库TcpServer模块详解
  • 设备预测性维护的停机时间革命:中讯烛龙如何用AI重构工业设备管理范式
  • Linux梦开始的地方
  • 面试题总结一
  • 2025.05.17得物机考笔试真题第一题
  • iOS 工厂模式
  • 【图像生成大模型】Step-Video-T2V:下一代文本到视频生成技术
  • 数据结构与算法学习笔记(Acwing提高课)----动态规划·背包模型(四)
  • 人工智能100问☞第26问:什么是贝叶斯网络?
  • 第三章:UI 系统架构拆解与动态界面管理实录
  • PyQt5基本窗口控件(对话框类控件)
  • 配置代理服务器访问github、google
  • golang 安装gin包、创建路由基本总结
  • 定期更新Let‘s Encrypt SSL证书遇到的问题
  • 代码随想录算法训练营第六十五天| 图论10—卡码网94. 城市间货物运输 I,95. 城市间货物运输 II
  • C++11-(2)
  • 从零启动 Elasticsearch