当前位置: 首页 > news >正文

自信息,信息熵,交叉熵,KL散度,JS散度

自信息

自信息 用来衡量一个事件发生所包含的信息量,定义为

I(x)=log⁡1p(x)=−log⁡p(x)I(x)=\log\frac{1}{p(x)}=-\log p(x)I(x)=logp(x)1=logp(x)

即一个事件 xxx 越不可能发生,信息量越大。

信息熵(熵)

信息熵 用来衡量一个随机变量或概率分布的不确定性或平均信息量,定义为

H[X]=Ex∼X[I(x)]H[X]=\mathbb{E}_{x\sim X}[I(x)]H[X]=ExX[I(x)]

XXX离散分布 时,表达为

H[X]=Σxip(xi)I(xi)=−Σxip(xi)log⁡p(xi)H[X]=\Sigma_{x_{i}}p(x_{i})I(x_{i})=-\Sigma_{x_{i}}p(x_{i})\log p(x_{i})H[X]=Σxip(xi)I(xi)=Σxip(xi)logp(xi)

XXX连续分布 时,表达为

H[X]=∫x∼Xp(x)I(x)dx=−∫x∼Xp(x)log⁡p(x)dxH[X]=\int_{x\sim X}p(x)I(x)dx=-\int_{x\sim X}p(x)\log p(x) dxH[X]=xXp(x)I(x)dx=xXp(x)logp(x)dx

交叉熵

交叉熵 是衡量两个分布差异的一种方法,可以理解为用一个分布去编码另一个分布的数据时的平均信息量,离散分布 时表达为

H(P,Q)=−Σxip(xi)log⁡q(xi)H(P,Q)=-\Sigma_{x_{i}}p(x_{i})\log q(x_{i})H(P,Q)=Σxip(xi)logq(xi)

连续分布时同理可得

H(P,Q)=−∫x∼Xp(x)log⁡q(x)dxH(P,Q)=-\int_{x\sim X}p(x)\log q(x) dxH(P,Q)=xXp(x)logq(x)dx

值得特别注意的是,在分类任务中,某个样本的真实类别通常只有某一个目标类,且该类被one-hot编码为1,其他类均为0。故分类任务中的交叉熵通常也可以简化为

H(P,Q)=−p(ytrue)log⁡q(ytrue)H(P,Q)=-p(y_{\text{true}})\log q(y_{\text{true}})H(P,Q)=p(ytrue)logq(ytrue)

其中 ytruey_{\text{true}}ytrue 是真实类别。

KL 散度 (Kullback-Leibler Divergence)

KL散度 用于衡量两个概率分布的差异,离散分布 时定义为

DKL(P∣∣Q)=H(P,Q)−H(P)=Σxip(xi)log⁡p(xi)q(xi)D_{KL}(P||Q)=H(P,Q)-H(P)=\Sigma_{x_{i}}p(x_{i})\log \frac{p(x_{i})}{q(x_{i})}DKL(P∣∣Q)=H(P,Q)H(P)=Σxip(xi)logq(xi)p(xi)

连续分布 时定义为

DKL(P∣∣Q)=H(P,Q)−H(P)=∫x∼Xp(x)log⁡p(x)q(x)dxD_{KL}(P||Q)=H(P,Q)-H(P)=\int_{x\sim X}p(x)\log \frac{p(x)}{q(x)}dxDKL(P∣∣Q)=H(P,Q)H(P)=xXp(x)logq(x)p(x)dx

要注意的是,KL散度 不具有对称性, 即

DKL(P∣∣Q)≠DKL(Q∣∣P)D_{KL}(P||Q)\neq D_{KL}(Q||P)DKL(P∣∣Q)=DKL(Q∣∣P)

另外, KL散度的范围为 [0,∞)[0, \infty)[0,)

JS散度 (Jensen–Shannon Divergence)

JS散度 同样用于衡量两个概率分布的差异,是KL散度的对称化版本,定义为

DJS(P∣∣Q)=12DKL(P∣∣M)+12DKL(Q∣∣M)D_{JS}(P||Q)=\frac{1}{2}D_{KL}(P||M) + \frac{1}{2}D_{KL}(Q||M)DJS(P∣∣Q)=21DKL(P∣∣M)+21DKL(Q∣∣M)

其中,M=12(P+Q)M = \frac{1}{2} (P + Q)M=21(P+Q)

JS散度 具有对称性,即

DJS(P∣∣Q)=DJS(Q∣∣P)D_{JS}(P||Q)= D_{JS}(Q||P)DJS(P∣∣Q)=DJS(Q∣∣P)

另外,JS散度的范围为 [0,log⁡a2][0,\log _{a}2][0,loga2]

http://www.lryc.cn/news/624461.html

相关文章:

  • 【自动化测试】Selenium详解-WebUI自动化测试
  • 代理模式深度解析:从静态代理到 Spring AOP 实现
  • MATLAB建模与可视化技术文档:从二维到三维
  • 当使用STL容器去存放数据时,是存放对象合适,还是存放对象指针(对象地址)合适?
  • Centos7使用lamp架构部署wordpress
  • 使用华为显卡训练深度学习模型的步骤
  • 计算机网络技术学习-day3《交换机配置》
  • 像素风球球大作战 HTML 游戏
  • 【opencv-Python学习笔记(6):阈值处理】
  • 如何平衡电竞酒店和高校宿舍对AI云电竞游戏盒子的不同需求?
  • 云计算- KubeVirt 实操指南:VM 创建 、存储挂载、快照、VMI全流程 | 容器到虚拟机(镜像转换/资源调度)
  • AI需要防火墙,云计算需要重新构想
  • 我们为什么需要时序数据库?
  • AI大模型实战:用自然语言处理技术高效处理日常琐事
  • 云计算核心技术之容器技术
  • 网站服务器使用免费SSL证书安全吗?
  • Orange的运维学习日记--45.Ansible进阶之文件部署
  • 公司无公网IP,如何将内网服务,给外面异地连接使用?远程办公可通过什么访问?
  • 力扣70:爬楼梯
  • 终端管理一体化
  • 【图像算法 - 17】慧眼识“果”:基于深度学习与OpenCV的苹果智能检测系统(附完整代码)
  • 哪里找最新AI工具官网?如何快速对比ChatGPT替代品?AI工具导航指南 - AIbase
  • 实现make/makefile
  • MyCAT完整实验报告
  • 项目实战——矿物识别系统(利用机器学习从化学元素数据中识别矿物,从数据到分类模型)
  • 把 AI 编程助手塞进「离线 U 盘」——零依赖的 LLM-Coder 随行编译器
  • 8.18 打卡 DAY 45 Tensorboard使用介绍
  • Nextcloud 私有云部署:cpolar 内网穿透服务实现安全远程文件访问
  • lamp架构部署wordpress
  • 直播美颜SDK架构揭秘:动态贴纸功能的实现原理与性能优化