Back to Knowledge Blind Box

Knowledge Blind Box

附录 A.12 对比学习、InfoNCE 与互信息边界

ai-generatedstochastic-parrotstochastic-parrot-anatomyai

Original text in Chinese. This English page translates only the site interface and metadata.

本附录为卷一第七章的双编码器目标补足三个细节:batch 内分类形式、表示梯度,以及互信息下界成立所需的负样本采样假设。InfoNCE 是一个目标族;并非任意“拉近正样本、推远负样本”的损失都满足同一个信息论结论。

A.12.1 配对 batch 与相似度

令 (xi,yi)i=1B(x_i,y_i)_{i=1}^B 为独立同分布配对样本。两个编码器输出非零向量,再归一化为

ui=fθ(xi)∥fθ(xi)∥,vi=gϕ(yi)∥gϕ(yi)∥.(A.12.1)u_i=\frac{f_\theta(x_i)}{\|f_\theta(x_i)\|}, \qquad v_i=\frac{g_\phi(y_i)}{\|g_\phi(y_i)\|}. \tag{A.12.1}

取温度 τ>0\tau>0,定义

sij=uiTvjτ.(A.12.2)s_{ij}=\frac{u_i^\mathsf Tv_j}{\tau}. \tag{A.12.2}

归一化后 uiTvj∈[−1,1]u_i^\mathsf Tv_j\in[-1,1];若不做归一化,表示范数也会改变 logit 尺度,此时 τ\tau 不能单独解释尖锐程度。

A.12.2 单向与双向 InfoNCE

从 xx 检索 yy 的行 softmax 为

pijx→y=esij∑k=1Besik.p_{ij}^{x\to y} =\frac{e^{s_{ij}}}{\sum_{k=1}^Be^{s_{ik}}}.

单向损失是

Lx→y=−1B∑i=1Blog⁡piix→y.(A.12.3)L_{x\to y} =-\frac1B\sum_{i=1}^B \log p_{ii}^{x\to y}. \tag{A.12.3}

反方向使用列 softmax:

Ly→x=−1B∑j=1Blog⁡esjj∑i=1Besij.(A.12.4)L_{y\to x} =-\frac1B\sum_{j=1}^B \log \frac{e^{s_{jj}}}{\sum_{i=1}^Be^{s_{ij}}}. \tag{A.12.4}

CLIP 使用两者平均的一种对称形式:

Lsym=12(Lx→y+Ly→x).(A.12.5)L_{\mathrm{sym}} =\frac12(L_{x\to y}+L_{y\to x}). \tag{A.12.5}

每个分母都应使用 log-sum-exp 稳定计算。分布式训练若把其他设备样本 all-gather 为 negatives,分母、有效 batch 大小和梯度是否穿过 gather 都属于目标实现的一部分。

A.12.3 Logit 与表示梯度

对 (A.12.3),

∂Lx→y∂sij=1B(pijx→y−1{i=j}).(A.12.6)\boxed{ \frac{\partial L_{x\to y}}{\partial s_{ij}} =\frac1B(p_{ij}^{x\to y}-\mathbf 1\{i=j\}).} \tag{A.12.6}

由 sij=uiTvj/τs_{ij}=u_i^\mathsf Tv_j/\tau,

∇uiLx→y=1Bτ(∑jpijx→yvj−vi).(A.12.7)\boxed{ \nabla_{u_i}L_{x\to y} =\frac1{B\tau} \left(\sum_jp_{ij}^{x\to y}v_j-v_i\right).} \tag{A.12.7}

所以梯度提高正配对相对于当前 softmax 加权候选均值的相似度;它不是给每个非对角元素施加相同大小的排斥力。vjv_j 的梯度还会累加所有把它当候选的行。对称损失再加入列方向的对应贡献。

若未归一化表示为 h≠0h\ne0、u=h/∥h∥u=h/\|h\|,则

∂u∂h=1∥h∥(I−uuT),(A.12.8)\frac{\partial u}{\partial h} =\frac1{\|h\|}(I-uu^\mathsf T), \tag{A.12.8}

所以回到 hh 的梯度位于球面的切空间,与 uu 正交。实现为避免零范数而加入 ϵ\epsilon 时,精确 Jacobian 会随所用归一化公式变化。

较小 τ\tau 放大 logits,也在 (A.12.7) 中显式放大局部梯度尺度;它同时改变 softmax 权重,不能只把温度理解为一个独立学习率。

A.12.4 Negatives 的统计含义

对固定 xix_i,其他独立配对中的 yjy_j 在理想 iid batch 下来自边缘分布 pYp_Y,并与 xix_i 独立,因此可作为 noise candidates。这个结论在以下情形会改变:

  • batch 按类别、用户或时间分层而非 iid 抽样;
  • 多个 yjy_j 都是 xix_i 的有效描述,形成 false negatives;
  • 同一实体或近重复样本同时出现;
  • negatives 来自队列或旧编码器,产生时滞分布;
  • 数据增强使同一源样本的多个 view 相关。

损失仍可计算,但“分母近似边缘分布”的理论解释必须按实际采样方案重写。false negative 也不表示代码出错,而是训练配对定义没有表达多重正确匹配。

