聚类步骤
1.数据清洗
2.选择模型
细节:避免loop(for循环),影响速度;
密度聚类,不需要给出具体几类,k-means需要告诉有几类;
3.距离度量
归一化、余弦相似性(空间夹角距离)、
词向量
4.方法
周志华西瓜书、李恒的统计学书
5.代码
包 sklearn cluster
image.png
image.png
image.png
image.png
4、贪心、迭代算法
下图为k-means
1.随机选两个点,质心,算离得近的,分为两类;迭代;不断的更新簇,更新质心;收敛。
soft-clustering 、hard-clustering(必须分到某组)
image.png
image.png
image.png
先是随机选质心,然后质心更新,迭代,距离变小,更收敛。
image.pngk-means缺点:只能局部最优,第二幅图才是全局最优,未做到。
image.pngimage.png
初始化问题如下:此外对噪声敏感(因为依赖平均值)
image.png如何优化:(Kmeans++解决初始化敏感问题)选择质心1,再选择相对较远的质心2,再选择离1、2都挺远的质心3
image.png
举例来说:码农-前端-后端(层次)两种方法:自底向上、自顶向下
image.png
计算复杂度高,层次聚类的几种方法:最短距离法、最长距离法、中间距离法、平均距离法(类与类的距离)、
image.png
image.png
计算复杂度高,不适合大样本;某两个连接、某两类连接
image.png
DBSCAN:处理噪声、离心值、依赖密度,而不是距离。不需要质心。imbalanced数据也适用。不用设置k、不用设置圆形,只需要设置中心、半径(阈值)。(DBSCAN是个很不错的聚类算法呀),当不知道数据特性时,适合用DBSCAN。
image.png
image.png
x1为核心对象eps,
密度直达:x1,x2
密度可达:x1,x3
密度相连:x3、x4
image.png
image.png
image.png
核心点、半径
image.png
image.png
2-4;一般为4;多维的话,中银对象选择一场关键,多选几个中心对象试试。
image.png
发现拐点
image.png
image.png
模型:概率生成模型
image.png
GMM求每个点数据哪个类的概率。soft clustering。类与类之间有叠加。计算复杂度比kmeans
image.png
image.png
参考:万门大学关于聚类讲解
https://blog.csdn.net/zouxy09/article/details/17589329
网友评论