机器学习之聚类分析?
本文内容主要包括聚类分析介绍,原理和案例实践。
聚类分析介绍聚类分析也称无监督学习, 因为和分类学习相比,聚类的样本没有标记,需要由聚类学习算法来自动确定。聚类分析是研究如何在没有训练的条件下把样本划分为若干类。
K-means聚类算法是最为经典也是使用最为广泛的一种基于划分的聚类算法,它属于基于距离的聚类算法。
所谓基于距离的聚类算法是指采用距离作为相似性量度的评价指标,也就是说当两个对象离得近时,两者之间的距离比较小,那么它们之间的相似性就比较大。这类算法通常是由距离比较相近的对象组成簇,把得到紧凑而且独立的簇作为最终目标,因此将这类算法称为基于距离的聚类算法。K-means聚类算法就是其中比较经典的一种算法。
K-means算法,也被称为K-平均或K-均值算法,它是将各个聚类子集内的所有数据样本的均值作为该聚类的代表点,算法的主要思想是通过迭代过程把数据集划分为不同的类别,使得评价聚类性能的准则函数达到最优(误差平方和准则函数E),从而使生成的每个聚类(又称簇)内紧凑,类间独立。
K-means聚类算法原理和步骤输入:初始数据集和簇(聚类)的数目K。
输出:K个簇,满足误差平方和准则函数收敛。
算法步骤:
1)任意选择K个数据对象作为初始聚类中心;
2)将样本集中的样本按照最小距离原则分配到最邻近聚类中心;
3)使用得到的每个聚类中的样本均值作为新的聚类中心;
4)重复步骤2和3直到聚类中心不再变化,或者是直到误差平方和准则函数收敛,即|E(K+1)-E(K)|<e;
5)结束,得到K个聚类。
K-means聚类算法实例初始数据集,共5条记录,每条数据记录包含两个属性x和y。
作为一个聚类分析的二维样本,要求的簇的数量K=2,聚类过程和示意图如下所示。
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有