• 聚类算法(四)--DBSCAN


    Density-based spatial clustering of applications with noise (DBSCAN)

    名字较长,记它的initials,DBSAN/di,bi,skæn/,他基于数据的密度来聚类,所以适合数据稠密的情况,且在数据非凸情况下优于Kmeans。

    DBSCAN对密度的定义

    两个参数$(varepsilon ,Minpoints)$,$varepsilon$表示任一样本点领域的阈值,Minpoints表示该领域内的所有样本点个数的下限。

    假设数据集D=Xi,i=1,2,,,n

    定义

    1,$varepsilon$-领域 :表示对于样本点$x_{i}in D$,$varepsilon$-领域包含所有距离不大于$varepsilon$的子样本。

    2,核心对象(core point):表示对于样本点$x_{i}in D$,在$varepsilon$-领域内的样本点个数最少为Minpoints,则称$x_{i}$为核心对象。

    3,密度直达(directly destiny reachable):在核心对象$x_{i}$的$varepsilon$-领域内有一点$x_{j}$,称$x_{j}$由$x_{i}$的密度直达,无对称性。

    4,密度可达(destiny reachable):对于核心对象p,核心对象o由p密度直达,核心对象q由o密度直达,我们称q由p密度可达,注意箭头为单向,即无对称性。

    5,密度相连:g由o密度可达,h由o密度可达,g,h密度相连。

     

    DBSCAN聚类

    定义:由密度可达导出的最大的密度相连的子样本即为一簇。

    流程:任意找到一个没有类别的核心对象,找到所有由这个核心对象密度可达的子样本,作为一类。接着再找一个没有类别的核心对象。。。

    疑点:1,DBCSAN允许一些样本点不属于任一簇,称为噪点 。

       2,距离的度量,对于小样本用欧氏距离,计算所有样本点的两两距离;大样本时,采用KD树或者球树(此为KNN中的思想,不懂直接搬过来的,有机会补)

         3,当某样本点可由两个核心对象密度直达,但是这两个核心对象不在一个簇如下图蓝色点,DBCSAN采用先来后到的原则。

     

    参考:

    https://www.cnblogs.com/pinard/p/6208966.html

    https://www.bilibili.com/video/av23933161/?p=32

    https://en.wikipedia.org/wiki/DBSCAN

    Valar morghulis
  • 相关阅读:
    C#中Windows通用的回车转Tab方法
    对Form_Load事件的一点想法
    关于粉笔灰对教师影响的解决方案
    今天才发现MSSQLServer2000的排序功能原来这样
    C# 2.0与泛型
    (收藏)Anders Hejlsberg谈C#、Java和C++中的泛型
    对接口interface的一点想法
    马的遍历
    推荐软件:工作时间提醒器
    pgpoolII 介绍
  • 原文地址:https://www.cnblogs.com/super-yb/p/10873732.html
Copyright © 2020-2023  润新知