相对于监督学习,非监督学习的输入数据没有标签信息,需要通过算法模型来挖掘数据内在的结构和模式。非监督学习主要包含两大类学习方法:数据聚类和特征变量关联。其中,聚类算法往往是通过多次迭代来找到数据的最优分割,而特征变量关联则是利用各种相关性分析方法来找到变量之间的关系。
1、K均值聚类
聚类是在事先并不知道任何样本类别标签的情况下,通过数据之间的内在关系把样本划分为若干类别,使得同类别样本之间的相似度高,不同类别之间的样本相似度低。
基本思想是,通过迭代方式寻找K个簇的一种划分方案,使得聚类结果对应的代价函数最小。特别地,代价函数可以定义为各个样本距离所属簇中心点的误差平方和。算法的具体步骤描述如下:
(1)数据预处理,如归一化、离群点处理等。
(2)随机选取K个簇中心。
(3)定义代价函数。
(4)令t = 0, 1, 2,...为迭代步数,重复厦门过程直到J收敛:
1)对于每一个样本x,将其分配到距离最近的簇。
2)对于每一个类簇,重新计算该类簇的中心。
2、K均值算法的优缺点是什么?如果进行调优?
K均值算法的主要优缺点:
(1)需要人工预先确定初始K值,且该值和真实的数据分布未必吻合。
(2)K均值只能收敛到局部最优,效果受到初始值很大影响。
(3)易受躁点的影响。
(4)样本点只能被划分到单一的类中。
调优:
(1)数据归一化和离群点处理。
K均值聚类本质上是一种基于欧式距离度量的数据划分方法,均值和方差大的维度将对数据的聚类结果产生决定性影响,所以未做归一化和统一单位的数据是无法直接参与运算和比较的。同时,离群点或者少类的噪声数据就会对均值产生较大的影响,导致中心偏移。
(2)合理选择K值。
采用手肘法,尝试不同的K值,并将不同K值所对应的损失函数画成折线,横轴为K的取值,纵轴为误差平方和所定义的损失函数。
(3)采用核函数
核聚类方法得主要思想是通过一个非线性映射,将输入空间中的数据点映射到高位的特征空间中,并在新的特征空间中进行聚类。非线性映射增加了数据点线性可分的概率。