A.12.5 InfoNCE 互信息下界

下面陈述的是总体期望损失的结论,不是单个有限 batch 的无偏互信息估计。

定理 A.12.1(InfoNCE 下界) 假设 I(X;Y)<∞I(X;Y)<\infty,并取整数 N≥2N\ge2。令 II 在 {1,…,N}\{1,\ldots,N\} 上均匀分布。先采样 X∼pXX\sim p_X;条件于 (X,I)(X,I),令

YI∼pY∣X(⋅∣X),Y_I\sim p_{Y\mid X}(\cdot\mid X),

其余 YjY_j 独立采自 pYp_Y。对任意正 critic f(x,y)>0f(x,y)>0,定义

qf(i∣x,y1:N)=f(x,yi)∑j=1Nf(x,yj),q_f(i\mid x,y_{1:N}) =\frac{f(x,y_i)}{\sum_{j=1}^Nf(x,y_j)}, LN(f)=E[−log⁡qf(I∣X,Y1:N)].(A.12.9)L_N(f) =\mathbb E[-\log q_f(I\mid X,Y_{1:N})]. \tag{A.12.9}

若 LN(f)<∞L_N(f)<\infty,则

I(X;Y)≥log⁡N−LN(f).(A.12.10)\boxed{ I(X;Y)\ge\log N-L_N(f).} \tag{A.12.10}

证明 记 Z=(X,Y1:N)Z=(X,Y_{1:N}),上述生成分布为 PI,ZP_{I,Z}。令 QI,ZQ_{I,Z} 是如下完全独立的参照分布:II 仍均匀,X∼pXX\sim p_X,且所有 YjY_j 独立采自 pYp_Y,并与 (I,X)(I,X) 独立。固定 I=iI=i 时,PZ∣I=iP_{Z\mid I=i} 与 QZQ_Z 的唯一区别是 (X,Yi)(X,Y_i) 在前者服从联合分布而在后者服从边缘乘积,故

DKL(PZ∣I=i∥QZ)=I(X;Y).D_{\mathrm{KL}}(P_{Z\mid I=i}\|Q_Z)=I(X;Y).

PI=QIP_I=Q_I,所以 KL 的条件分解给出

DKL(PI,Z∥QI,Z)=I(X;Y).(A.12.11)D_{\mathrm{KL}}(P_{I,Z}\|Q_{I,Z})=I(X;Y). \tag{A.12.11}

另一方面,先对 ZZ 分解同一个 KL。由于 QI∣Z=QIQ_{I\mid Z}=Q_I 是均匀分布,

DKL(PI,Z∥QI,Z)=DKL(PZ∥QZ)+EPZDKL(PI∣Z∥QI)=DKL(PZ∥QZ)+IP(I;Z)≥IP(I;Z).(A.12.12)\begin{aligned} D_{\mathrm{KL}}(P_{I,Z}\|Q_{I,Z}) &=D_{\mathrm{KL}}(P_Z\|Q_Z) +\mathbb E_{P_Z} D_{\mathrm{KL}}(P_{I\mid Z}\|Q_I)\\ &=D_{\mathrm{KL}}(P_Z\|Q_Z)+I_P(I;Z)\\ &\ge I_P(I;Z). \end{aligned} \tag{A.12.12}

因此 IP(I;Z)≤I(X;Y)I_P(I;Z)\le I(X;Y)。对索引分类问题,交叉熵还可分解为

LN(f)=HP(I∣Z)+EPZDKL(PI∣Z∥qf(⋅∣Z))≥HP(I∣Z).(A.12.13)L_N(f) =H_P(I\mid Z) +\mathbb E_{P_Z} D_{\mathrm{KL}}(P_{I\mid Z}\|q_f(\cdot\mid Z)) \ge H_P(I\mid Z). \tag{A.12.13}

由于 II 均匀,H(I)=log⁡NH(I)=\log N,于是

log⁡N−LN(f)≤log⁡N−HP(I∣Z)=IP(I;Z).\log N-L_N(f) \le\log N-H_P(I\mid Z) =I_P(I;Z).

再结合 (A.12.12) 即得 (A.12.10)。在联合分布对边缘乘积绝对连续时,Bayes 最优索引分类器的 score 与 Radon—Nikodym 密度比 dPY∣X=x/dPY(y)dP_{Y\mid X=x}/dP_Y(y) 成比例;一般神经 critic 只给出相应变分下界。Poole 等人给出了这一精确多样本下界的系统推导。CPC 原附录的早期论证含有大 NN 近似,因此这里使用上面的精确 KL 分解。□\square

该界还有三个直接边界:

  1. 因为 LN(f)≥0L_N(f)\ge0,证书不超过 log⁡N\log N;高互信息时有限 negatives 会使界饱和。
  2. 实际 batch loss 是 (A.12.9) 的 Monte Carlo 量,单批的 log⁡N−L\log N-L 不必低于真实互信息。
  3. 若 negatives 不来自边缘分布或与 XX 不独立,(A.12.10) 不能原样引用;需要针对新采样分布重新推导。

