机器学习笔记 (聚类) 层次聚类 Agglomerative Clutsering(Single-linkage、Complete-linkage,Group average)

1 Agglomerative Clutsering

        这是一种自底而上的层次聚类方法。大致可以分为三步:

1.将每一个元素单独定为一类
2.每一轮都合并指定距离(对指定距离的理解很重要)最小的类
3.迭代第二步,直到所有的元素都归为同一类/类别数量已经达到了我们需要的数量

2 Agglomerative Clutsering的分类

        根据对元素之间相似度(距离)的不同定义,将Agglomerative Clustering的聚类方法分为三种:Single-linkage,Complete-linkage和Group average.

Ward要比较的距离为所有簇内平方差的总和
Single-linkage要比较的距离为元素对之间的最小距离
Complete-linkage要比较的距离为元素对之间的最大距离
Group average要比较的距离为类之间的平均距离

其中平均距离的计算方式为,假设有A,B两个类,A中有n个元素,B中有m个元素。在A与B中各取一个元素,可得到他们之间的距离。将nm个这样的距离相加,得到距离和。最后距离和除以nm得到A,B两个类的平均距离。

2.1 举例

假如我们有5个元素,ABCDE,他们之间两两的距离如下:

2.1.1 single-linkage

  •  首先每个元素一个类:{A}{B}{C}{D}{E}
  •  然后判断两个类之间的最小距离

  • 最小的 最小距离为1:{A}{B}合并
ABCDE
AB0

A->C=3,B->C=2

∴{AB}->C=2

A->D=4,B->D=3

∴{AB}->D=3

A->E=5,B->E=4

∴{AB}->E=4

C

A->C=3,B->C=2

∴{AB}->C=2

012
D

A->D=4,B->D=3

∴{AB}->D=3

101
E

A->E=5,B->E=4

∴{AB}->E=4

210
  • 最小的  最小距离为1:{C}{D}合并        
ABCDE
AB0

A->C=3,B->C=2

A->D=4,B->D=3

∴{AB}->{CD}=2

A->E=5,B->E=4

∴{AB}->E=4

CD

A->C=3,B->C=2

A->D=4,B->D=3

∴{AB}->{CD}=2

0

C->E=2,D->E=1

∴{CD}->E=1

E

A->E=5,B->E=4

∴{AB}->E=4

C->E=2,D->E=1

∴{CD}->E=1

0
  • 最小的 最小距离为1:{CD}{E}合并         
ABCDE
AB0

A->C=3,B->C=2

A->D=4,B->D=3

A->E=5,B->E=4

∴{AB}->{CDE}=2

CDE

A->C=3,B->C=2

A->D=4,B->D=3

A->E=5,B->E=4

∴{AB}->{CDE}=2

0
  • 最小的 最小距离为2{AB}{CDE}合并     

2.1.2   Complete-linkage    

  •  首先每个元素一个类:{A}{B}{C}{D}{E}
  •  然后判断两个类之间的最大距离

  • 最小的  最大距离为1:合并AB 

ABCDE
AB0

A->C=3,B->C=2

∴{AB}->C=3

A->D=4,B->D=3

∴{AB}->D=4

A->E=5,B->E=4

∴{AB}->E=5

C

A->C=3,B->C=2

∴{AB}->C=3

012
D

A->D=4,B->D=3

∴{AB}->D=4

101
E

A->E=5,B->E=4

∴{AB}->E=5

210
  • 最小的  最大距离为1:{C}{D}合并        
ABCDE
AB0

A->C=3,B->C=2

A->D=4,B->D=3

∴{AB}->{CD}=4

A->E=5,B->E=4

∴{AB}->E=5

CD

A->C=3,B->C=2

A->D=4,B->D=3

∴{AB}->{CD}=4

0

C->E=2,D->E=1

∴{CD}->E=2

E

A->E=5,B->E=4

∴{AB}->E=5

C->E=2,D->E=1

∴{CD}->E=2

0
  • 最小的 最大距离为2:{CD}{E}合并    
ABCDE
AB0

A->C=3,B->C=2

A->D=4,B->D=3

A->E=5,B->E=4

∴{AB}->{CDE}=5

CDE

A->C=3,B->C=2

A->D=4,B->D=3

A->E=5,B->E=4

∴{AB}->{CDE}=5

0
  • 最小的 最大距离为5:{AB}{CDE}合并

2.1.3 group average 

  •  首先每个元素一个类:{A}{B}{C}{D}{E}
  •  然后判断两个类之间的平均距离

  • 最小的  平均距离为1:合并AB 

ABCDE
AB0

A->C=3,B->C=2

∴{AB}->C=(3+2)/2=2.5

A->D=4,B->D=3

∴{AB}->D=(4+3)/2=3.5

A->E=5,B->E=4

∴{AB}->E=(5+4)/2=4.5

C

A->C=3,B->C=2

∴{AB}->C=(3+2)/2=2.5

012
D

A->D=4,B->D=3

∴{AB}->D=(4+3)/2=3.5

101
E

A->E=5,B->E=4

∴{AB}->E=(5+4)/2=4.5

210
  • 最小的  平均距离为1:{C}{D}合并        
ABCDE
AB0

A->C=3,B->C=2

A->D=4,B->D=3

∴{AB}->{CD}=(3+2+4+3)/4=3

A->E=5,B->E=4

∴{AB}->E=(5+4)/2=4.5

CD

A->C=3,B->C=2

A->D=4,B->D=3

∴{AB}->{CD}=(3+2+4+3)/4=3

0

C->E=2,D->E=1

∴{CD}->E=(2+1)/1.5

E

A->E=5,B->E=4

∴{AB}->E=(5+4)/2=4.5

C->E=2,D->E=1

∴{CD}->E=(2+1)/1.5

0
  • 最小的 平均距离为2:{CD}{E}合并    
ABCDE
AB0

A->C=3,B->C=2

A->D=4,B->D=3

A->E=5,B->E=4

∴{AB}->{CDE}=(2+3+3+4+4+5)/6

CDE

A->C=3,B->C=2

A->D=4,B->D=3

A->E=5,B->E=4

∴{AB}->{CDE}=(2+3+3+4+4+5)/6

0
  •  {AB}{CDE}合并

以group average为例,比如我们需要分成三类,那么当我们合并到{AB}{CD}{E}的时候,就结束迭代

3 不同簇距离计算方式的比较

  • 层次聚类具有“富者更富”的特性,这会导致簇的大小不均匀
    • 在这方面,single linkage(簇间点最小距离)是最差的策略
    • Ward方法(簇内点方差之和)则能给出最规则的簇大小

参考文献:聚类Agglomerative Clustering 及其三种方法Single-linkage、Complete-linkage,Group average_M1M1M16的博客-CSDN博客_complete linkage

  • 8
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UQI-LIUWJ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值