一种简化的密度聚类方法



先说一下什么是密度聚类的方法

参考文章:基于密度的聚类

  这篇文章的大概意思通过一幅图来说明:

  1 首先任意选定一个点假设就以图中最左边的h为第一个点,根据半径判断,在一定的范围内点的个数是否满足要求。

    -如果满足把这个点标记为核心点,这个圆判定为一个聚类。

    -如果不是,就把这个点判定为边界点,标记为噪声;在随机选取一个点。

  2 确定这一类,依次判断这个圆内的点的属性(核心,边界)。

  3 如果还有没有被标记的点,在任意选取一个点从上面开始做,一直到标记完所有的点。

优点:

  1 对噪声不敏感。

  2 能发现任意形状的聚类。

缺点:

  1 结果与参数有很大的关系。

  2 有一些点会被判定为数据不同的类。

我的方法:

  也是基于密度聚类的方法,首先摒弃了圆形,采用了方形来判断,提高了速度。

  其次,基于上,把坐标系画风成不同的小方块,统计在图形内的点,再对这些图形进行分类。

  不会产生一个点属于多个类的情况。

  下面是对1w多个点的聚类情况:,x的范围[-4000, 6200], y的范围[-5000, 6200]。

  先看一下原始数据的情况:

  

  

  这是下面第一次的结果,参数100*100:

  看起来还不错,但是当放大两次和放大三次后:

  可以看到,当放大三次后,结果就没有那么乐观了,有了很明显的分块现象

  采取参数30*30:

  这次是直接放大情况,可以看到结果还是比较不错的。

  只是这种方法的噪音有点多。

综上发现:

  结果和参数的关系并不明显。

  也可以发现任意形状的聚类。

  一个点也不会同时归为两个类。

  但是这次的结果却噪音偏多。

以上。 

时间: 2024-10-27 00:21:43

一种简化的密度聚类方法的相关文章

【ML-7】聚类算法--K-means和k-mediods/密度聚类/层次聚类

目录 简述 K-means聚类 密度聚类 层次聚类 一.简述 聚类算法是常见的无监督学习(无监督学习是在样本的标签未知的情况下,根据样本的内在规律对样本进行分类). 在监督学习中我们常根据模型的误差来衡量模型的好坏,通过优化损失函数来改善模型.而在聚类算法中是怎么来度量模型的好坏呢?聚类算法模型的性能度量大致有两类: 1)将模型结果与某个参考模型(或者称为外部指标)进行对比,个人觉得认为这种方法用的比较少 2)另一种是直接使用模型的内部属性,比如样本之间的距离(闵可夫斯基距离)来作为评判指标,这

三种聚类方法的简单实现

聚类是机器学习中的无监督学习方法的重要一种,近来看了周志华老师的机器学习,专门研究了有关于聚类的一章,收获很多,对于其中的算法也动手实现了一下.主要实现的包括比较常见的k均值聚类.密度聚类和层次聚类,这三种聚类方法上原理都不难,算法过程也很清晰明白.有关于原理可以参阅周志华老师的机器学习第九章,这里只做一下代码的实现. 运行环境是Python2.7+numpy,说实话,numpy坑还是挺多的,其实用Matlab可能会更简单. k均值聚类,核心是是不断更新簇样本的质心. #encoding=utf

DBSCAN密度聚类算法

DBSCAN(Density-Based Spatial Clustering of Applications with Noise,具有噪声的基于密度的聚类方法)是一种很典型的密度聚类算法,和K-Means,BIRCH这些一般只适用于凸样本集的聚类相比,DBSCAN既可以适用于凸样本集,也可以适用于非凸样本集.下面我们就对DBSCAN算法的原理做一个总结. 1. 密度聚类原理 DBSCAN是一种基于密度的聚类算法,这类密度聚类算法一般假定类别可以通过样本分布的紧密程度决定.同一类别的样本,他们

聚类方法简介

将物理或抽象对象的集合分组成为有类似的对象组成的多个簇的过程被称为聚类.由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其它簇中的对象相异.在许多应用中,可以将一个簇中的数据对象作为一个整体来对待. 目前在文献中存在大量的聚类算法.算法的选择取决于数据的类型.聚类的目的和应用.如果聚类分析备用作描述或探查的工具,可以对同样的数据尝试多种算法,以发现数据可能揭示的结果. 大体上,主要的聚类技术可以划分为如下几类: 1.划分方法 给定一个个对象或元组的数据库,一个划分方法

DBSCAN密度聚类

1. 密度聚类概念 DBSCAN(Density-Based Spatial Clustering of Applications with Noise,具有噪声的基于密度的聚类方法)是一种很典型的密度聚类算法,和K-Means,BIRCH这些一般只适用于凸样本集的聚类相比,DBSCAN既可以适用于凸样本集,也可以适用于非凸样本集. 2. 密度聚类步骤 DBSCAN算法描述: 输入: 包含n个对象的数据库,半径e,最少数目MinPts; 输出:所有生成的簇,达到密度要求. (1)Repeat (

聚类方法的区别解读:各种聚类分析

k 均值聚类法 快速高效,特别是大量数据时,准确性高一些,但是需要你自己指定聚类的类别数量 系统聚类法则是系统自己根据数据之间的距离来自动列出类别,所以通过系统聚类法 得出一个树状图,至于聚类的类别 需要自己根据树状图以及经验来确定 (同上)在聚类分析中,我们常用的聚类方法有快速聚类(迭代聚类)和层次聚类.其中层次聚类容易受到极值的影响,并且计算复杂速度慢不适合大样本聚类;快速聚类虽然速度快,但是其分类指标要求是定距变量,而实际研究中,有很多的定类变量,如性别.学历.职业.重复购买的可能性等多个

密度聚类

·统计样本周边的密度,把密度给定一个阈值,不断的把样本添加到最近的簇.例如:人口密度,根据密度,聚类出城市 ·解决类似圆形的K-Means聚类的特点:密度聚类缺点:计算复杂度大,空间索引来降低计算时间,降低查找速度. (DBSCAN算法): 参数:DBSCAN(eps=0.5, min_samples=5, metric='euclidean', algorithm='auto', leaf_size=30, p=None, n_jobs=1) eps:两个样本之间的最大距离,即扫描半径min_

聚类算法--K-means和k-mediods/密度聚类/层次聚类

目录 简述 K-means聚类 密度聚类 层次聚类 一.简述 聚类算法是常见的无监督学习(无监督学习是在样本的标签未知的情况下,根据样本的内在规律对样本进行分类). 在监督学习中我们常根据模型的误差来衡量模型的好坏,通过优化损失函数来改善模型.而在聚类算法中是怎么来度量模型的好坏呢?聚类算法模型的性能度量大致有两类: 1)将模型结果与某个参考模型(或者称为外部指标)进行对比,个人觉得认为这种方法用的比较少 2)另一种是直接使用模型的内部属性,比如样本之间的距离(闵可夫斯基距离)来作为评判指标,这

颜色聚类方法综述

毕业了,毕业论文也可以拿来晒晒了.觉的自己的论文涉及的知识点特别多,用到了很多图像处理和机器学习方面的技术.第三章主要是讲的颜色聚类的方法用来提取自然场景文本的候选连通域.(工作了时间不是很多,先把文章发上来,一周之内在好好拓展并整理). 一.颜色聚类的优点 分析自然场景文本的特点可得,在一个文本区域内部,一般一个字符内部的颜色变化不大.对于一幅24位RGB彩色图,需要处理的颜色范围达到 .显然,大范围.高精度的颜色对于文本定位来说是没有必要的,所以本章先用颜色聚类的方式来缩小颜色空间的范围,增