常用数据挖掘算法从入门到精通 第二章 K-means聚类算法
Posted 小AI咨询
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用数据挖掘算法从入门到精通 第二章 K-means聚类算法相关的知识,希望对你有一定的参考价值。
今天主要讲述K-means聚类算法,并附有详细的案例来帮助大家理解。
K-means聚类算法简介
聚类分析也称无监督学习, 因为和分类学习相比,聚类的样本没有标记,需要由聚类学习算法来自动确定。聚类分析是研究如何在没有训练的条件下把样本划分为若干类。
K-means聚类算法是最为经典也是使用最为广泛的一种基于划分的聚类算法,它属于基于距离的聚类算法。
所谓基于距离的聚类算法是指采用距离作为相似性量度的评价指标,也就是说当两个对象离得近时,两者之间的距离比较小,那么它们之间的相似性就比较大。这类算法通常是由距离比较相近的对象组成簇,把得到紧凑而且独立的簇作为最终目标,因此将这类算法称为基于距离的聚类算法。K-means聚类算法就是其中比较经典的一种算法。
K-means算法,也被称为K-平均或K-均值算法,它是将各个聚类子集内的所有数据样本的均值作为该聚类的代表点,算法的主要思想是通过迭代过程把数据集划分为不同的类别,使得评价聚类性能的准则函数达到最优(误差平方和准则函数E),从而使生成的每个聚类(又称簇)内紧凑,类间独立。
聚类
相似度准则与聚类性能评价准则
常见的相似度/距离评价准则有:
欧几里得距离
其意义就是两个元素在欧氏空间中的集合距离,因为其直观易懂且可解释性强,被广泛用于标识两个标量元素的相异度。
欧几里得距离
曼哈顿距离
曼哈顿距离
闵可夫斯基距离
闵可夫斯基距离
聚类性能评价准则:
K-means聚类算法使用误差平方和准则函数来评价聚类性能。给定数据集X,其中只包含描述属性,不包含类别属性。假设X包含K个聚类子集X1,X2,…XK;各个聚类子集中的样本数量分别为n1,n2,…,nk;各个聚类子集的均值代表点(也称聚类中心)分别为m1,m2,…,mk。
误差平方和准则函数公式
误差平方和准则函数公式
K-means聚类算法原理和步骤
输入:初始数据集和簇(聚类)的数目K。
输出:K个簇,满足误差平方和准则函数收敛。
算法步骤:
1)任意选择K个数据对象作为初始聚类中心;
2)将样本集中的样本按照最小距离原则分配到最邻近聚类中心;
3)使用得到的每个聚类中的样本均值作为新的聚类中心;
4)重复步骤2和3直到聚类中心不再变化,或者是直到误差平方和准则函数收敛,即|E(K+1)-E(K)|<e;
5)结束,得到K个聚类。
K-Means算法的工作流程
K-means聚类算法实例
初始数据集,共5条记录,每条数据记录包含两个属性x和y。
初始数据集
作为一个聚类分析的二维样本,要求的簇的数量K=2。
K-Means算法实例
K-means聚类过程图示
以上是关于常用数据挖掘算法从入门到精通 第二章 K-means聚类算法的主要内容,如果未能解决你的问题,请参考以下文章