机器学习算法博客
来源:互联网 发布:ubuntu制作u盘启动工具 编辑:程序博客网 时间:2024/05/20 05:30
一些基本的聚类算法的原理
http://blog.csdn.net/sinat_22594309/article/details/63253459
DBSCAN(Density-Based Spatial Clustering of Applications with Noise) 是一个比较有代表性的基于密度的聚类算法。与划分和层次聚类方法不同,它将簇定义为密度相连的点的最大集合,能够把具有足够高密度的区域划分为簇,并可在噪声的空间数据库中发现任意形状的聚类。
DBScan需要二个参数: 扫描半径 (eps)和最小包含点数(minPts)。 任选一个未被访问(unvisited)的点开始,找出与其距离在eps之内(包括eps)的所有附近点。
如果 附近点的数量 ≥ minPts,则当前点与其附近点形成一个簇,并且出发点被标记为已访问(visited)。 然后递归,以相同的方法处理该簇内所有未被标记为已访问(visited)的点,从而对簇进行扩展。
如果 附近点的数量 < minPts,则该点暂时被标记作为噪声点。
如果簇充分地被扩展,即簇内的所有点被标记为已访问,然后用同样的算法去处理未被访问的点。
具体算法描述如下:
(1)检测数据库中尚未检查过的对象p,如果p为被处理(归为某个簇或者标记为噪声),则检查其邻域,若包含的对象数不小于minPts,建立新簇C,将其中的所有点加入候选集N;
(2)对候选集N 中所有尚未被处理的对象q,检查其邻域,若至少包含minPts个对象,则将这些对象加入N;如果q 未归入任何一个簇,则将q 加入C;
(3)重复步骤2),继续检查N 中未处理的对象,当前候选集N为空;
(4)重复步骤1)~3),直到所有对象都归入了某个簇或标记为噪声。
优点:
- 与K-means方法相比,DBSCAN不需要事先知道要形成的簇类的数量。
- 与K-means方法相比,DBSCAN可以发现任意形状的簇类。
- 同时,DBSCAN能够识别出噪声点。
- DBSCAN对于数据库中样本的顺序不敏感,即Pattern的输入顺序对结果的影响不大。但是,对于处于簇类之间边界样本,可能会根据哪个簇类优先被探测到而其归属有所摆动。
缺点:
- DBScan不能很好反映高尺寸数据。
- DBScan不能很好反映数据集以变化的密度。
阅读全文
0 0
- 机器学习算法博客
- 机器学习学习博客
- 机器学习算法系列——博客中相关机器学习算法的目录
- 机器学习算法优秀博客索引-持续更新
- 备忘--用于机器学习每个算法较好的博客记录
- 机器学习博客
- 机器学习系列博客
- 机器学习博客总结
- 机器学习博客导航
- 机器学习一些博客
- 机器学习博客列表
- 机器学习-研究人员-博客
- 机器学习系列博客
- 机器学习博客汇总
- 机器学习博客
- 机器学习博客收藏~
- 机器学习相关博客文章
- 推荐~机器学习的博客
- 使用ArrayList集合,对其添加10个不同的元素,并使用Iterator遍历该集合
- mui 启动页和引导页
- 持续集成环境(CI)搭建
- Java学习笔记之IO(一):File类的用法
- GKCompositeBehavior
- 机器学习算法博客
- Java.io流的基本常用类
- 机器学习中的数据清洗与特征处理综述
- 手动实现jsonp
- 欢迎使用CSDN-markdown编辑器
- 我眼中的装饰器模式
- .Net WebAPI 高速下载文件接口实现
- arm交叉编译器gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi区别
- 结构体的4种初始化方式