Canopy聚类算法
2024-08-28 01:36:24
Canopy聚类算法(经典,看图就明白)
聚类算法。
这个算法获得的并不是最终结果,它是为其他算法服务的,比如k-means算法。它能有效地降低k-means算法中计算点之间距离的复杂度。
图中有一个T1,一个T2,我们称之为距离阀值,显然T1>T2,这两个值有什么用呢?我们先确定了一个中心,然后计算其他点到这个中心间的距离,当距离大于T1时,小于T1大于T2时,小于T2时,对这个点的处理都是不一样的。
算法伪代码:
while D is not empty
select element d from D to initialize canopy c
remove d from D
Loop through remaining elements in D
if distance between d_i and c < T1 : add element to the canopy c
if distance between d_i and c < T2 : remove element from D
end
add canopy c to the list of canopies C
end
D指代一组数据,d_i表示D中的各个数据。
1:给我一组存放在数组里面的数据D
2:给我两个距离阈值T1,T2,且T1>T2
3:随机取D中的一个数据d作为中心,并将d从D中移除
4:计算D中所有点到d的距离distance
5:将所有distance<T1的点都归如到d为中心的canopy1类中(注意哦,小于T2的也是小于T1的,所以也是归入到canopy1中的哦)
6:将所有distance<T2的点,都从D中移除。(这一步很关键的,你回去看上面那个图,就明白了)
7:重复步骤4到6,直到D为空,形成多个canopy类
关键点在于t1,t2:
当与中心的距离大于T1时,这些点就不会被归入到中心所在的这个canopy类中。
然当距离小于T1大于T2时,这些点会被归入到该中心所在的canopy中,但是它们并不会从D中被移除,也就是说,它们将会参与到下一轮的聚类过程中,成为新的canopy类的中心或者成员。亦即,两个Canopy类中有些成员是重叠的。
而当距离小于T2的时候,这些点就会被归入到该中心的canopy类中,而且会从D中被移除,也就是不会参加下一次的聚类过程了。
最新文章
- [译] 给PHP开发者的PHP源码-第一部分-源码结构
- I finally made sense of front end build tools. You can, too.
- Mysql 该如何 Entity Framework 数据库迁移 和 如何更好的支持EntityFramework.Extended
- Android 获取设备信息 异常
- Struts2的处理结果(三)——动态配置结果
- kvm相关文章
- Help And Manual 帮助文件制作工具
- *[hackerrank]Tree Covering
- C#中的操作数据库的SQLHelper类
- Angular - - $templateCache 和 $templateRequest
- Bzoj4916: 神犇和蒟蒻
- Linux内核通用队列的使用笔记(读linux内核设计与实现)
- 电脑出现问题如何修复Windows 10
- centos安装make
- Codeforces 438E The Child and Binary Tree - 生成函数 - 多项式
- submit form to convert to a Java Bean model.
- LOJ 2292 「THUSC 2016」成绩单——区间DP
- numpy.distutils.system_info.NotFoundError: no lapack/blas resources found问题解决
- Structs复习 Structs标签
- 安装Flume的时候出现File Channel transaction capacity cannot be greater than the capacity of the channel capacity -解决方案 摘自网络
热门文章
- 四十 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)倒排索引
- sizeof结构体
- Android 中的BroadCastReceiver
- 多线程实现方式---实现Runnable接口
- Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)
- [置顶]
 Android 适配真要命?
- [转]MFC 调用 printf 输出
- Apache的Mod_rewrite学习 (RewriteCond重写规则的条件) 转
- flask中cookie和session介绍
- iOS开发单例模式 dispatch_once