K-means: optimization objective(最小化cost function来求相应的参数)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了K-means: optimization objective(最小化cost function来求相应的参数)相关的知识,希望对你有一定的参考价值。

类似于linear regression,K-means算法也optimization objective或者是试图使cost function求最小值。

了解K-means算法的optimization objective有助于我们(1)调试算法时,看算法是否运行正确(在本节中可以看到)(2)使算法找到更好的cluster,避免局部最优解(在下节中会讲)

K-means optimization objective

技术分享

uc(i):表示x(i)分给的那个cluster的cluster centroid

K表示有K个cluster,k表示cluster centoid的index.

cost function为x(i)到属于它的cluster的cluster centroid的距离的平方的累加

通过求cost function的最小值来求得参数c与u.

这个cost function有时也称为distortion cost function(失真代价函数)

K-means算法

技术分享

wrt: with respect to(关于)

Cluster assignment step:就是将u固定,C做为参数来求cost function J(C)的最小值时的C值

move centroid step: C固定,u做为参数来求cost function J(u)的最小值时的u值

通过循环来收敛求得最后的C与u

所以我们可以通过迭代次数与cost function之间的函数的关系来看程序是否是正确运行。正确运行的程序应该是随着迭代次数的增加,cost function递减而收敛

总结

  1. K-means算法的过程就是最小化cost function J来求最优化参数的过程
  2. 通过cost function是否随着迭代次数的增加而收敛来判断算法是否正确运行

 

以上是关于K-means: optimization objective(最小化cost function来求相应的参数)的主要内容,如果未能解决你的问题,请参考以下文章

4. K-Means和K-Means++实现

03-01 K-Means聚类算法

机器学习---算法---k-means算法

4.K-MEANS聚类算法

机器学习:K-Means/K-Means++

机器学习——K-means(聚类)与人脸识别