聚类算法简介
聚类算法是一种典型的无监督学习算法,是根据样本之间的相似性,将样本分划到不同的类别中对于不同的相似度计算⽅法,会得到不同的聚类结果,常⽤的相似度计算⽅法有欧式距离法。
聚类算法的应用范围很广,包含以下例子:
- ⽤户画像,⼴告推荐,Data Segmentation,搜索引擎的流量推荐,恶意流量识别
- 基于位置信息的商业推送,新闻聚类,筛选排序
- 图像分割,降维,识别;离群点检测;信⽤卡异常消费;发掘相同功能的基因⽚段
KMeans算法
KMeans是聚类算法中的一种,按照字母意义理解可以分为两层:
- K表示初始的中心点数,即计划分为几个类别
- Means表示中心点到其他数据点的距离均值
KMeans算法原理
- 随机设置K个特征空间内的点作为初始聚类的中心点;
- 计算其他每个点到K个中心点的距离,这个点跟那个中心点最近则将其标记为该类别;
- 接着计算所有标记为同一类点的平均值,作为新的中心点;
- 如果该中心点跟上一次的中心点一样,则计算结束,否则重复2-3的步骤;
- 最终确定每个样本所属的类别及其类别质心。
聚类算法评估
聚类算法的评估方法主要采用以下三种:SSE、肘方法和SC系数:
SSE误差平方和(The sum of squares due to error)
SSE是预测值与真实值之间