基于密度的聚类算法(四)——DBSCAN
来源:互联网 发布:xml文件解析 java 编辑:程序博客网 时间:2024/06/05 01:13
一
由于层次聚类算法和划分式聚类算往往只能发现凸形的聚类簇。为了弥补这一缺陷,发现各种任意形状的聚类簇,开发出基于密度的聚类算法。这类算法认为,在整个样本空间点中,各目标类簇是由一群的稠密样本点组成的,而这些稠密样本点被低密度区域(噪声)分割,而算法的目的就是要过滤低密度区域,发现稠密样本点。
二
是一种基于高密度联通区域的聚类算法,它将类簇定义为高密度相连点的最大集合。它本身对噪声不敏感,并且能发现任意形状的类簇。
DBSCAN中的的几个定义:
Ε领域:给定对象半径为Ε内的区域称为该对象的Ε领域
核心对象:如果给定对象Ε领域内的样本点数大于等于MinPts,则称该对象为核心对象。
直接密度可达:对于样本集合D,如果样本点q在p的Ε领域内,并且p为核心对象,那么对象q从对象p直接密度可达。
密度可达:对于样本集合D,给定一串样本点p1,p2….pn,p= p1,q= pn,假如对象pi从pi-1直接密度可达,那么对象q从对象p密度可达。
密度相连:对于样本集合D中的任意一点O,如果存在对象p到对象o密度可达,并且对象q到对象o密度可达,那么对象q到对象p密度相连。
可以发现,密度可达是直接密度可达的传递闭包,并且这种关系是非对称的。密度相连是对称关系。DBSCAN目的是找到密度相连对象的最大集合。
Eg: 假设半径Ε=3,MinPts=3,点p的E领域中有点{m,p,p1,p2,o}, 点m的E领域中有点{m,q,p,m1,m2},点q的E领域中有点{q,m},点o的E领域中有点{o,p,s},点s的E领域中有点{o,s,s1}.
那么核心对象有p,m,o,s(q不是核心对象,因为它对应的E领域中点数量等于2,小于MinPts=3);
点m从点p直接密度可达,因为m在p的E领域内,并且p为核心对象;
点q从点p密度可达,因为点q从点m直接密度可达,并且点m从点p直接密度可达;
点q到点s密度相连,因为点q从点p密度可达,并且s从点p密度可达。
算法:DBSCAN
输入:E — 半径
输出:目标类簇集合
方法:repeat
1)
2)
算法:DBSCAN
输入:E — 半径
输出:目标类簇集合
方法:repeat
1)
2)
转自:http://www.360doc.com/content/11/0608/14/7000788_122449612.shtml
- 基于密度的聚类算法(四)——DBSCAN
- 机器学习算法(聚类算法)—基于密度的聚类算法DBSCAN
- DBSCAN - 基于密度的聚类算法
- DBSCAN基于密度的聚类算法
- 聚类分析(五)基于密度的聚类算法 — DBSCAN
- 聚类分析(五)基于密度的聚类算法 — DBSCAN
- 聚类分析之基于密度的聚类算法(DBSCAN)
- 简单易学的机器学习算法——基于密度的聚类算法DBSCAN
- 简单易学的机器学习算法——基于密度的聚类算法DBSCAN
- 基于密度的聚类算法(DBSCAN)的java实现
- 基于密度的聚类之DBSCAN算法
- dbscan基于密度的空间聚类算法
- dbscan基于密度的空间聚类算法
- 基于密度的聚类算法C语言实现--DBSCAN
- 跑一个基于密度的聚类算法:DBscan
- 基于密度的算法DBscan
- 白话机器学习算法(三)基于密度的聚类 DBSCAN
- 白话机器学习算法(三)基于密度的聚类 DBSCAN
- Cocos2d-x + Android + Eclipse + Windows 7
- 快速排序
- NoSQL数据库的35个应用场景
- Maximal Rectangle
- Java Concurrency in Practice读书笔记
- 基于密度的聚类算法(四)——DBSCAN
- 优先队列
- 聚类分析(五)——基于密度的聚类算法OPTICS
- [学习笔记]Java输入输出和流程控制
- 数字验证码的制作
- const函数调试
- Python 之 decorator装饰器
- 工作中用到的一些常用oracle命令
- Linux中最常用的基本操作命令