首页 > 其他分享 >Normalized Mutual Information(NMI, 归一化互信息)

Normalized Mutual Information(NMI, 归一化互信息)

时间:2024-10-30 19:57:42浏览次数:5  
标签:Information Mutual frac log 10 互信息 sum split 归一化

Normalized Mutual Information(NMI, 归一化互信息)

  • 值域是 $[0,1]$,值越高表示两个聚类结果越相似。归一化是指将两个聚类结果的相似性值定量到 $0\sim 1$ 之间。

$$
\text{NMI}=\frac{2\sum_i\sum_jn_{ij}ln\frac{n_{ij}N}{n_in_j}}{-\sum_in_iln\frac{n_i}{N}-\sum_jn_jln\frac{n_j}{N}}
$$

$$
\text{NMI(Y,C)}=\frac{2\times I(Y;C)}{H(Y)+H(C)}
$$

  • 其中Y代表数据真实的类别;C表示聚类的结果。
  • $H(\cdot)$ 表示信息熵,$H(X)=-\sum_{i=1}^N p(i)\log\ p(i)$,此处的 $log$ 以2为底。
  • $I(Y;C)$ 代表互信息, $I(Y;C)=H(Y)-H(Y|C)$ ,互信息是信息论里的一种信息度量,可以看成是一个随机变量中包含的关于另一个随机变量的信息量。

例子

假定共有20个样本,真实类簇为3个,而模型学习得到2个类簇,如下:

  1. 计算 $Y$ 的信息熵 $H(Y)$

    H(Y) 表示数据真实标签的交叉熵,它是一个固定的值。可以在聚类之前计算出。
    $$
    \begin{split}
    H(Y)&=-\sum_{y=1}^3 P(Y=y)logP(Y=y)\
    &=-(\frac{1}{4}log(\frac{1}{4})+\frac{1}{4}log(\frac{1}{4})+\frac{1}{2}log(\frac{1}{2}))\
    &=1.5\ bit
    \end{split}
    $$

  2. 计算 $C$ 的信息熵
    $$
    \begin{split}
    H(C)&=-\sum_{c=1}^3 P(C=c)logP(C=c)\
    &=-(\frac{1}{2}log(\frac{1}{2})+\frac{1}{2}log(\frac{1}{2}))\
    &=1\ bit
    \end{split}
    $$

  3. 计算 $Y$ 和 $C$ 的互信息
    $$
    \begin{split}
    H(Y|C)&=H(Y|C=1)+H(Y|C=2)\
    &=-P(C=1)\sum_{y=1}^3 P(Y=y|C=1)logP(Y=y|C=1)\
    &-P(C=2)\sum_{y=1}^3 P(Y=y|C=2)logP(Y=y|C=2)\
    &=-\frac{1}{2}(\frac{3}{10}log(\frac{3}{10})+\frac{3}{10}log(\frac{3}{10})+\frac{4}{10}log(\frac{4}{10})\
    & +\frac{2}{10}log(\frac{2}{10})+\frac{7}{10}log(\frac{7}{10})+\frac{1}{10}log(\frac{1}{10}))\
    &=1.3639\ bit
    \end{split}
    $$

    $$
    \begin{split}
    I(Y;C)&=H(Y)-H(Y|C)\
    &=1.5-1.3639\
    &=0.1361\ bit
    \end{split}
    $$

  4. 计算 $Y$ 和 $C$ 的归一化互信息

$$
\begin{split}
\text{NMI(Y,C)}&=\frac{2\times I(Y;C)}{H(Y)+H(C)}\
&=\frac{2\times 0.1361}{1.5+1}\
&=0.1089
\end{split}
$$

标签:Information,Mutual,frac,log,10,互信息,sum,split,归一化
From: https://www.cnblogs.com/sunmk/p/18516516

