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

news/2025/1/18 6:57:14/文章来源:https://www.cnblogs.com/sunmk/p/18516516

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}
$$

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/824326.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

模拟赛总结(四)(终章?)

2024.10.30 T1 追逐游戏 (chase) 被自己的分讨绕死了,以后要学会简化code T2 统计code T3 软件工程 选前\(k - 1\)长的 + 剩下求交集可得\(96\) ~~为什么我贪的不对qwq ~~ 把这个贪心改成大炮就是整洁的一部分 定义\(dp_{i,j}\)表示前\(i\)条线段放到\(j\)个集合里,那么上述方…

【红队】利用 PsycheShell 进行 Paste Jacking 以获取隐秘的反向 Shell

原创 Ots安全介绍 在网络安全领域,粘贴劫持 (Paste Jacking)等技术代表着社会工程攻击日益复杂的趋势。当用户从网页上复制看似无害的内容,但粘贴的内容却遭到恶意篡改时,就会发生粘贴劫持。攻击者可以使用此技术在目标机器上执行命令,尤其是当用户粘贴到终端等敏感环境中时…

数据采集与融合技术实践课第三次作业

数据采集与融合技术实践课第三次作业这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/2024DataCollectionandFusiontechnology码云作业gitee仓库 https://gitee.com/huang-yuejia/DataMining_project/tree/master/work3学号 102202149姓名 黄悦佳目录数据采集与融合技…

猿人学web端爬虫攻防大赛赛题第17题——天杀的http2.0

题目网址: https://match.yuanrenxue.cn/match/17 解题步骤:老方法,看触发的数据包。只有一个数据包,再看cookie中有没有特殊的字段。没有遇到第13题的特殊字段,直接访问。import requestsurl = "https://match.yuanrenxue.cn/api/match/17?page=1" headers = …

你知道多少种API架构风格

以下是最常用的几种风格:👇🌟 『SOAP』:成熟、全面的XML基础风格,最适合企业应用。🌐 『RESTful』:流行、易于实现的HTTP方法风格,理想用于Web服务。📚 『GraphQL』:查询语言风格,请求特定数据,减少网络开销,响应更快。🚀 『gRPC』:现代、高性能的Protocol…

【java应用】 Jmeter玩法:调用jar包实现AES加密

原创 方知本知 从零做软件测试一、将开发提供的AES java类打成jar包 1.1 打开开发提供的java类 用Eclipse开发工具打开,观察包名。新建项目,在生成的src目录下新建包,名字为java类对应的包名,将java类拖到该包下面。1.2 将该java类导出成jar包格式二、Jmeter调用jar包实现A…

chrony服务

APPSRV、ROUTERSRV、STORAGESRV、ISPSRV 完成服务chrony 配置为全网提供时间同步服务器。 为除本机外的所有主机提供时间同步服务。 每隔5分钟同步一次时间。配置Chrony服务APPSRV作为chrony服务的服务段 其他主机作为客户端 APPSRV 配置服务 vim /etc/chrony.confserver 127.0…

RouterSrv路由服务

RouterSrv 完成服务ROUTING 开启路由转发,为当前实验环境提供路由功能。 根据题目要求,配置单臂路由实现内部客户端和服务器之间的通信。 IPTABLES 添加必要的网络地址转换规则,使外部客户端能够访问到内部服务器上的dns、mail、web和ftp服务。 INPUT、OUTPUT和FOREARD链默认…

15 图灵

可判定行问题:计算机的计算能力是有极限的

发布测试

发布测试`package com.atguitu.test; import com.atguigu.mybatis.mapper.UserMapper; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSes…

20242822《Linux内核原理与分析》第六周作业

实验五——分析 system_call 中断处理过程 在上一次实验中我选择的4号系统调用write 一、打开shell并使用命令启动内核进入menu程序 cd ~/LinuxKernel/ qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img 进入menu程序后,可以看到该系统中仅有3个命令:hel…

《诛仙单机版系列一:六道轮回》安装教程|虚拟机一键端|GM工具包

今天给大家带来一款单机游戏的架设:诛仙-六道轮回-五职业。游戏版本:v1.2.4 只适用于单机娱乐,此教程是本人亲测所写,踩坑无数,如果你是小白跟着教程走也是可以搭建成功。 亲测视频演示 https://githubs.xyz/show/289.mp4游戏安装步骤 此游戏架设需要安装虚拟机,没有虚拟…