zoukankan      html  css  js  c++  java
  • 机器学习——密度聚类

     

     

     简单来说:邻域就是范围,密度就是该范围内样本的个数。

          核心点:设定一个阈值M,如果在该邻域内不包括某点本身,样本的个数大于阈值M,则此点就是核心点。

    对于一个数据集来说,大部分都是核心点,因为邻域是我随便给的嘛,不是核心点的就是非核心点。

    边界点:若此点不是核心点,但是此点的邻域内包含一个或多个核心点,那么此点为边界点

    异常点:既不是核心点也不是边界点的就是异常点

    直接密度可达:x1是核心点,x2,x3,x4,x5都在其邻域内,则皆直接密度可达

     密度可达:

    ABCD都是核心点,那么A到D密度可达

     密度相连:o到x2密度可达,o到y2密度可达,则Y2与x2密度相连

     

     

     

    最大密度聚类算法(MDCA)

    步骤:①先找出最大密度点,即所有点的邻域内样本数最多的那个点

          ②计算其他所有点与最大密度点的距离,并从小到大排序

    给定一个p值,p的意思是从小到大排序后的前几项

    m值是阈值

        ③比如前2项吧。设第一项为x1,第二项为x2,如果x1与x2邻域内的样本数大于阈值m,那么x1与x2是核心点,其与最大密度点构成了一个簇,将最大密度点和x1,x2从原来的样本中删除,删除后的原样本再找一个最大密度点,继续此操作。

        ④如果x1邻域内的样本数大于m,但是x2邻域内的样本数小于m,那么暂时将其当做噪音点。再把x2和剩下的样本点找一个最大密度点,继续此操作

        ⑤最后得到一个个的小簇,再看簇间距离是否小于阈值m,若小于阈值m时,小簇要合并,直到不能合并为止。

    注意:单个簇内,除去簇中心点,最大样本数为p

    官方解释如下:

     

  • 相关阅读:
    9、scala面向对象编程之继承
    8、scala面向对象编程之对象
    7、scala面向对象编程之类
    JavaScript读书笔记
    ATM流程的实现
    Python实现简单的验证码模块
    处女作——静态页面的编写
    CSS知识速递
    HTML知识速递
    员工信息表 实现增删改查操作
  • 原文地址:https://www.cnblogs.com/qianchaomoon/p/12129490.html
Copyright © 2011-2022 走看看