从 KSG 到 InfoAtlas:互信息估计完整学习册

从 KSG 到 InfoAtlas:互信息估计完整学习册

这份学习册把一路走来的内容串成一条线:

MI 是什么、为什么难估 → KSG 怎么估 → DV/MINE 怎么用变分下界估 → InfoAtlas 怎么把"优化"换成"推理" 。

每一部分都保留核心公式 + 直觉 + 与你已学内容的对照。


目录

  • [第 0 部分:导读与地图](#第 0 部分:导读与地图)
  • [第 1 部分:地基------MI 是什么,为什么难估](#第 1 部分:地基——MI 是什么,为什么难估)
  • [第 2 部分:KSG------从样本估 MI 的标准答案](#第 2 部分:KSG——从样本估 MI 的标准答案)
  • [第 3 部分:DV / MINE------变分下界这条路](#第 3 部分:DV / MINE——变分下界这条路)
  • [第 4 部分:InfoAtlas------把优化换成推理](#第 4 部分:InfoAtlas——把优化换成推理)
  • [第 5 部分:总览与串联](#第 5 部分:总览与串联)
  • [第 6 部分:自测题](#第 6 部分:自测题)

第 0 部分:导读与地图

三条主线,同一个目标------估计互信息 I ( X ; Y ) I(X;Y) I(X;Y):

主线 代表方法 核心思想 与 InfoAtlas 的关系
几何计数 KSG / KDE 用近邻距离数出依赖 InfoAtlas 结果表里的非参数基线
变分下界 MINE / DV 训一个 critic 逼近对数密度比 InfoAtlas 的发动机
基础模型 InfoAtlas 预训练超网络,一次前向出 critic 把 MINE 的"训练"换成"推理"

一句话总纲:KSG 教你"要估什么、有多难";MINE 教你"用什么发动机";InfoAtlas 把发动机"预训练化"。


第 1 部分:地基------MI 是什么,为什么难估

1.1 信息论三件套

  • 离散熵: H ( X ) = − ∑ x p ( x ) ln ⁡ p ( x ) H(X)=-\sum_x p(x)\ln p(x) H(X)=−∑xp(x)lnp(x)
  • 微分熵 (连续): h ( X ) = − ∫ p ( x ) ln ⁡ p ( x )   d x h(X)=-\int p(x)\ln p(x)\,dx h(X)=−∫p(x)lnp(x)dx
  • 联合熵 H ( X , Y ) H(X,Y) H(X,Y)、条件熵 H ( X ∣ Y ) = H ( X , Y ) − H ( Y ) H(X|Y)=H(X,Y)-H(Y) H(X∣Y)=H(X,Y)−H(Y)

1.2 MI 的两个等价定义

I ( X ; Y ) = H ( X ) + H ( Y ) − H ( X , Y ) I(X;Y)=H(X)+H(Y)-H(X,Y) I(X;Y)=H(X)+H(Y)−H(X,Y)

I ( X ; Y ) = D K L ( p ( x , y )   ∥   p ( x ) p ( y ) ) = ∬ p ( x , y ) ln ⁡ p ( x , y ) p ( x ) p ( y )   d x   d y I(X;Y)=D_{KL}\big(p(x,y)\,\|\,p(x)p(y)\big)=\iint p(x,y)\ln\frac{p(x,y)}{p(x)p(y)}\,dx\,dy I(X;Y)=DKL(p(x,y)∥p(x)p(y))=∬p(x,y)lnp(x)p(y)p(x,y)dxdy

关键性质 : I = 0 ⟺ X ⊥  ⁣ ⁣ ⁣ ⊥ Y I=0\ \Longleftrightarrow\ X\perp\!\!\!\perp Y I=0 ⟺ X⊥⊥Y。

1.3 为什么难估

要算 I I I,得知道密度 p ( x , y ) p(x,y) p(x,y) 和 p ( x ) p ( y ) p(x)p(y) p(x)p(y)。但:

  • 高维密度估不准(KDE 在 InfoAtlas 表里估 1.59、真值 0.59);
  • 从有限样本估熵本身就有偏差;
  • 所以两条路绕开密度:KSG 用几何,MINE 用变分。

第 2 部分:KSG------从样本估 MI 的标准答案

2.1 KL 熵估计器

单变量微分熵的 Kozachenko--Leonenko 估计:

H ^ ( X ) = − ψ ( k ) + ψ ( N ) + ln ⁡ c d x + d x N ∑ i = 1 N ln ⁡ ( ϵ i / 2 ) \hat H(X)=-\psi(k)+\psi(N)+\ln c_{d_x}+\frac{d_x}{N}\sum_{i=1}^N\ln(\epsilon_i/2) H^(X)=−ψ(k)+ψ(N)+lncdx+Ndxi=1∑Nln(ϵi/2)

其中 ψ \psi ψ 是 digamma, ϵ i \epsilon_i ϵi 是 x i x_i xi 到第 k k k 近邻距离的两倍。

来源(母式) : ln ⁡ p ( x i ) ≈ ψ ( k ) − ψ ( N ) − ln ⁡ V i \ln p(x_i)\approx\psi(k)-\psi(N)-\ln V_i lnp(xi)≈ψ(k)−ψ(N)−lnVi,即"对数密度 = digamma 秩修正 − 对数体积"。

2.2 朴素 MI 的问题

I = H ( X ) + H ( Y ) − H ( X , Y ) I=H(X)+H(Y)-H(X,Y) I=H(X)+H(Y)−H(X,Y) 分别用 KL 估三次再相减:

  • 三个熵各自独立做 kNN 搜索,尺度/体积常数对不齐;
  • 偏差项互相叠加、消不掉。

2.3 KSG 的同一邻域

对每个点 i i i,只在联合空间 找第 k k k 近邻,用这同一个超立方体同时估三个熵:

  • 联合项:体积 ϵ i d \epsilon_i^{d} ϵid,含 k k k 个点;
  • X 条带:体积 ϵ i d x \epsilon_i^{d_x} ϵidx,含 n x ( i ) n_x(i) nx(i) 个点;
  • Y 条带:体积 ϵ i d y \epsilon_i^{d_y} ϵidy,含 n y ( i ) n_y(i) ny(i) 个点。

对数比值里:

ln ⁡ p ( x i , y i ) p ( x i ) p ( y i ) = ψ ( k ) + ψ ( N ) − ψ ( n x ) − ψ ( n y ) + ( − d + d x + d y ) ln ⁡ ϵ i ⏟ = 0 \ln\frac{p(x_i,y_i)}{p(x_i)p(y_i)}=\psi(k)+\psi(N)-\psi(n_x)-\psi(n_y)\quad+\underbrace{(-d+d_x+d_y)\ln\epsilon_i}_{=0} lnp(xi)p(yi)p(xi,yi)=ψ(k)+ψ(N)−ψ(nx)−ψ(ny)+=0 (−d+dx+dy)lnϵi

2.4 偏差抵消(两层修正)

修正 作用
digamma 修正 ( ln ⁡ → ψ \ln\to\psi ln→ψ) 扣掉 ln ⁡ k N \ln\frac{k}{N} lnNk 的有限样本偏差
体积球 → 超立方体(max-norm) 让体积常数与尺度 ϵ i \epsilon_i ϵi 精确对消( c d x c d y / c d = 1 c_{d_x}c_{d_y}/c_d=1 cdxcdy/cd=1)

2.5 最终公式

I ^ ( 1 ) = ψ ( k ) − 1 N ∑ i = 1 N ψ ( n x ( i ) + 1 ) + ψ ( n y ( i ) + 1 ) + ψ ( N ) \hat I^{(1)}=\psi(k)-\frac1N\sum_{i=1}^N\Big\\psi(n_x(i)+1)+\\psi(n_y(i)+1)\\Big+\psi(N) I^(1)=ψ(k)−N1i=1∑Nψ(nx(i)+1)+ψ(ny(i)+1)+ψ(N)

一句话 :用"同一把尺子"量分子分母,让尺子长度 ϵ i \epsilon_i ϵi 在比值里自动消失,只剩"数点"。


第 3 部分:DV / MINE------变分下界这条路

3.1 KL 的 DV 变分表示

D K L ( P ∥ Q ) = sup ⁡ T E P \[ T − log ⁡ E Q e T ] \boxed{D_{KL}(P\|Q)=\sup_T\Big\\mathbb{E}_P\[T-\log\mathbb{E}_Qe\^T\Big]} DKL(P∥Q)=TsupEP\[T−logEQeT]

最优 T ∗ = ln ⁡ d P d Q T^*=\ln\dfrac{dP}{dQ} T∗=lndQdP(对数密度比)。

3.2 指数倾斜分布 Q T Q_T QT

d Q T = e T E Q e T   d Q dQ_T=\frac{e^T}{\mathbb{E}_Qe\^T}\,dQ dQT=EQeTeTdQ

  • Q Q Q 固定(原料)、 T T T 可调(配方)、 Q T Q_T QT 是产物(成品);
  • 当 T = T ∗ = ln ⁡ d P d Q T=T^*=\ln\frac{dP}{dQ} T=T∗=lndQdP 时, Q T ∗ = P Q_{T^*}=P QT∗=P(成品复刻目标)。

3.3 "下界差多少 = D K L ( P ∥ Q T ) D_{KL}(P\|Q_T) DKL(P∥QT)"

D K L ( P ∥ Q ) − ( E P T − ln ⁡ E Q e T ) = D K L ( P ∥ Q T ) ≥ 0 \boxed{D_{KL}(P\|Q)-\Big(\mathbb{E}_PT-\ln\mathbb{E}Qe\^T\Big)=D{KL}(P\|Q_T)\ \ge\ 0} DKL(P∥Q)−(EPT−lnEQeT)=DKL(P∥QT) ≥ 0

含义 :下界越紧 ⟺ 成品 Q T Q_T QT 越像目标 P P P;由 KL 非负性一步锁死最优 T T T。

3.4 应用到 MI

代入 P = p x y P=p_{xy} P=pxy、 Q = p x ⊗ p y Q=p_x\otimes p_y Q=px⊗py:

I ( X ; Y ) = sup ⁡ T E p x y \[ T ⏟ 联合项 − log ⁡ E p x ⊗ p y e T ⏟ 边缘项 ] I(X;Y)=\sup_T\Big\\underbrace{\\mathbb{E}_{p_{xy}}\[T}{\text{联合项}}-\log\underbrace{\mathbb{E}{p_x\otimes p_y}e\^T}_{\text{边缘项}}\Big] I(X;Y)=Tsup联合项 Epxy\[T−log边缘项 Epx⊗pyeT]

最优 critic T ∗ ( x , y ) = ln ⁡ p ( x , y ) p ( x ) p ( y ) = P M I ( x , y ) T^*(x,y)=\ln\frac{p(x,y)}{p(x)p(y)}=\mathrm{PMI}(x,y) T∗(x,y)=lnp(x)p(y)p(x,y)=PMI(x,y)。

3.5 置换技巧:从联合样本造"独立样本"

取均匀随机置换 π \pi π,配对 ( x i , y π ( i ) ) (x_i,y_{\pi(i)}) (xi,yπ(i)):

E π 1 n ∑ i f ( x i , y π ( i ) ) = 1 n 2 ∑ i , j f ( x i , y j ) = E p ^ x ⊗ p ^ y f \mathbb{E}\pi\Big\\frac1n\\sum_i f(x_i,y_{\\pi(i)})\\Big=\frac1{n^2}\sum{i,j}f(x_i,y_j)=\mathbb{E}_{\hat p_x\otimes\hat p_y}f Eπn1i∑f(xi,yπ(i))=n21i,j∑f(xi,yj)=Ep^x⊗p^yf

前提 : π \pi π 与数据独立。结果:对经验边缘乘积无偏。

3.6 完整经验估计器(MINE / InfoAtlas 共用)

I ^ θ = 1 n ∑ i = 1 n T θ ( x i , y i ) − log ⁡ ( 1 n ∑ i = 1 n e T θ ( x i , y π ( i ) ) ) \boxed{\hat I_\theta=\frac1n\sum_{i=1}^n T_\theta(x_i,y_i)-\log\Big(\frac1n\sum_{i=1}^n e^{T_\theta(x_i,y_{\pi(i)})}\Big)} I^θ=n1i=1∑nTθ(xi,yi)−log(n1i=1∑neTθ(xi,yπ(i)))

3.7 四个坑 + EMA

坑 偏差方向 缓解
1 批内 vs 全数据 看情形 推理用全数据
2 同批复用(Jensen + 比值偏) I ^ \hat I I^ 抬高 EMA、LOO
3 固定点 π ( i ) = i \pi(i)=i π(i)=i I ^ \hat I I^ 压低 无固定点置换
4 粗边缘 重尾估偏 大 batch、切片

EMA : E t = β E t − 1 + ( 1 − β ) M ^ t \mathcal{E}t=\beta\mathcal{E}{t-1}+(1-\beta)\hat M_t Et=βEt−1+(1−β)M^t,治"机制一(方差→Jensen 缺口)"和"机制二(分母跨批→比值偏)"。

为什么"期望的比值"才是真值 :真值 = 微积分给的梯度 μ A / μ B \mu_A/\mu_B μA/μB("期望的比值"),不是估计量的均值 E A \^ / B \^ \mathbb{E}\\hat A/\\hat B EA\^/B\^("比值的期望");估计量相合但有偏。

3.8 DV vs NWJ vs InfoNCE

下界 公式 紧度 方差
DV E T − log ⁡ E e T \mathbb{E}T-\log\mathbb{E}e\^T ET−logEeT 最紧 高
NWJ E T − E e T − 1 \mathbb{E}T-\mathbb{E}e\^{T-1} ET−EeT−1 中 中
InfoNCE 对比形式 松 log ⁡ K \log K logK 低

第 4 部分:InfoAtlas------把"优化"换成"推理"

4.1 问题

MINE 准但每数据集要从零训 critic( O ( T ) \mathcal{O}(T) O(T)),太慢。InfoAtlas 要"预训练一次、一次前向出 MI"。

4.2 核心:超网络 θ ∗ = H ( D ) \theta^*=\mathcal{H}(\mathcal{D}) θ∗=H(D)

  • H \mathcal{H} H 输入数据集,输出 critic 的全部参数;
  • 拿到 θ \theta θ 后代入 DV 公式一步算 MI;
  • 把" arg ⁡ sup ⁡ θ \arg\sup_\theta argsupθ"换成" H ( D ) \mathcal{H}(\mathcal{D}) H(D)"。

4.3 双通道架构(对应 DV 两项)

  • joint path :处理原配对 ( x i , y i ) (x_i,y_i) (xi,yi) → 联合项;
  • marginal path:处理打乱配对 → 边缘项;
  • 融合 h f u s e d = C r o s s A t t n ( h m a r g i n a l , h j o i n t , h j o i n t ) \mathbf{h}{fused}=\mathrm{CrossAttn}(\mathbf{h}{marginal},\mathbf{h}{joint},\mathbf{h}{joint}) hfused=CrossAttn(hmarginal,hjoint,hjoint),MLP 生成 θ \theta θ;
  • attention 天然置换不变(匹配 MI 与顺序无关)。

4.4 噪声填充(保 MI 的维度补齐)

d < D d<D d<D 时补独立高斯噪声: I ( X ; N x ; Y ; N y ) = I ( X ; Y ) I(X;N_x;Y;N_y)=I(X;Y) I(X;Nx;Y;Ny)=I(X;Y)(Prop A.3)。

对比零填充:零填充塌缩到低维子空间、制造人工结构;噪声填充满秩、不携带信息。

4.5 切片 MI(高维降维)

k k k-sliced MI:随机正交投影 P i , P i ′ ∈ R k × d P_i,P'_i\in\mathbb{R}^{k\times d} Pi,Pi′∈Rk×d(Stiefel 流形),投到 k k k 维后平均:

S I ^ k = 1 S ∑ i = 1 S I ^ ( P i x , P i ′ y ) \hat{SI}k=\frac1S\sum{i=1}^S\hat I(P_i\mathbf{x},P'_i\mathbf{y}) SI^k=S1i=1∑SI^(Pix,Pi′y)

  • 代价:切片 MI ≠ 完整 MI(可能漏特定方向依赖);
  • 收益: O ( S T ) → O ( 1 ) \mathcal{O}(ST)\to\mathcal{O}(1) O(ST)→O(1)(S 片打包进一个 batch)。

4.6 copula 混合 + flow 预训练

  • copula:Sklar 定理,把"依赖"与"边缘"解耦;
  • 依赖多样性 : K = 60 K=60 K=60 个 copula 混合(Gaussian + Student-t,后者补尾部依赖);
  • 边缘多样性:随机可逆 flow + softrank;
  • 训练目标: min ⁡ H E D − I \^ H ( D ) \min_\mathcal{H}\mathbb{E}_{\mathcal{D}}-\\hat I_{\\mathcal{H}(\\mathcal{D})} minHED−I\^H(D)。

4.7 实验

实验 回答
BMI 基准(8 任务) 精度:0.60 对齐 MINE;耗时 0.09s(约 300×)
独立性检验 Type I/II/III MI 当统计量; d = 128 d=128 d=128 时 KSG 塌、InfoAtlas 撑住
CLIP 512D 高维零样本
PointOdyssey 视频分割,秒级
ManiSkill2 MI 奖励塑形(可微性落地),94.2% vs No-MI 66%
消融 k = 5 , S = 25 k=5,S=25 k=5,S=25 优于 k = 1 , S = 128 k=1,S=128 k=1,S=128

4.8 局限

  1. 受预训练分布限制(离散/新结构差,需 vine copula);
  2. 切片 ≠ 完整 MI;
  3. 参数 ∣ Θ ∣ |\Theta| ∣Θ∣ 随 D D D 膨胀(可试低秩)。

4.9 两个 Proposition

  • A.3:噪声填充保 MI(已证)。
  • A.1(一致性) :预训练目标最优点 = "数据集 ↦ 最优 critic"映射。逻辑链:
    1. 单数据集: I ^ θ ≤ I ^ emp \hat I_\theta\le\hat I_{\text{emp}} I^θ≤I^emp,等号 ⟺ 最优 critic;
    2. 取期望:整体上界;
    3. 目标必须取到上界 ⟹ H ∗ ( D ) = T p ^ D ∗ \mathcal{H}^*(\mathcal{D})=T^*{\hat p\mathcal{D}} H∗(D)=Tp^D∗;
    4. n → ∞ n\to\infty n→∞ 时经验最优 → 真值最优。

第 5 部分:总览与串联

5.1 三条主线的能力对照

能力 KSG MINE InfoAtlas
低维精度 好 好 好
高维 差(维度灾难) 中 好(切片)
可微(当目标) ❌ ✅ ✅
单次速度 快(0.13s) 慢(25.9s) 快(0.09s)
零样本 无(每份现算) 无(每份重训) ✅ 预训练一次
理论保证 偏差抵消 下界一致性 Prop A.1

5.2 为什么 InfoAtlas 能"高维 + 快 + 准"

  • 高维:切片 MI 把大问题切成多个可处理的小问题;
  • 快:超网络一次前向替代逐数据集训练;
  • 准:DV 下界 + 双通道 critic,精度对齐 MINE;
  • 泛化:copula + flow 预训练覆盖广。

5.3 关键概念速查

概念 一句话
MI D K L ( p x y ∣ p x p y ) D_{KL}(p_{xy}|p_xp_y) DKL(pxy∣pxpy), = 0 =0 =0 即独立
KSG 同邻域数点,偏差抵消
DV / MINE 变分下界 + critic
指数倾斜 Q T Q_T QT 按 e T e^T eT 重加权, T ∗ T^* T∗ 时 Q T = P Q_T=P QT=P
置换技巧 打乱 y y y 造独立配对
超网络 输出另一个网络权重的网络
copula 剥离边缘后的纯依赖
切片 MI 随机投影到低维再平均

第 6 部分:自测题

KSG

  1. MI 的两个等价定义?
  2. KSG 的母式 ln ⁡ p ≈ ψ ( k ) − ψ ( N ) − ln ⁡ V \ln p\approx\psi(k)-\psi(N)-\ln V lnp≈ψ(k)−ψ(N)−lnV 从哪来?
  3. 为什么用 max-norm 而不是欧氏球?

DV / MINE

  1. DV 表示怎么来的?最优 T ∗ T^* T∗ 是什么?
  2. 为什么下界差 = D K L ( P ∥ Q T ) D_{KL}(P\|Q_T) DKL(P∥QT)?
  3. 置换技巧为什么给出"独立配对"?
  4. 四个坑分别是什么、EMA 治哪两个?

InfoAtlas

  1. θ = H ( D ) \theta=\mathcal{H}(\mathcal{D}) θ=H(D) 怎么替代逐数据集训练?
  2. 双通道为什么对应对 DV 的两项?
  3. 噪声填充为什么保 MI、零填充为什么不保?
  4. 切片 MI 的收益与代价?
  5. Prop A.1 的一致性逻辑链?

结语 :KSG 是"几何标准答案",MINE 是"变分发动机",InfoAtlas 是"把发动机装进基础模型"。三者不是替代关系,而是同一个问题在不同约束下的不同解法。

相关推荐
Be for thing1 小时前
PyCharm安装与PyTorch项目配置|Jupyter Notebook与PyCharm使用对比
pytorch·学习·1024程序员节
java_nnnn2 小时前
Linux 学习第二篇:从零认识 Linux 文件系统、目录结构与基本命令
linux·运维·学习·1024程序员节
東隅已逝,桑榆非晚3 小时前
搜索二叉树
c++·笔记·学习·1024程序员节
Young Doro13 小时前
独立性检测学习任务
人工智能·学习·数据挖掘
卡卡~~14 小时前
“101计划”核心课程实践教材《数据实验结构指导-C++语言版》题目集
开发语言·c++·学习·算法
lengxuenong16 小时前
树状数组 · 信息学学习手册1-求和3个模板
c++·学习·算法·青少年编程
lanxiaoqing0216 小时前
演讲训练的第一步:先敢说,再会说
人工智能·学习·学习方法·口才
m4Rk_18 小时前
【论文阅读】Agent记忆机制(109):MemComposer——用强化学习学会选哪些记忆、选多少以及怎样排序
论文阅读·人工智能·学习·开源·github