K-means损失函数-收敛证明

K-means 聚类算法的损失函数推导与收敛性证明的核心过程,通过数学推导解释了 K-means "迭代更新聚类中心" 的合理性

K-means 的迭代过程是 "分配样本到最近中心→更新中心为类内质心" 的循环。

上述推导从数学上保证了:

每次更新聚类中心 μk 时,损失函数 J 都会严格减小或保持不变(因为是通过求导找极小值点);

由于损失函数 J 是 "距离平方和",其取值下界为 0(不可能无限减小)

因此迭代过程必然收敛(即 J 最终会稳定在某个最小值,聚类中心不再变化)

示例

通过一个二维数据集的具体案例,完整演示 K-means 损失函数的推导和收敛性证明逻辑

(从结果反向推到)

注意:步骤2中的x是个二维坐标

注意:下文的 x1 和 x2 指的是 x 的横坐标和纵坐标;uk1 和 uk2 指的是 uk 的横坐标和纵坐标

计算出来的结果为 4

迭代 2:聚类中心无变化,损失函数稳定

由于迭代 1 后聚类中心已无变化,样本分配也不再改变,损失函数 J 保持为 4,迭代终止

损失函数 J 从初始随机状态(若初始中心选得差,J 会更大)逐渐减小到 4 后稳定

每次更新聚类中心时,J 单调递减(或不变),且因下界为 0,迭代必然收敛

附录

什么是损失函数

损失函数(Loss Function) 是机器学习和优化领域的核心工具,用于量化模型预测结果与真实结果的 "差异程度",是指导模型迭代优化的 "指南针"。

定义:损失函数是一个数学函数,输入为 "模型预测值" 和 "真实标签(或目标值)",输出为一个标量数值,该数值越大表示 "预测与真实的差异越大",模型性能越差。

核心作用:为模型优化提供方向------ 通过最小化损失函数,让模型的预测尽可能接近真实结果,从而提升泛化能力。

关键特性总结

单调性:预测与真实的差异越大,损失函数值越大

可导性:多数损失函数是可导的,这是 "梯度下降" 等优化算法能生效的前提

任务特异性:不同任务(分类、回归、聚类)需选择适配的损失函数,否则会导致优化方向错误

简言之,损失函数是 "模型性能的量化标尺",它将 "模型好不好" 转化为数学上的 "数值大小",让模型的优化过程可计算、可迭代。

相关推荐
林泽毅17 分钟前
PyTRIO:当强化学习不再需要本地GPU
人工智能·python·深度学习·机器学习
小陈phd27 分钟前
QAnything 阅读优化策略05——检索
人工智能·python·机器学习
稚南城才子,乌衣巷风流39 分钟前
ST 表(Sparse Table)算法详解:原理、实现与应用
算法
hold?fish:palm1 小时前
9 找到字符串中所有字母异位词
c++·算法·leetcode
Sw1zzle1 小时前
算法入门(六):贪心算法 - 基础入门(Leetcode 121/455/860/376/738)
算法·leetcode·贪心算法
青山木1 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先
不会就选b2 小时前
算法日常・每日刷题--<归并排序>1
数据结构·算法
危桥带雨2 小时前
排序算法(快排、归并、计数、基数排序)
数据结构·算法·排序算法
啦啦啦啦啦zzzz2 小时前
算法:回溯算法
c++·算法·leetcode