聚类

聚类指标

外部评价指标

Adjusted Rand Index(兰德指标)

RI=NCC+NCCC2N()

为使随机聚类结果的ARI接近0,提出调整兰德系数

ARI=RIE(RI)max(RI)E(RI)

Adjusted Mutual Information(互信息)

信息熵:当随机变量Y的取值确定,即p(y_1)=1,p(y_{i \neq 1}=0),熵为0。当随机变量的取值不确定,例如在N种取值上的均匀分布, H(Y)=N1Nlog 1N=log N

H(Y)=yYp(yi)log p(yi)=yYxXp(yi,xi)log p(yi)=xXyYp(yi,xi)log p(yi)

条件熵:在给定条件X下,Y的分布的不确定性
H(Y|X)=xXp(x)H(Y|X=x)=xXp(x)yYp(yi,xi)p(xi)log p(yi,xi)p(xi)=xXyYp(yi,xi)log p(yi,xi)p(xi)

聚类结果C和参考类别 C 之间的互信息定义为
MI(C,C)=H(C)H(C|C)=cCcCp(c,c)log p(c)+cCcCp(c,c)logp(c,c)p(c)=cCcCp(c,c)logp(c,c)p(c)p(c)=cCcCp(c,c)logp(c,c)p(c)p(c)=cCcCp(c,c)log p(c)+cCcCp(c,c)logp(c,c)p(c)=H(C)H(C|C)

C C不相关, H(C|C)=H(C) , MI(C,C)=0 。当对于给定 c ,随机变量 C 只取一类,此时H(C|C)=0 MI(C,C)=H(C)

同ARI相似,AMI定义为

AMI=MIE(MI)max{H(C),H(C)}E(MI)

尽管由于 H(C|C)0 H(C|C)0 ,因此
max(MI)=min{H(C),H(C)}

AMI的取值范围为[0,1],对两种独立的聚类值为0,两种完全相同的聚类值为1。

homogeneity,completeness and V-measure

homogeneity(同质性):一个簇只包含一个类别的样本

h=H(C)H(C|C)H(C)

c1 c2 sum
c1 2
c2 3
c3 6
c4 1
sum66

H(C)=log 2 H(C|C)=0 h=1

c1 c2 sum
c1 12
c2 24
c3 36
c4 48
sum1020

H(C)=13log 3+23log 32 H(C|C)=13log 3+23log 32 h=0

completeness(完整性):一个类别只在一个簇中

c=H(C)H(C|C)H(C)=MI(C,C)H(C)

例如对于聚类结果

c1 c2 c3 c4 sum
c1 132
c2 6
sum1362

H(C)=log 2 H(C|C)=0 c=1

c1 c2 c3 c4 sum
c1 1234
c2 2468
sum36912

H(C)=13log 3+23log 32 H(C|C)=13log 3+23log 32 c=0

V-measure:均一性和完整性的调和平均

1v=12(1h+1c)

Fowlkes-Mallows score

P=TPTP+FPR=TPTP+FN

其中

  • TP为在聚类结果中属于同一簇,在标签中也属于同一类的样本对数目
  • FP为在聚类结果中不属于同一簇,在标签中属于同一簇的样本对数目
  • FN为在聚类结果中属于同一簇,在标签中不属于同一簇的样本对数目

FMI 为精度和召回率的几何均值

FMI=P×R

内部评价指标

Silhouette coefficient:轮廓系数

一个样本的轮廓系数定义为:

s=bamax{a,b}

  • a:The mean distance between a sample and all other points in the same
    class.
  • b:The mean distance between a sample and all other points in the next nearest cluster.

s接近1表示该样本匹配该类非常好,s接近-1表示该样本被聚类到相邻类中更合适,s接近0表示样本在两个类的交集处。

聚类的轮廓系数定义为所有样本轮廓系数的均值。 s¯>0.5 表示聚类合适, s¯<0.2 表示数据不存在聚类特征

Calinski-Harabaz Index:离差平方和