相关文章

  • 特征工程中的「归一化」有什么作用
    归一化在特征工程中的作用包括:1、缩小数据范围、2、加速机器学习模型训练、3、提高模型准确率、4、降低模型复杂度。对1、缩小数据范围进行展开:在数据集中,不同特征可能具有不同的数量级和量纲,导致在模型训练过程中一些特征对结果影响过大,而归一化通过将数据按比例缩放,使之落入一个......
  • DYN / 消防局的设立 / Spread of Information / 将军令 题解
    前言四倍经验:[POI2011]DYN-Dynamite;[HNOI2003]消防局的设立;[ARC116E]SpreadofInformation;将军令。题意简述给你一棵\(n\)个结点的树和点集\(S\),你要选出\(k\)个关键点\(T\),求\(\min\max\limits_{u\inS}\min\limits_{v\inT}\operatorname{dis}(u,v)\)......
  • 三、归一化与标准化
    归一化与标准化前言一、最小最大值归一化1.1原理(公式)1.2API介绍1.2.1参数介绍1.2.2属性介绍1.2.3注意事项1.2.4代码演示1.3举例说明二、标准化2.1原理(公式)2.2API介绍2.2.1参数介绍2.2.2属性介绍2.2.3注意事项2.2.4代码演示2.3举例说明三、案例代码:......
  • YoloV8改进策略:归一化改进|ContraNorm在YoloV8中的创新应用(全网首发)
    论文介绍ContraNorm提出背景:过平滑是图神经网络(GNNs)和Transformer中普遍存在的一种现象,随着层数的增加,性能会恶化。现有方法多从表征完全收敛到单一点的视角来刻画过平滑,但论文深入到一个更一般的维度坍缩视角,其中表征位于一个狭窄的锥体中。ContraNorm的提出:受对比学习......
  • YoloV9改进策略:归一化改进| ContraNorm在YoloV8中的创新应用(全网首发)
    论文介绍ContraNorm提出背景:过平滑是图神经网络(GNNs)和Transformer中普遍存在的一种现象,随着层数的增加,性能会恶化。现有方法多从表征完全收敛到单一点的视角来刻画过平滑,但论文深入到一个更一般的维度坍缩视角,其中表征位于一个狭窄的锥体中。ContraNorm的提出:受对比学习......
  • 14.归一化——关键的数据预处理方法
    引言在人工智能(AI)和机器学习中,归一化(Normalization)是一个重要的预处理步骤。它的主要目的是将数据转换到某个特定的范围。归一化可以帮助模型更高效地学习和提高预测的准确性。归一化在数据预处理方法中占据核心地位,是确保数据质量和模型性能的关键步骤。通过阅读本篇博客,你......
  • Easily Conceal Sensitive Information in Your Images
    EasilyConcealSensitiveInformationinYourImagesSyncfusionEssentialStudioASP.NETMVC2024Volume3enablesdeveloperstoredactimagesbyblurringorpixelatingsensitivesections.SyncfusionEssentialStudioASP.NETMVC,availableaspa......
  • 清空redo,导致ORA-27048: skgfifi: file header information is invalid---惜分飞
    联系:手机/微信(+8617813235971)QQ(107644445)标题:清空redo,导致ORA-27048:skgfifi:fileheaderinformationisinvalid作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]客户由于空间不足,使用>redo命令清空了oracle的redo文件数......
  • U盘中毒了?教你如何删除System Volume Information这个顽固文件夹「建议收藏」
     不得不说cmd命令很好用呢。最近我的U盘中毒了,格式化都删除不了SystemVolumeInformation这个顽固的文件夹,真心伤不起哇!还好现在解决了问题。看来以后得好好对待U盘,不能乱用了。本篇文章教大家如何删除SystemVolumeInformation这个顽固文件夹。希望对你有用。我的......
  • 卷积、激活、池化与批量归一化:深度学习中的关键操作
    在深度学习,尤其是卷积神经网络(CNN)中,卷积、激活、池化和批量归一化是四个基本操作。它们共同作用,帮助模型高效学习和提取数据中的重要特征。1.卷积操作作用卷积操作旨在通过滑动卷积核(过滤器)在输入数据上提取局部特征,如边缘和角点。过程滑动卷积核:卷积核在输入特征图上......