机器学习之聚类

本文介绍了无监督学习中的KMeans聚类、均值漂移聚类和DBSCAN算法,以及监督学习中的KNN分类。KMeans以预设K值进行聚类,而均值漂移自动发现类别数量,DBSCAN基于密度而非预设类别。还概述了KNN的基本原理和KMeans的实战准备方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、无监督学习

机器学习的一种方法,没有给定事先标记过的训练实例,自动对输入的数据进行分类或分群。

聚类分析:聚类分析又称为群分析,根据对象某些属性的相似度,将其自动化分为不同的类别。

KMeans聚类:

1.根据数据与中心点距离划分类别
2.基于类别数据更新中心点
3.重复过程直到收敛

均值漂移聚类:

1.在中心点一定区域检索数据点
2.更新中心
3.重复流程到中心点稳定
特点:
1.自动发现类别数量,不需要人工选择
2.需要选择区域半径

DBSCAN算法:

1.基于区域点密度筛选有效数据
2.基于有效数据向周边扩张,直到没有新点加入
特点:
1.过滤噪音数据
2.不需要人为选择类别数量
3.数据密度不同时影响结果

二、KMeans、KNN、Mean-shift

K-均值算法(Kmeans算法)(无监督学习):

以空间中k个点为中心进行聚类,对最靠近他们的对象归类,是聚类算法中最为基础但也最为重要的算法。

算法流程:

1.选择聚类的个数K
2.确定聚类中心
3.根据点到聚类中心聚类确定各个点所属类别
4.根据各个类别数据更新聚类中心
5.重复以上步骤直到收敛(中心点不再变化)

优点:
1.原理简单,实现容易,收敛速度快
2.参数少,方便使用
缺点:
1.必须设置簇的数量
2.随机选择初始聚类中心,结果可能缺乏一致性
在这里插入图片描述在这里插入图片描述Kmeans 与 KNN的区别:
在这里插入图片描述

K近邻分类模型(KNN)(监督学习)

给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的k个实例(也就是上面所说的k个邻居),这k个实例的多数属于某个类,就把该输入实例分类到这个类中
1.最简单的机器学习算法之一

在这里插入图片描述

均值漂移聚类(Meanshift)不需要告诉模型多少类

均值漂移算法:一种基于密度梯度上升的聚类算法(沿着密度上升方向寻找聚类中心点)

公式:
在这里插入图片描述在这里插入图片描述

算法流程

在这里插入图片描述

三、实战准备

KMeans实现聚类

模型训练
1.确定K值(聚类的个数)
2.初始数值(决定初始化的状态)
获取模型确定的中心点
centers = KM.cluster_centers_
准确率计算:
from sklearn.metrics import accuracy_score
accuracy = accuracy_score(y,y_predict)
在这里插入图片描述
3.结果矫正:
在这里插入图片描述

Meanshift实现聚类

在这里插入图片描述

KNN实现分类

在这里插入图片描述


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值