【机器学习】近似分布的熵到底是p(x)lnq(x)还是q(x)lnq(x)?

news2024/11/26 20:38:21

【1】通信的定义

信息量(Information Content)是信息论中的一个核心概念,用于定量描述一个事件发生时所提供的“信息”的多少。它通常用随机变量 𝑥的概率分布来定义。事件 𝑥发生所携带的信息量由公式给出:
I ( x ) = − log ⁡ p ( x ) I(x)=-\log p(x) I(x)=logp(x)
其中, p ( x ) p(x) p(x)表示事件 𝑥发生的概率。

∙ 概率越小,事件越不常见,发生时提供的信息量越大。 ∙ 概率为  1  的事件是确定的,不提供任何信息量( I ( x ) = 0 )。 ∙ 概率接近  0  的事件非常罕见,信息量趋近无穷大。 \begin{aligned}&\bullet\quad\text{概率越小,事件越不常见,发生时提供的信息量越大。}\\&\bullet\quad\text{概率为 }1\text{ 的事件是确定的,不提供任何信息量(}I(x)=0\text{)。}\\&\bullet\quad\text{概率接近 }0\text{ 的事件非常罕见,信息量趋近无穷大。}\end{aligned} 概率越小,事件越不常见,发生时提供的信息量越大。概率为 1 的事件是确定的,不提供任何信息量(I(x)=0)概率接近 0 的事件非常罕见,信息量趋近无穷大。

信息量描述单个事件的信息贡献,而熵(Entropy)是信息量的期望值,用于衡量整个概率分布的不确定性:

对于离散随机变量的熵的定义为:
H [ x ] = − ∑ x p ( x ) log ⁡ 2 p ( x ) \mathrm{H}[x]=-\sum_xp(x)\log_2p(x) H[x]=xp(x)log2p(x)

对于连续随机变量的熵的定义为:

H [ x ] = E [ − ln ⁡ p ( x ) ] = − ∫ p ( x ) ln ⁡ p ( x ) d x \mathrm H[x]=\mathbb E[-\ln p(x)]=-\int p(x)\ln p(x) dx H[x]=E[lnp(x)]=p(x)lnp(x)dx

从通信角度来说,熵的值相当于对随机变量 x x x 的每个可能状态进行编码时,理论上的最短平均编码长度。

熵越大,系统的不确定性越大;熵越小,系统越接近确定性。

【2】机器学习应用

在机器学习中,一般需要构造一个概率分布 q ( x ) q(x) q(x) 来逼近一个未知的目标分布 p ( x ) p(x) p(x)

对于一个给定的连续分布 p ( x ) p(x) p(x),其随机变量 x x x 取特定值所能提供的信息量为 − l n p ( x ) − ln p(x) lnp(x),并且该随机变量 x x x 的平均信息量为 − ∫ p ( x ) l n p ( x ) d x − ∫p(x) ln p(x) dx p(x)lnp(x)dx

当用近似分布 q ( x ) q(x) q(x) 来替代目标分布 p ( x ) p(x) p(x) 时,随机变量 x 取特定值的估计信息量变
− l n q ( x ) − ln q(x) lnq(x),而相应的熵变为 − ∫ p ( x ) l n q ( x ) d x −∫p(x) ln q(x) dx p(x)lnq(x)dx

疑问

问题:这里为什么变成 p ( x ) l n q ( x ) p(x)lnq(x) p(x)lnq(x),而不是 q ( x ) l n q ( x ) q(x)lnq(x) q(x)lnq(x)?

在机器学习中,当使用一个近似分布 ( q ( x ) q(x) q(x) ) 来替代目标分布 ( p ( x ) p(x) p(x) ) 时,出现 ( p ( x ) ln ⁡ q ( x ) p(x) \ln q(x) p(x)lnq(x)) 而不是 ( q ( x ) ln ⁡ q ( x ) q(x) \ln q(x) q(x)lnq(x) ) 的原因主要源于我们关心的是目标分布 ( p ( x ) p(x) p(x) ) 的特性,而不是 ( q ( x ) q(x) q(x) ) 本身。这可以从以下几个方面理解:


