• KL散度与率失真优化问题


    学习的路径

    从Joint Neural Phase Retrieval and Compression for Energy- and Computation-Efficient Holography on the Edge论文开始,看到其开源代码时,注意到Hyperprior模型,不是特别理解,于是溯源到VARIATIONAL IMAGE COMPRESSION WITH A SCALE HYPERPRIOR文章中来,在看文章的途中遇到的各种问题,于是有了这篇文章,当然我并没有看到这篇文献,现在只是先把我看到的总结起来。

    信息论与编码的基本知识

    • 信息量(不确定度)、熵(平均信息量)、条件信息量
      信息量与不确定度大小相同,事件发生后不确定度的减少量与事件发生提供的信息量相同,通过公式 − log P ( x ) -\text{log}P(x) logP(x)来表示,其中x为某个事件,随机事件/随机变量 X X X的熵即为信息量的期望值 H ( X ) = − ∑ x ∈ { x 1 , x 2 , ⋯   } P ( x ) ⋅ log P ( x ) H(X)=-\sum_{x \in \{x_1, x_2, \cdots\}}P(x)\cdot \text{log}P(x) H(X)=x{x1,x2,}P(x)logP(x).

      条件信息量 I ( x ∣ y ) = − log P ( x ∣ y ) I(x|y)=-\text{log}{P(x|y)} I(xy)=logP(xy),条件熵 H ( X ∣ y i ) = − ∑ x ∈ { x 1 , x 2 , ⋯   } P ( x y i ) log P ( x ∣ y 1 ) H(X|y_i)=-\sum_{x \in \{x_1, x_2, \cdots\}}P(xy_i)\text{log}{P(x|y_1)} H(Xyi)=x{x1,x2,}P(xyi)logP(xy1) H ( X ∣ Y ) = − ∑ y ∈ { y 1 , y 2 , ⋯   } ∑ x ∈ { x 1 , x 2 , ⋯   } P ( x y ) log P ( x ∣ y ) H(X|Y)=-\sum_{y \in \{y_1, y_2, \cdots\}}\sum_{x \in \{x_1, x_2, \cdots\}}P(xy)\text{log}{P(x|y)} H(XY)=y{y1,y2,}x{x1,x2,}P(xy)logP(xy)

      平均互信息量 I ( X ; Y ) = H ( X ) − H ( X ∣ Y ) I(X;Y)=H(X)-H(X|Y) I(X;Y)=H(X)H(XY)
      一图以蔽之:
      在这里插入图片描述

    • KL散度(Kullback–Leible divergence)
      KL散度英文全称为 Kullback–Leible divergence简称KLD。KL散度用于描述两个随机变量分布之间的差异,常用于信息论、机器学习和深度学习中。
      假定真实分布为 q q q,我们设计的期望去逼近 q q q分布是 p p p,则有正向KL散度的公式为 K L ( q ∥ p ) = ∑ q log q p KL(q\| p)=\sum {q}\text{log}{\frac{q}{p}} KL(qp)=qlogpq,反向KL散度的表示为 K L ( p ∥ q ) KL(p \| q) KL(pq)。正向KL散度和反向KL散度并不相等,意味着KL散度并不具有对称性,在不同的情况下需要使用不同的公式。
      二者的不同可以从公式出来来进行理解,特别是通过单峰分布来拟合多峰分布(实际分布往往是多峰的)的情况,并且这类似于交叉熵在 q q q 分布上求解 p p p分布的熵 E q ( p ) = ∑ x q ( x ) log p ( x ) E_{q}(p)=\sum_{x} {q(x)\text{log}p(x)} Eq(p)=xq(x)logp(x)。对于正向KL散度公式来说,当 q q q为0时,意味着真实分布在这里为0,则真实分布和拟合分布之间的差异不考虑,这样拟合出来的分布往往不局限于多峰分布中的某个峰,而是趋于寻找极大似然估计。举例如果拟合的是多峰中的某个峰,则正向KL散度仍然会很大。
      对于反向KL散度公式来说,当 p p p很小时,KL散度相应权重很小,意味着不考虑拟合分布概率密度小的地方,这样拟合的分布会陷入某个单峰的拟合中。
      在这里插入图片描述
      在这里插入图片描述
      详细内容可以参考知乎博客

    • 变分推断(variational inference)
      在本文中,我们考虑一个编码器 g a g_a ga将输入 X X X映射为 Y Y Y,这些数据存在一些特性,如:输入的 X X X真实分布不可知,因此 条件分布 P ( Y ∣ X ) P(Y|X) P(YX)不可知,假定可以使用 X X X的采样频率分布近似 X X X的真实分布,根据贝叶斯公式 P ( Y ∣ X ) = P ( X ∣ Y ) ⋅ P ( Y ) P ( X ) P(Y|X)=\frac{P(X|Y)\cdot P(Y)}{P(X)} P(YX)=P(X)P(XY)P(Y),需要进行多重积分因此条件分布仍然是"intractable"。
      可以通过变分推断(variational inference)的形式来解决,设计一个存在参数 λ \lambda λ的分布 q ( Y ; λ ) q(Y;\lambda ) q(Y;λ)来近似实际不可获得的条件分布 P ( Y ∣ X ) P(Y|X) P(YX)。而这个近似的直觉思路是通过反向KL散度来设计。但是KL散度中存在上述的intractable的问题,因此希望把KL散度的优化问题转化为其他的优化函数。
      详细内容参考知乎回答

    VARIATIONAL IMAGE COMPRESSION WITH A SCALE HYPERPRIOR

    1Youtube
    2Youtube
    3CSDN
    4知乎
    5知乎
    6
    7知乎

  • 相关阅读:
    【SpringBoot笔记21】SpringBoot框架使用AOP + 自定义注解实现请求日志记录
    递归学习——记忆化搜索
    Flask狼书笔记 | 09_图片社交网站 - 大型项目的架构与需求
    C++智能指针,强制类型转换
    选择用户对话框变到后面去了
    生产管理电子看板,打造目视化精益工厂
    接口测试工具
    React之Hook
    手机备忘录可以设置密码吗 能锁屏加密的备忘录
    ChatGPT付费创作系统V2.8.4独立版 WEB+H5+小程序端 (新增Pika视频+短信宝+DALL-E-3+Midjourney接口)
  • 原文地址:https://blog.csdn.net/BubbleCodes/article/details/133139567