【机器学习】K-Means算法

一.引言


有人认为k-means算法是由J.B.MacQueen在1967年提出的,也有人认为k-means聚类算法是由Steinhaus(1955)、Lloyd(1957)、Ball和Hall(1965)、McQueen(1967)分别在各自不同的科学研究领域独立地提出。但大多数人认为MacQueen提出了 k-means算法[2],他总结了Cox[3],Fisher[4],Sebestyen[5]等的研究成果,给出了k-means算法的详细步骤,并用数学方法进行了证明。
但不管怎么样,距离至今,k-means算法已经将近有50年的历史了,很多人仍旧对它进行研究和改进,工业界也常常看见它的身影。

二.原理

k-mean又叫k均值算法,它是一种聚类算法,聚类算法在机器学习中属于无监督的学习算法(Unsupervised Learning),其中k表示聚类后类别的个数,k是人为预先指定的。

看到这,我们也许会想几个问题:

  • (1). k的值是人为的选取,有没有一套科学指导方法? 往往给定一个数据集,我们事先并不知道应该要把该数据集划分成多少类才合适。
  • (2).如何对数据集划分呢?对于其中的任何一条数据记录,我们该把它归为k类中的哪一类?
  • (3).如何知道最后得到的聚类结果是好还是坏呢?也就是说有没有一个标准去测试聚类结果的好坏。

带着这些问题我们先看看聚类算法的核心思想
给定一个数据集,它有n条数据记录


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部