1、算法简介

(1)概述:密度峰值聚类算法(DPCA)是一种可以发现非凸簇类的新型聚类算法,该算法的核心思想建立在对簇类中心点或者密度峰值点的两个重要假设之上:

[1] 假设一:簇类中心点的局部密度大于其周围相邻点的局部密度;

[2] 假设二:簇类中心点与其他中心点间有着相对较大的距离。

上述两种假设在给出簇类中心点描述的同时,也给出了一种检测中心点的准则。

该算法的核心思想在于对聚类中心点的计算,聚类中心点具有本身密度大和与其他密度更大的数据点之间的距离相对更大的特点。 算法首先通过使用一截断距离来计算每个点的局部密度,然后计算各数据点与局部密度高于它们的数据点之间的最小距离;然后根据计算出的每个点的局部密度和最小距离绘制决策图,接着在决策图中人工选取聚类的中心,之后将剩余的非聚类中心的数据点划分到与之距离最近的聚类中心所在的簇中;最后再将所得到的各个簇划分为簇核心和簇光晕,从而得到最终的聚类结果。使用DPCA算法进行聚类时只需要计算一次距离,并且不需要进行迭代,因此算法的计算速度很快。但是,该算法选择聚类中心的时候需要在决策图中人工选取,这增加了算法的冗余性,不利于算法的自动化,且在最后将簇划分为簇核心和簇光晕时会将簇边缘的本属于簇核心的一些点划分到簇光晕中,影响最终的聚类效果。

(2)主要用途:密度聚类,同DBSCAN算法,发现数据中的类别关系。

(3)优缺点

[1] 优点:该聚类算法可以得到非球形的聚类结果,可以很好地描述数据分布,同时在算法复杂度上也比一般的K-means算法的复杂度低。同时此算法的只考虑点与点之间的距离,因此不需要将点映射到一个向量空间中;

[2] 缺点:需要事先计算好所有点与点之间的距离。此外,对大数据集合高维度数据进行聚类时,需要过多的内存和计算开销,这势必会导致过大的时空复杂度并影响算法的速度和准确性。在实际应用中,因为时空复杂度过大的算法是无法直接运用于大数据的处理和计算的。因此,如果只需要得到最终聚类中心,则可以考虑牺牲速度的方式计算每一个样本点的和,避免直接加载距离矩阵。

2、算法流程

3、模拟例子

(1)说明

[1] 数据情况:小明班上30名同学的考试成绩(语文、数学、英语、物理、化学、生物);

[2] 研究目的:将小明班上的同学进行聚类。

(2)分析步骤

[1] 第一步:输入小明班上30名同学的考试成绩数据X;

[2] 第二步:使用DPCA聚类算法进行聚类,并输出聚类的结果。

(3)结果模拟:小明班上30名同学中,20名同学被归为第1类,5名同学被归为第2类,最后5名同学(包括小明)被归为第3类。通过研究类发现,第1类的同学各科成绩比较均衡,可以判定为普通学生;第2类的同学各科成绩较好,可以认为是学霸组;第3类的同学各科成绩都比较烂,可以归为学渣小分队。

——————————————————★

互联网数据分析岗位求职备战手册