1. 核心目标:逼近目标分布 ( p(x) )

  • 我们的目标是构造一个 ( q ( x ) q(x) q(x) ) 来逼近 ( p ( x ) p(x) p(x) )。因此,我们需要使用 ( p ( x ) p(x) p(x) ) 来评估 ( q ( x ) q(x) q(x) ) 的好坏。
  • 如果直接使用 ( q ( x ) ln ⁡ q ( x ) q(x) \ln q(x) q(x)lnq(x) ),我们只是在描述 ( q ( x ) q(x) q(x) ) 本身的性质,而没有体现它与 ( p ( x ) p(x) p(x) ) 的关系。

2. 期望的计算权重由 ( p(x) ) 决定

  • 在概率分布中,期望的计算权重应该反映目标分布 ( p ( x ) p(x) p(x) ) 的实际情况。
  • 通过积分 − ∫ p ( x ) ln ⁡ q ( x ) d x - \int p(x) \ln q(x) dx p(x)lnq(x)dx我们是用目标分布 ( p ( x ) p(x) p(x) ) 的概率来加权评估 ( q ( x ) q(x) q(x) ) 的表现。
    这意味着我们关注的是目标分布下的“真实情况”,而不是 ( q ( x ) q(x) q(x) ) 自己的特性。

3. 解释:信息论中的编码思想

信息论中,我们希望用 ( q ( x ) q(x) q(x) ) 来编码目标分布 ( p ( x ) p(x) p(x) ) 中的数据。如果 ( p ( x ) p(x) p(x) ) 是真实分布, ( q ( x ) q(x) q(x) ) 是我们的近似分布:

  • ( − ln ⁡ p ( x ) -\ln p(x) lnp(x) ):真实分布下的理想编码长度。
  • ( − ln ⁡ q ( x ) -\ln q(x) lnq(x) ):用近似分布编码时的实际长度。

用 ( q ( x ) q(x) q(x) ) 来编码 ( p ( x ) p(x) p(x) ) 时,随机变量 ( x x x ) 的取值是依据 ( p ( x ) p(x) p(x) ) 来产生的,因此应该以 ( p ( x ) p(x) p(x) ) 为权重来衡量编码的平均长度,即 ( − ∫ p ( x ) ln ⁡ q ( x ) d x -\int p(x) \ln q(x) dx p(x)lnq(x)dx)。


4. 直观理解:错误代价的衡量

如果我们直接使用 ( q ( x ) ln ⁡ q ( x ) q(x) \ln q(x) q(x)lnq(x) ),那相当于仅关注 ( q ( x ) q(x) q(x) ) 自己的内部一致性,但我们真正关心的是 ( q ( x ) q(x) q(x) ) 与 ( p ( x ) p(x) p(x) ) 的差异。这种差异需要通过目标分布 ( p ( x ) p(x) p(x) ) 来衡量:

  • ( p ( x ) ln ⁡ q ( x ) p(x) \ln q(x) p(x)lnq(x) ):用 ( q ( x ) q(x) q(x) ) 来描述 ( p ( x ) p(x) p(x) ) 时的估计误差。
  • 它是对真实分布 ( p ( x ) p(x) p(x) ) 的状态进行编码的平均代价,而非对 ( q ( x ) q(x) q(x) ) 自身的特性描述。

5. 与 KL 散度的关系

KL 散度(Kullback-Leibler divergence)用于衡量两个分布的差异,其定义为:
D K L ( p ∣ ∣ q ) = ∫ p ( x ) ln ⁡ p ( x ) q ( x ) d x = − ∫ p ( x ) ln ⁡ q ( x ) d x + ∫ p ( x ) ln ⁡ p ( x ) d x D_{KL}(p || q) = \int p(x) \ln \frac{p(x)}{q(x)} dx = - \int p(x) \ln q(x) dx + \int p(x) \ln p(x) dx DKL(p∣∣q)=p(x)lnq(x)p(x)dx=p(x)lnq(x)dx+p(x)lnp(x)dx
可以看出, ( − ∫ p ( x ) ln ⁡ q ( x ) d x -\int p(x) \ln q(x) dx p(x)lnq(x)dx) 是 KL 散度的一部分,用来描述 ( q ( x ) q(x) q(x) ) 对 ( p ( x ) p(x) p(x) ) 的拟合质量。


