赞
踩
本质是物以类聚
是典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大
该算法把得到紧凑且独立的簇作为最终目标
因为需要计算距离,所以决定了k-means算法只能处理数值型数据,而不能处理分类属性型数据
1.k值如何确定?
手肘法确定k值:
样本客观存在J个自然小类,这些真实存在的小类是隐藏于数据中的
我们需要从一个比较小的k,譬如k=2开始尝试,去逼近这个真实值J
2.讲下K-Means算法改进,遇到异常值怎么办?评估算法的指标有哪些?
改进:
遇到异常值:
评估聚类算法的指标:
3.在k-means或KNN,我们是用欧氏距离来计算最近的邻居之间的距离。为什么不用曼哈顿距离?
曼哈顿距离只计算水平或垂直距离,有维度的限制。另一方面,欧氏距离可用于任何空间的距离计算问题。因为,数据点可以存在于任何空间,欧氏距离是更可行的选择。例如:想象一下国际象棋棋盘,象或车所做的移动是由曼哈顿距离计算的,因为它们是在各自的水平和垂直方向做的运动
4.k-means聚类和层次聚类的区别?
k-means聚类
层次聚类
5.中心点怎么计算?
k-means算法是把数据给分成不同的簇,目标是同一个簇中的差异小,不同簇之间的差异大,一般用误差平方和(SSE)作为目标函数
在k-means算法步骤中,有两个地方降低了SSE:
这样的重复迭代,不断优化,会找到局部最优解(局部最小的SSE),如果想要找到全局最优解需要找到合理的初始聚类中心
为了解决离群点和最优中心点的问题,可以尝试采用k-means++,即先随便选个点作为第一个初始中心C1,接下来计算所有样本点与C1的距离,距离最大的被选为下一个中心C2,直到选完K个中心的方法
6.初始化质心的方法
7.k-means的注意事项
8.k-means聚类结果的评价
9.k-means算法对异常值和噪声非常敏感,这些个别数据对于平均值影响非常大,因此我们使用k-means的时候需要做哪些处理呢?
删除距离其它数据较远的异常值,为了防止误删的情况,数据分析师需要在多次聚类循环中监控这些异常值,然后根据业务逻辑与多次的循环结果进行对比,再决定是否删除这些异常值
随机抽样方法也可较好地规避数据噪声的影响,因为随机抽样,作为系有时间的数据噪声和异常值被抽中的概率会很小。对于这种方式得到的聚类模型,在应用于整个数据集时至少有以下两种方式
10.k-means和KNN的共同点及区别
共同点:都用到了NN(Nears Neighbor)算法,即根据一个点,在样本集中找到离它最近的点
区别:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。