本章开始讲无监督学习,与有监督学习最大的区别是目标变量事前不存在。
本章是K-均值聚类算法。聚类是一种无监督的学习,它将相似的对象归到同一个簇中,将不相似对象归到不同簇。有点像全自动分类。聚类有时也被称为无监督分类,其产生的结果与分类相同,只是类别没有预先定义。聚类方法几乎可以应用于所有对象,簇内的对象越相似,聚类的效果越好。
K-均值聚类(K-means)算法是指将数据集分成k个不同的簇,且每个簇的中心采用簇中所含值的均值计算而成。
一、K-均值算法
1)首先,用户确定簇个数k(计划将数据划分为k个类);
2)随机确定k个初始点作为质心(在数据边界范围之内随机选取);
3)对每个数据实例依次计算到k个质心的距离,选择最小距离的质心,并将其分配给该质心所对应的簇,直到数据集中的所有数据全都分配给k个簇,更新k个簇的质心为该簇所有点的平均值;
4)循环上述步骤3),重新分配每个数据实例到新的质心,直到所有数据的分配结果不再发生改变为止。