机器学习:DBSCAN算法(效果比K-means好)

基本概念

核心对象:以点为圆心半径为r的圆,如果圈里面的样本点大于给定的阈值(minPts),那么这个点就叫做核心点

直接密度可达:点p在q为圆心的圆内

密度可达:

p1与p2直接密度可达,p2与p3直接密度可达,所以p1与p3被称为密度可达

边界点:

以p1为核心点的圈含p2,p2自己为核心点也有对应圈,并且圈内有点p3,同样p3也有以p3为核心点的圈,并且有点p4,这说明点p1,p2,p3是可以发展下去的点(我认为可以理解成以之前圈住点为圆心画圈不断圈住新的点)

但是p4就不行了,因为以p4为核心点的圈内没有其他样本点或者说样本点的个数少于规定的阈值MinPts,没有继续"发展"下去

工作流程

算法

需要输入的数据

参数D:输入数据集

参数:指定半径

MinPts:密度阈值

如何选择参数,基本上都是不断尝试

优势和劣势

可视化展示

Visualizing DBSCAN Clustering

Gaussian Mixture

如下图所示,调大半径epsilon之后,离群点就变小了

如果想用DESCAN算法找离群点,可以考虑将半径调小

Smiley Face

Packed Circles

但对于这种密集区域此时,DBSCAN分类就不如K-means

半径小了,就出现分类很多的情况;半径大了,就出现分类只有一两个的情况,还不如直接K-means直接给定分类的类别

相关推荐
我命由我1234510 分钟前
方差(实例实操、与标准差的区别)
java·数据结构·算法·数据分析·java-ee·intellij-idea·idea
闲研随记10 分钟前
【文献阅读 ICML 2026】RL算法:Critique-GRPO
论文阅读·算法·llm·强化学习·rl·icml·grpo
民乐团扒谱机33 分钟前
【微实验】从迷雾中看清世界:卡尔曼滤波的数学诗意与MATLAB实践
人工智能·算法·matlab·卡尔曼滤波·kalman
格林威1 小时前
网口相机 vs USB相机:区别与适用场景(选型不再纠结)
人工智能·数码相机·机器学习·计算机视觉·视觉检测·机器视觉·工业相机
什巳1 小时前
JAVA练习275-乘积最大子数组
java·开发语言·数据结构·算法
@踏雪寻梅1 小时前
27. 移除元素
算法
小牛不牛的程序员1 小时前
利用Claude Code构建自动化需求挖掘工具:从原理到实践
java·算法·自动化
Mr.HeBoYan1 小时前
DPDK为什么越来越少使用rte_ring?——从Lock-Free到Run-to-Completion,重新理解现代DPDK架构演进(上)
linux·网络·算法·性能优化·架构·dpdk
在书中成长1 小时前
HarmonyOS 小游戏《对战五子棋》开发第14篇 - 困难AI实现:Minimax算法原理详解
人工智能·算法·harmonyos
格子软件1 小时前
GEO系统深度实战:多引擎自适应算法与去中心化流控
人工智能·算法·去中心化·区块链