热门算法总结 —— DPCA相关推荐

  1. 【热门算法】搜索、推荐、广告算法

    什么是搜索算法 搜索算法是利用计算机的高性能来有目的的穷举一个问题解空间的部分或所有的可能情况,从而求出问题的解的一种方法.[^1] 什么是推荐算法.广告算法 个人理解推荐算法和广告算法是一回事,都是 ...

  2. 【热门算法】ctr、cvr

    ctr CTR(Click-Through-Rate)即点击通过率,是互联网广告常用的术语,指网络广告(图片广告/文字广告/关键词广告/排名广告/视频广告等)的点击到达率,即该广告的实际点击次数(严格 ...

  3. Java中对查出的数据计数_基础算法7:从数据库某个字段中取出现次数最多的几条数据形成“热门xxx”...

    在这里,我们需要查出所有的"出发城市"和"到达城市",并对每个城市进行计数根据其出现次数来取出几个出现次数最多的城市为热门城市 注:将多个字段的数据合并在一起并 ...

  4. 热度算法php,微博热门的排序算法

    我有一张微博表,表里记录了点赞.转发.评论的数值,现在想优化热门的排序算法. Q:热门数值的保存:以前我是在微博表中有一个字段 _hot 表示热度,每隔 60 分钟 UPDATE 这个字段,这样排序的 ...

  5. 如何提升深度学习性能?数据、算法、模型一个都不能少

    https://www.toutiao.com/i6635808175893250564/ 2018-12-17 12:04:48 该文来自DataCastle数据城堡(DataCastle2016) ...

  6. 如果千百年前有视觉AI算法,世界将会是什么样的光景呢?

    视觉AI算法在近些年取得了一定的突破,被应用在了越来越多的地方,我相信距离真正的AI普及这个大目标也越来越近了.我时常在想假如古代也有视觉AI算法,那是不是很多故事的结局都将被改写?<伯乐相马& ...

  7. 算法岗百里挑一热爆了,全球AI大厂薪酬大起底

    ↑ 点击上方[计算机视觉联盟]关注我们 认识到算法的重要性之后,还需要认识一下算法到底有多火. 前段时间,AI大厂字节跳动招聘收到的算法工程师的简历数量远超需求,而安卓.iOS简历却十分稀缺:后端.前 ...

  8. NVIDIA的python-GPU算法生态 ︱ RAPIDS 0.10

    随着新版本的推出,RAPIDS 迎来了其推出一周年纪念日.回顾所经历的一年,RAPIDS团队就社区对该项目的关心和支持表示衷心的感谢.此前,RAPIDS获得了其首个BOSSIE奖.非常感谢各位的支持! ...

  9. 基于密度聚类算法的改进

    基于密度算法的改进 本篇博客来自我的github小项目,如果对您有帮助,希望您前去点星 ! 使用基于密度的聚类算法,进行高维特征的聚类分析,从高维数据中提取出类似的有用信息,从而简化了特征数量,并且去 ...

最新文章

  1. 数据绑定设计器的使用
  2. PC/UVA 110207/10258
  3. 你知道Java 8 的方法引用吗
  4. 【错误记录】Ubuntu 安装软件报错 ( Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource tempora )
  5. 【Android 插件化】多开原理 | 使用插件化技术的恶意应用 | 插件化的其它风险 | 应用开发推荐方案
  6. 手机耗电统计app_教你 6 招,解决 iOS13 耗电问题
  7. 自动化设计模式Page Object
  8. XGBoost算法概述
  9. 为record类型自定义Equals方法
  10. Docker小白到实战之开篇概述
  11. 简单总结PPPoE设置
  12. linux tomcat守护_Linux 系统下 Tomcat 的服务配置和性能优化
  13. C# MysqlHelper 执行reader时,遇到致命错误或者超时
  14. C盘搬家,不需要任何第三方工具
  15. 计算机主板电池拆卸,主板电池没电了会怎么样 电脑主板电池怎么拆换【详解】...
  16. Java程序员年薪40W是什么水平?税前还是税后?
  17. DDR扫盲——DDR中的名词解析
  18. CSDN/博客园复制代码空格报错问题解决
  19. Google Earth Engine(GEE)——ee.Reducer.percentile筛选影像百分比案例分析
  20. luogu P5234 [JSOI2012]越狱老虎桥

热门文章

  1. [PHP] Larval 主从读写分离配置
  2. net start mongodb 发生系统错误 1058。
  3. 面试常问的 C/C++ 问题,你能答上来几个?
  4. Revit API 2018调试闪退
  5. error An unexpected error occurred “httpsregistry.npmjs.orgd3-geo-proje
  6. 2021.02.02刷题总结
  7. 【周赛-简单】5495. 圆形赛道上经过次数最多的扇区
  8. 自引用结构兼谈Malloc和Free函数
  9. [笔记] PPT幻灯片也RIA——PPT实现倒计时功能
  10. SX1278设计(硬件部分)