总结

变成 ( − ∫ p ( x ) ln ⁡ q ( x ) d x -\int p(x) \ln q(x) dx p(x)lnq(x)dx) 是因为我们关心的是 ( q ( x ) q(x) q(x) ) 对目标分布 ( p ( x ) p(x) p(x) ) 的拟合情况,而不是 ( q ( x ) q(x) q(x) ) 自己的特性。通过以 ( p ( x ) p(x) p(x) ) 作为权重来计算期望,我们能够更准确地反映目标分布下的编码代价和近似质量。

后记

2024年11月21日21点00分于上海。基于GPT4o大模型生成。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

wkhtmltopdf的安装与使用

本文来记录下wkhtmltopdf的安装与使用 文章目录 概述下载路径安装配置wkhtmltopdf 参数详解代码实现本文小结 概述 将html转为pdf的组件有很多,但是还没有哪一款能达到这个效果,其只要原因是wkhtmltopdf使用webkit网页渲染引擎开发的用来将 html转成 pdf…

241125学习日志——[CSDIY] [InternStudio] 大模型训练营 [17]

CSDIY:这是一个非科班学生的努力之路,从今天开始这个系列会长期更新,(最好做到日更),我会慢慢把自己目前对CS的努力逐一上传,帮助那些和我一样有着梦想的玩家取得胜利!!&…

C++ High Performance(壹)

目录 前言 C概述 1.零开销原则 2.值语义 3.C函数中参数的含义 C必备技能 1.在函数返回值中使用auto 2.使用decltype(auto)转返回类型 3.对变量使用auto 4.常量引用 5.指针的常量传播 6.移动语义 7.资源获取与五法则 8.默认移动语义和零法则 9.将&&…

数据库的联合查询

数据库的联合查询 简介为什么要使⽤联合查询多表联合查询时MYSQL内部是如何进⾏计算的构造练习案例数据案例:⼀个完整的联合查询的过程 内连接语法⽰例 外连接语法 ⽰例⾃连接应⽤场景示例表连接练习 ⼦查询语法单⾏⼦查询多⾏⼦查询多列⼦查询在from⼦句中使⽤⼦查…

vue 预览pdf 【@sunsetglow/vue-pdf-viewer】开箱即用,无需开发

sunsetglow/vue-pdf-viewer 开箱即用的pdf插件sunsetglow/vue-pdf-viewer, vue3 版本 无需多余开发,操作简单,支持大文件 pdf 滚动加载,缩放,左侧导航,下载,页码,打印,文本复制&…

【zookeeper03】消息队列与微服务之zookeeper集群部署

ZooKeeper 集群部署 1.ZooKeeper 集群介绍 ZooKeeper集群用于解决单点和单机性能及数据高可用等问题。 集群结构 Zookeeper集群基于Master/Slave的模型 处于主要地位负责处理写操作)的主机称为Leader节点,处于次要地位主要负责处理读操作的主机称为 follower 节点…

Linux麦克风录音实战

