DBSCAN聚类算法,全称为Density-Based Spatial Clustering of Applications with Noise(基于密度的带噪声的空间聚类应用),是一种非常流行的聚类算法。它的主要特点是不需要预先指定簇的数量,并且能够识别和处理噪声数据。那么,让我们深入了解一下DBSCAN聚类算法的公式、步骤以及通过一个简单的例题来详细分析其工作原理。
在开始之前,我们需要理解DBSCAN中的几个核心概念:
ε (epsilon):这是定义点之间距离的最大半径。如果两个点之间的距离小于或等于ε,它们被认为是“直接可达”的。
MinPts: 这是一个阈值,表示一个点要成为核心点(core point)所需的邻居数。
核心点、边界点和噪声点:如果一个点的ε邻域内至少包含MinPts个点(包括该点自身),则该点为核心点。那些在核心点的ε邻域内但不满足核心点条件的点被称为边界点。不属于任何簇且既不是核心点也不是边界点的点被标记为噪声点。
确定所有数据点的邻域
对于数据集中的每个点,找出所有在其ε邻域内的邻近点。
标记核心点
接下来,根据MinPts的值,将每个点的ε邻域内数量大于或等于MinPts的点标记为核心点。
构建聚类
从任意一个未访问的核心点开始,找出所有与其直接密度相连的其他核心点,形成一个簇。重复这个过程直到所有的核心点都被访问过。
处理边界点和噪声点
对于那些没有被分配到任何簇中的点,检查它们是否与已形成的簇中的核心点是边界可达的。如果是,则将这些点加入到对应的簇中。剩下的点即为噪声点。
假设我们有一个二维平面上的五个点A(2,2), B(3,3), C(8,7), D(6,5), E(12,10),设定ε = 3,MinPts = 2。
计算每点的ε邻域:
A的ε邻域有B。
B的ε邻域有A和C。
C的ε邻域只有B。
D的ε邻域内没有其他点。
E的ε邻域内没有其他点。
标记核心点:
根据MinPts = 2的条件,A和B都是核心点,因为它们的ε邻域内有超过2个点。
构建聚类:
从A开始,找到其ε邻域内的点B,由于B也是核心点,因此它们属于同一聚类。此时,C虽然是B的ε邻居,但不是核心点,因此暂时不加入聚类。
以D和E作为初始点的尝试都失败了,因为没有足够的邻居形成聚类。
处理边界点:
C点虽然不是核心点,但它是B的直接可达点,因此C应该被添加到由A和B形成的簇中。
D和E既不是核心点也没有与其他点的ε邻域相交,所以它们是噪声点。
通过这个简单的例题,我们可以看到DBSCAN是如何根据点的局部密度特性来形成聚类的。这种算法特别适用于具有不同形状和大小的聚类结构,以及存在噪声数据的复杂场景。
声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com
支持识别各类商场、超市及药店的购物小票,包括店名、单号、总金额、消费时间、明细商品名称、单价、数量、金额等信息,可用于商品售卖信息统计、购物中心用户积分兑换及企业内部报销等场景
涉农贷款地址识别,支持对私和对公两种方式。输入地址的行政区划越完整,识别准确度越高。
根据给定的手机号、姓名、身份证、人像图片核验是否一致
通过企业关键词查询企业涉讼详情,如裁判文书、开庭公告、执行公告、失信公告、案件流程等等。
IP反查域名是通过IP查询相关联的域名信息的功能,它提供IP地址历史上绑定过的域名信息。