ML08 -- 聚类算法K-means
聚类算法K-means K-means最简单的聚类算法属于无监督算法 聚类算法和分类算法的对比 - 聚类 分类 核心 将数据分成多个组,探索每个组的数据是否有联系 从已经分组的数据中去学习,把新数据放到已经分好的组中去 学习类型 无监督,无需标签进行训练 有监督,需要标签进行训练 典型算法 K-Means,DBSCAN,层次聚类 决策树,贝叶斯,逻辑回归 算法输出 聚类结果是不确定的, 不一定总是能够反映数据的真实分类, 同样的聚类,根据不同的业务需求,可能是一个好结果,也可能是一个坏结果 分类的结果是确定的, 分类的优劣是客观的, 不是根据业务或算法需求决定 关键概念:簇与质心 簇:KMeans算法将一组N个样本的特征矩阵X划分为K个无交集的簇,直观上来看簇是一组一组聚集在一起的数据,在一个簇中的数据就认为是同一类。簇是聚类结果的表现。 质心:簇中所有数据的均值uj通常被称为这个簇的质心,在一个二维平面中,一簇数据点的质心的横坐标就是这一簇数据点横坐标的均值,质心的纵坐标就是这一簇数据点的纵坐标的均值。同理可推广到高维空间。 在KMeans算法中,簇的个数K是一个超参数,需要我们人为输入来确定。KMeans的核心任务就是根据我们设定好的K,找出K个最优质心,并将离这些质心最近的数据分别分配到这些质心代表的的簇中去。具体步骤 1.随机抽取K个样本作为最初的质心 2.开始循环: 2