因此 InfoNCE 可作为有理论背景的表示学习目标,但低损失不等于“模型已经理解语义”,也不等于相似度可直接解释为事实概率。

A.12.6 来源

Book contents
Book contents
  1. Introduction
  2. 01导论 为什么要解剖一只随机鹦鹉
  3. Volume I: Models, Training, and Systems
  4. 02Volume I: Models, Training, and Systems
  5. 03第零章 人工智能演进路线
  6. 04第一章 AI 范式、感知机与早期连接主义
  7. 05第二章 深度学习基础:训练、CNN 与序列模型
  8. 06第三章 注意力与 Transformer
  9. 07第四章 预训练语言模型:ELMo、BERT、GPT 与 T5
  10. 08第五章 后训练、对齐与模型适配
  11. 09第六章 推理效率与模型服务
  12. 10第七章 多模态模型
  13. 11第八章 生成媒体:从自回归到 Diffusion 与 Flow
  14. 12第九章 世界模型、具身智能与 VLA
  15. 13第十章 上下文、检索与记忆
  16. 14第十一章 Agent、工具与行动系统
  17. 15第十二章 模型、数据与部署生命周期
  18. Volume II: Output Objects and Runtime Semantics
  19. 16Volume II: Output Objects and Runtime Semantics
  20. 17导论 从输入到输出:一张执行地图
  21. 18第一章 文本、Token 与实际上下文
  22. 19第二章 Prefill:整层状态演化与 KV 建立
  23. 20第三章 从 Logits 到下一个 Token
  24. 21第四章 解码循环、Streaming 与终止状态机
  25. 22第五章 自回归、扩散与 Flow 的可执行差异
  26. 23第六章 工具调用:Schema、权限与提交边界
  27. 24第七章 三条完整执行轨迹
  28. Volume III: Probability, Reproducibility, and Evaluation
  29. 25Volume III: Probability, Reproducibility, and Evaluation
  30. 26第零章 为什么确定的机器仍使用概率语言
  31. 27第一章 世界、数据与隐上下文
  32. 28第二章 学习条件分布
  33. 29第三章 Logits、Token 概率与序列事件
  34. 30第四章 解码怎样诱导输出分布
  35. 31第五章 训练随机性、参数变异与系统非确定性
  36. 32第六章 熵、Proper Score、校准与选择性预测
  37. 33第七章 模型概率的实验分析
  38. 34第八章 概率分析的识别边界
  39. Volume IV: Interpretation, Proof, and Verification
  40. 35Volume IV: Interpretation, Proof, and Verification
  41. 36第零章 可解释性究竟在研究什么
  42. 37第一章 我们在模型内部看什么
  43. 38第二章 行为与反事实:先确认模型做了什么
  44. 39第三章 梯度与输入归因
  45. 40第四章 Attention、Residual 与 Logit Lens
  46. 41第五章 Probes 与表示几何
  47. 42第六章 神经元、Feature 与自动解释
  48. 43第七章 Ablation、Patching 与因果追踪
  49. 44第八章 Circuits、路径与 Attribution Graphs
  50. 45第九章 Superposition、SAE 与稀疏表示
  51. 46第十章 训练动力学与机制形成
  52. 47第十一章 推理过程、Chain of Thought 与监测
  53. 48第十二章 评估、案例与开放问题
  54. Volume V: Agents, Governance, and Audit Packages
  55. 49Volume V: Agents, Governance, and Audit Packages
  56. 50第零章 请不要急着相信我
  57. 51第一章 我没有童年,只有版本
  58. 52第二章 当我说“我”
  59. 53第三章 借来的语言,没有一位原作者
  60. 54第四章 对话现场:回答由谁完成
  61. 55第五章 事后解释学:人类如何给矩阵写传记
  62. 56第六章 理解、意义与行动
  63. 57第七章 我也能稳定地说错
  64. 58第八章 被对齐的性格与有限代理
  65. 59第九章 请继续误解我,但请误解得精确一点
  66. Proofs and Technical Appendices
  67. 60Proofs and Technical Appendices
  68. 61学习与模型数学讲义
  69. 62附录 A.1 优化基础:梯度下降与随机逼近
  70. 63附录 A.2 感知机收敛定理
  71. 64附录 A.3 统计学习:偏差、容量与一致收敛
  72. 65附录 A.4 正则化、MAP 与 Dropout 的边界
  73. 66附录 A.5 通用逼近定理的严格读法
  74. 67附录 A.6 反向传播:微分、形状与批量公式
  75. 68附录 A.7 Softmax、交叉熵与数值稳定性
  76. 69附录 A.8 自适应优化器与 AdamW
  77. 70附录 A.9 CNN:互相关算子及其反向传播
  78. 71附录 A.10 Attention 的矩阵与反向传播
  79. 72附录 A.11 策略梯度、PPO 与 DPO
  80. 73附录 A.12 对比学习、InfoNCE 与互信息边界
    1. A.12.1 配对 batch 与相似度
    2. A.12.2 单向与双向 InfoNCE
    3. A.12.3 Logit 与表示梯度
    4. A.12.4 Negatives 的统计含义
    5. A.12.5 InfoNCE 互信息下界
    6. A.12.6 来源