常见机器学习聚类算法

本文详细介绍了常见的机器学习聚类算法,包括K-Means、DBSCAN、Gaussian Mixture Model (GMM)以及层次聚类。K-Means算法速度快但对初始值敏感,有多种改进方法如K-means++等。DBSCAN是基于密度的聚类算法,能处理不规则形状的簇。GMM使用高斯概率密度函数进行聚类。层次聚类则通过不断合并最相似的簇构建层次结构。文章还提到了LDA和其它聚类方法的应用。
摘要由CSDN通过智能技术生成

聚类最常见的,应该是kmeans。对于spark mllib,除了支持kmeans外,还支持GMM,主题模型LDA。

比较常用的聚类模型还有:DBSCAN(密度聚类);层次聚类;

 

K-Means聚类================

1.首先,我们选择一些类/组来使用并随机地初始化它们各自的中心点。要想知道要使用的类的数量,最好快速地查看一下数据,并尝试识别任何不同的分组。中心点是与每个数据点向量相同长度的向量,在上面的图形中是“X”。

2.每个数据点通过计算点和每个组中心之间的距离进行分类,然后将这个点分类为最接近它的组。

3.基于这些分类点,我们通过取组中所有向量的均值来重新计算组中心。

4.对一组迭代重复这些步骤。你还可以选择随机初始化组中心几次,然后选择那些看起来对它提供了最好结果的来运行。

K-Means聚类算法的优势在于它的速度非常快,因为我们所做的只是计算点和群中心之间的距离;它有一个线性复杂度O(n)。

 

对于kmeans,最主要的是K值的选择。首先根据业务需求定,也可以根据尝试法:先设置一个较小的值,观察,随着k的增大,是否cost减少。当cost基本保持不变的时候,就达到了最有K值。

其次kmeans算法对簇心的初始值也比较敏感。针对kmeans有几种改进:

https://www.jianshu.com/p/2fa67f9bad60

Kmeans++ ; Kmeansll ;二分 Kmeans ;Canopy算法; Mini batch k- Means 算法;

 

Kmeans++   ===============

该算法可以避免初始簇心敏感的问题。步骤如下:

从数据集中任选一个节点作为第一个聚类中心;

对数据集中的每个点X,计算X到所有簇心的距离只和D(x)。基于D(x) 采用线性概率选择出下一个中心点。距离越大,该样本称为下一个中心点的概率越大。

重复以上两个步

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值