介绍:
- NMI(Normalized Mutual Information), 标准化互信息。常用于聚类,度量 聚类结果 与 数据集真实情况 的相似度。
- NMI的值∈[0, 1]。值越大,说明聚类结果与数据集真实情况的相似度越大,聚类结果越好。如果算法结果很差则NMI值接近0。
举例:假设对于17个样本点 ( v 1 , v 2 , . . . , v 17 ) (v1,v2,...,v17) (v1,v2,...,v17)进行聚类:
A=[1 2 1 1 1 1 1 2 2 2 2 3 1 1 3 3 3] # A 为某一种算法得到聚类结果,其中:len(A)=17、unique(A)=[1 2 3]
B=[1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3] # B 为样本真实的标签,其中:len(B)=17、unique(B)=[1 2 3]
标准化互信息: N M I ( X , Y ) = 2 M I ( X , Y ) H ( X ) + H ( Y ) NMI(X,Y)=\frac{2MI(X,Y)}{H(X)+H(Y)} NMI(X,Y)=H(X)+H(Y)2MI(X,Y)
其中: M I ( X , Y ) = ∑ i = 1 ∣ X ∣ ∑ j = 1 ∣ Y ∣ P ( i , j ) l o g ( P ( i , j ) P ( i ) P ′ ( j ) ) MI(X,Y)=\sum_{i=1}^{|X|}\sum_{j=1}^{|Y|}P(i,j)log(\frac{P(i,j)}{P(i)P'(j)}) MI(X,Y)=i=1∑∣X∣j=1∑∣Y∣P(i,j)log(P(i)P′(j)P(i,j))
H ( X ) = − ∑ i = 1 ∣ X ∣ P ( i ) l o g ( P ( i ) ) ; H ( Y ) = − ∑ i = 1 ∣ Y ∣ P ′ ( j ) l o g ( P ′ ( j ) ) H(X)=-\sum_{i=1}^{|X|}P(i)log(P(i)) ; H(Y)=-\sum_{i=1}^{|Y|}P'(j)log(P'(j)) H(X)=−i=1∑∣X∣P(i)log(P(i));H(Y)=−