聚类算法(无监督算法)

本文介绍了聚类算法的基础思想和主要类型,包括划分聚类、密度聚类和谱聚类。详细讨论了KMeans算法及其变种,如二分KMeans、KMeans++等,以及密度聚类中的DBSCAN和MDCA。这些算法各有特点,适应不同数据集的需求,对于无标签数据的聚类分析具有重要价值。
摘要由CSDN通过智能技术生成

一、聚类算法简介

    聚类的基本思想:对于给定的M个样本的数据集,给定聚类()的个数K(K<M),初始化每个样本所属的类别,再根据一定的规则不断地迭代并重新划分数据集的类别(改变样本与簇的类别关系),使得每一次的划分都比上一次的划分要好。

    聚类是一种无监督的算法。

    距离的常用度量方法:欧氏距离(P=2)

二、聚类算法分类

    聚类算法有很多种,主要分为划分聚类密度聚类谱聚类等三种聚类。

    2.1 划分聚类

    1)KMeans聚类(KMeans、二分KMeans、KMeans++、KMeansll、Canopy、Mini Batch KMeans)

    2)层次聚类(AGNES(凝聚的层次聚类)、DIANA(分裂的层次聚类)、BIRCH(平衡迭代削减聚类法)、CURE(使用代表点的聚类法))

    2.2 密度聚类

    1)DBSCAN(基于密度的聚类算法)

    2)MDCA(密度最大值聚类算法)

    2.3 谱聚类--通过对样本数据的拉普拉斯矩阵的特征向量进行聚类

三、划分聚类

    1 kMeans算法及其衍生算法

    1.1 KMeans算法

sklearn.cluster.KMeans(n_clusters=8,init=’k_means++’n_init=10max_iter=300tol=0.0001precompute_distances=’auto’verbose=0random_state=Nonecopy_x=Truen_jobs=1algorithm=’auto’)

    KMeans算法的思想:对于给定的M个样本的数据集(无标签),给定聚类(簇)的个数K(K<M),初始化每个样本所属的类别,再根据距离的不同,将每个样本分配到距离最近的中心点的簇中,然后再对迭代完成的每个簇更新中心点位置(改变样本与簇的类别关系),直到达到终止条件为止。

    KMeans算法的终止条件:1)迭代次数    2)簇中心点变化率    3)最小平方误差值

    KMeans算法的优点理解简单容易,凸聚类的效果不错,效率高

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值