类内散度

W(K)=k=1KC(j)=k||xjx¯k||2

类间散度
B(K)=k=1KNk||x¯kx¯||2

其中 Nk 代表第 k 个簇的样本数目。

则CH索引为

CH=B(K)(NK)W(K)(K1)

CH索引的优点在于计算快,它倾向于得到大小均匀的类。

吸引力传播

motivation

算法同时考虑所有样本点作为可能的聚类中心,可以看作是解决了如何选取 ci 使得能量函数

E(c)=i=1Ns(i,ci)

最小的一个方法。其中 s(i,ci) 是样本 i 与它的聚类中心的相似度(例如:负的欧氏距离)。该问题是NP-hard k-median problem,无法精确求解。

算法描述

输入是样本对之间的相似度矩阵s,“Real-valued messages”在样本之间被交换,直到算法收敛,合适的聚类中心被选出。其中“Real-valued messages”包括“responsibility”和“availability”:

  • r(i,k) ,是 i 传给k的,代表 i 有多想选k作为自己的代表(对样本 i 来说,k与自己最相似)
  • a(i,k) ,是 k 传给i的,代表 k 有多想让i选自己作为代表(有多少其它样本点想选 k 作为自己的代表)

对于样本i来说,如果样本 k 和自己很像,选它作为自己的代表;如果样本k和自己不那么像,但是很多别的样本都选它了,那么我也选它作为代表。那么样本 k 就是一个聚类中心了。

算法流程

  1. 初始化a(i,k)=0
  2. while 未达到最大迭代次数 or message的改变低于某个阈值 or 近几次(如10次)迭代中根据 r(i,k)+a(i,k) 确定的聚类中心不变
  3. ​  for k={1,2,,n}{k|s(k,k)<0}
  4. ​    r(i,k)=s(i,k)maxk k{a(i,k)+s(i,k)}
  5. ​    a(i,k)=min{0,r(k,k)+ii,kmax{0,r(i,k)}}
  6. ​    a(k,k)=ikmax{0,r(i,k)}
  7. ​  end
  8. end
  9. return {k|a(k,k)+r(k,k)>0}
  10. 在第一次迭代的时候,因为 a(i,k)=0 r(i,k)=s(i,k)maxkks(i,k) r(k,k)=s(k,k)maxkks(k,k) 。因此 s(k,k) 代表样本 k 作为聚类中心的合适程度,被成为“preference”。当preference选相似度矩阵的中值(s对角线上元素取值相同)时,会获得适当数目的簇;当preference选相似度矩阵的最小值时,会得到小数目的簇。

    在接下来的迭代中,某些不是聚类中心的点的r(i,k)<0,那么 a(i,k)<0 。不再考虑这些点作为可能的聚类中心来保证迭代算法的效率。

    为避免消息传递中的数值震荡,例如如果 s(1,2)=s(2,1) ,并且 s(1,1)=s(2,2) ,那么 c1=c2=1 c1=c2=2 会达到相同的能量,即选样本1还是样本2作为聚类中心都一样,因此会出现这次迭代选1作为聚类中心,下次迭代选2作为聚类中心的现象,从而可能导致算法无法收敛。于是引入阻尼因子(damping factor):

    rt+1(i,k)=λ×rt(i,k)+(1λ)rt+1(i,k)at+1(i,k)=λ×at(i,k)+(1λ)at+1(i,k)

    也可以通过给相似度矩阵加入一点噪声来避免震荡。

    算法优势
    • 不同于K-means依赖于初始聚类中心的选择,只有当初始点离最优点足够近的时候,才能获得最佳结果,吸引力传播不需要初始聚类中心,尽管利用preference作为先验。
    • 相似度矩阵不必是对称的,相似性的度量也不需要满足三角不等式[i.e., s(i,k)<s(i,j)+s(j,k) ],更适合解决实际中的某些问题。例如两个句子之间的相似度度量,从一个城市到另一个城市的交通便利程度的度量。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值