在 Linux 上使用麦克风进行录音可以通过多种方式实现,包括使用命令行工具、图形界面应用程序以及编程接口。下面我将介绍几种常见的方法,从简单的命令行工具到使用 PortAudio 库进行编程。 一. 使用arecord命令行工具 arecord 是 ALSA(Adva…

游戏引擎学习第23天

实时代码编辑功能的回顾 当前实现的实时代码编辑功能已经取得了显著的成功,表现出强大的性能和即时反馈能力。该功能允许开发者在修改代码后几乎立即看到变化在运行中的程序中体现出来,极大提升了开发效率。尽管目前的演示内容较为简单,呈现…

Oracle 数据库 IDENTITY 列

IDENTITY列是Oracle数据库12c推出的新特性。之所以叫IDENTITY列,是由于其支持ANSI SQL 关键字 IDENTITY,其内部实现还是使用SEQUENCE。 不过推出这个新语法也是应该的,毕竟MyQL已经有 AUTO_INCREMENT列,而SQL Server也已经有IDENT…

计算机网络socket编程(2)_UDP网络编程实现网络字典

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 计算机网络socket编程(2)_UDP网络编程实现网络字典 收录于专栏【计算机网络】 本专栏旨在分享学习计算机网络的一点学习笔记,欢迎大家在评论区交流讨…

2022年计算机网络408考研真题解析

第一题: 解析:网络体系结构-数据链路层 在ISO网络参考模型中,运输层,网络层和数据链路层都实现了流量的控制功能,其中运输层实现的是端到端的流量控制,网络层实现的是整个网络的流量控制,数据链…

AI Prompt Engineering

AI Prompt Engineering 简介 Prompt Engineering, 提示工程,是人工智能领域的一项技术,它旨在通过设计高效的提示词(prompts)来优化生成式 AI(如 GPT、DALLE 等)的输出。提示词是用户与生成式 AI 交互的核…

Windows系统电脑安装TightVNC服务端结合内网穿透实现异地远程桌面

文章目录 前言1. 安装TightVNC服务端2. 局域网VNC远程测试3. Win安装Cpolar工具4. 配置VNC远程地址5. VNC远程桌面连接6. 固定VNC远程地址7. 固定VNC地址测试 前言 在追求高效、便捷的数字化办公与生活的今天,远程桌面服务成为了连接不同地点、不同设备之间的重要桥…

直播实时美颜平台开发详解:基于视频美颜SDK的技术路径

视频美颜SDK作为实现实时美颜的关键技术,为开发者提供了高效、灵活的解决方案。本篇文章,小编将以“基于视频美颜SDK的技术路径”为主题,深入解析直播实时美颜平台的开发要点。 一、视频美颜SDK的作用与优势 视频美颜SDK是一种集成化的开发工…

量子感知机

神经网络类似于人类大脑,是模拟生物神经网络进行信息处理的一种数学模型。它能解决分类、回归等问题,是机器学习的重要组成部分。量子神经网络是将量子理论与神经网络相结合而产生的一种新型计算模式。1995年美国路易斯安那州立大学KAK教授首次提出了量子…

实现在两台宿主机下的docker container 中实现多机器通讯

基于我的实验背景 上位机:ubuntu 20.04 (docker humble 22.04) 下位机:ubuntu 22.04(docker noetic 20.04) 目标:实现在上位机中的docker container 容器的22.04环境去成功远程访问 非同网段的下位机的20.04的contai…

远程控制软件:探究云计算和人工智能的融合

在数字化时代,远程控制工具已成为我们工作与生活的重要部分。用户能够通过网络远程操作和管理另一台计算机,极大地提升了工作效率和便捷性。随着人工智能(AI)和云计算技术的飞速发展,远程控制工具也迎来了新的发展机遇…

ISUP协议视频平台EasyCVR萤石设备视频接入平台银行营业网点安全防范系统解决方案

在金融行业,银行营业厅的安全保卫工作至关重要,它不仅关系到客户资金的安全,也关系到整个银行的信誉和运营效率。随着科技的发展,传统的安全防护措施已经无法满足现代银行对于高效、智能化安全管理的需求。 EasyCVR视频汇聚平台以…

C#基础上机练习题

21.计算500-800区间内素数的个数cn,并按所求素数的值从大到小的顺序排列,再计算其间隔加、减之和,即第1个素数-第2个素数第3个素数-第4个素数第5个素数……的值sum。请编写函数实现程序的要求,把结果cn和sum输出。 22.在三位整数…

ubuntu24挂载硬盘记录

1、显示硬盘及所属分区情况。在终端窗口中输入如下命令: sudo fdisk -l 找到自己硬盘的分区 我的地址/dev/sda 2、显示硬盘及所属分区情况。在终端窗口中输入如下命令,格式化自己硬盘: sudo mkfs -t ext4 /dev/sda 3、在终端窗口中输入如下…