跳转至

A Conditional Probability Framework for Compositional Zero-shot Learning

会议: ICCV 2025
arXiv: 2507.17377
代码: GitHub (已开源)
作者: Peng Wu, Qiuxia Lai, Hao Fang, Guo-Sen Xie, Yilong Yin, Xiankai Lu, Wenguan Wang (山东大学, 中国传媒大学, 南京理工大学, 浙江大学, 西安交通大学)
领域: 零样本学习 / 组合零样本学习
关键词: 条件概率分解, 组合零样本学习, 属性-对象依赖建模, 跨注意力机制, 文本增强特征

一句话总结

提出条件概率框架(CPF),将组合识别概率分解为对象似然 p(o|x) 和属性条件似然 p(a|o,x) 两部分,通过文本增强对象学习和对象引导属性学习两个模块显式建模属性-对象依赖关系,在三个 CZSL 基准上全面超越 SOTA。

背景与动机

组合零样本学习(CZSL)旨在利用已见组合的知识识别已知属性和对象的未见组合。传统方法主要关注解耦属性和对象,将它们视为独立实体分别学习。

现有方法的痛点: 1. 忽视语义约束:某些属性天然与特定对象配对(如"striped"适用于"zebra"/"shirts"但不适用于"sky"/"water"),独立建模无法捕获这种约束 2. 忽视上下文依赖:同一属性在不同对象上视觉表现差异巨大(如"young tree" vs "young dog"中的"young"含义不同) 3. 解耦导致歧义:图像中可能包含多个属性(如"blue""striped""green"等),在完全解耦的情况下无法结合对象信息选择正确属性,导致对未见组合的错误预测

现有上下文建模尝试: - CoT:用对象特征生成逐元素注意力图来精化属性特征 - CANet:用识别出的对象和输入图像来条件化属性嵌入,动态调整属性学习器参数 - 但这些方法仍无法有效建模属性-对象间的语义约束

核心问题

如何在 CZSL 中有效捕获属性与对象之间的相互依赖关系(包括语义约束和上下文依赖),而非简单将其视为独立实体?

从概率角度看,给定图像 x,组合 c=(o,a) 的似然可分解为:

\[p(o,a|x) = p(o|x) \cdot p(a|o,x)\]

其中 p(o|x) 是对象似然,p(a|o,x) 是以对象和图像为条件的属性似然。通过联合优化这两个似然可实现更有效的组合学习。

方法详解

整体框架

CPF 由视觉骨干网络和两个核心模块组成: 1. 文本增强对象学习模块(TEO):融合深层视觉嵌入与文本嵌入,解决语义约束问题,生成增强的对象表示 2. 对象引导属性学习模块(OGA):利用增强后的对象特征和浅层视觉嵌入,通过跨注意力机制捕获属性-对象相互依赖

视觉骨干采用微调的 ViT-B(或 CLIP 的 ViT-L/14),提取两层特征: - 深层特征:最后一个 block 的输出,用于对象学习 - 浅层特征:第3/6/9个 block(CLIP用6/12/18)输出的融合,用于属性学习

关键设计

1. 文本增强对象学习(TEO)

首先构建文本描述符嵌入 q_t,通过将深层视觉 class token 投影到文本空间后与对象文本嵌入做注意力融合:

\[q_t = \text{softmax}\left(\frac{f^o_{v \to t}(v^c_h)(W^o)^\top}{\sqrt{d}}\right) W^o\]

然后用 q_t 与深层 patch token 做注意力,增强语义相关的图像区域,得到文本增强对象特征:

\[v_o = v^c_h + \text{softmax}\left(\frac{q_t \cdot f^o_{v \to t}(V^p_h)^\top}{\sqrt{d}}\right) V^p_h\]

设计直觉:通过文本描述符聚焦于与对象语义相关的图像区域,实现了对"语义约束"的建模。

2. 对象引导属性学习(OGA)

利用增强后的对象嵌入 v_o 作为 query,与浅层 patch 嵌入做跨注意力,得到属性表示:

\[v_a = \text{softmax}\left(\frac{v_o (V^p_l)^\top}{\sqrt{D}}\right) V^p_l\]

设计直觉:对象特征引导模型关注与该对象相关的属性区域,实现了"上下文依赖"建模。例如给定"tree"对象信息后,模型会关注树的年龄相关视觉线索来判断"young"属性。

3. 组合匹配

将属性和对象视觉特征拼接后投影得到组合视觉特征,与组合文本特征对齐。

损失函数 / 训练策略

三个交叉熵损失联合优化:

\[\mathcal{L} = \mathcal{L}_{com} + \alpha_1 \mathcal{L}_{att} + \alpha_2 \mathcal{L}_{obj}\]
  • L_obj:对象分类损失,基于文本增强对象特征 v_o
  • L_att:属性分类损失(条件),基于对象引导属性特征 v_a
  • L_com:组合分类损失,基于拼接后的组合特征 v_c
  • 温度参数 τ = 0.05,损失权重 α₁ = 0.6,α₂ = 0.4

推理策略:采用加法融合而非乘法(避免概率消失问题):

\[\hat{c} = \arg\max_{c_{i,j} \in \mathcal{C}_{test}} p(c_{i,j}|x) + p(a_i|x, v_o) + p(o_j|x)\]

训练细节:Adam 优化器训练 10 个 epoch;ViT-B 学习率 1e-4;CLIP 学习率 3.15e-6;文本嵌入用 GloVe(或 CLIP text encoder);推理速度 1457 fps(ViT-B),与现有方法相当。

实验关键数据

Closed-world 设置(ViT-B 骨干)

数据集 指标 CPF (本文) 之前SOTA 提升
MIT-States AUC 11.2 10.5 (CoT) +6.7%
MIT-States HM 26.8 25.8 (CoT) +3.9%
MIT-States Seen Acc 41.3 39.5 (CoT) +4.6%
MIT-States Unseen Acc 34.8 33.0 (CoT) +5.5%
UT-Zappos50K AUC 41.4 35.1 (ADE) +17.9%
UT-Zappos50K HM 55.7 51.1 (ADE) +9.0%
C-GQA AUC 8.2 7.4 (CoT) +10.8%
C-GQA HM 23.9 22.1 (CoT) +8.1%

Open-world 设置(ViT-B 骨干)

数据集 指标 CPF (本文) 之前SOTA 提升
MIT-States AUC 4.4 1.6 (CompCos) +175%
MIT-States HM 15.1 8.9 (CompCos) +69.7%
UT-Zappos50K AUC 31.2 28.8 (DRANet) +8.3%
UT-Zappos50K HM 47.6 44.8 (ADE) +6.3%
C-GQA AUC 2.10 1.42 (ADE) +47.9%
C-GQA HM 9.5 7.6 (ADE) +25.0%

CLIP 骨干(C-GQA)

设置 指标 CPF 之前SOTA (LOGICZSL) 提升
CW AUC 15.4 15.3 +0.7%
CW HM 33.6 33.3 +0.9%
OW AUC 3.6 3.4 +5.9%
OW HM 13.0 12.6 +3.2%

消融实验要点

  1. 核心组件分析(C-GQA, CW):
  2. Full CPF: AUC=8.2, HM=23.9
  3. 去掉 TEO: AUC=7.6 (-7.3%), HM=22.7 → 验证文本描述符对对象学习的有效性
  4. 去掉 TEO+OGA: AUC=6.9 (-15.9%), HM=21.4 → 验证属性-对象依赖建模的关键作用

  5. 注意力 vs 平均池化:将 Eq.2 或 Eq.4 中注意力替换为简单平均,AUC 分别降至 7.8 和 7.1,验证跨注意力机制的有效性

  6. 视觉嵌入选择:仅用深层特征 AUC=6.7;加入浅层特征后 AUC=8.2(+22.4%),说明浅层细粒度信息对属性学习至关重要

  7. 属性学习引导信号:对象视觉嵌入(AUC=8.2) > 对象文本嵌入(7.7) > 属性文本嵌入(7.6),因为视觉嵌入与属性的对齐更强

亮点

  1. 概率分解视角新颖:将组合识别转化为条件概率分解问题 p(o,a|x) = p(o|x)·p(a|o,x),为 CZSL 提供了清晰的理论框架
  2. 设计简洁有效:核心是两个注意力模块(TEO + OGA),无额外可训练参数的 token 级注意力机制,保持与现有方法相当的推理速度
  3. 提升幅度巨大:尤其在 Open-world 设置下,MIT-States AUC 提升 175%,C-GQA AUC 提升 47.9%
  4. 良好的可扩展性:可无缝集成到 CLIP 等视觉-语言模型中,在最具挑战性的 C-GQA 数据集上也取得 SOTA
  5. 浅深层特征互补使用:深层特征用于全局对象理解,浅层特征保留细粒度属性信息,分层设计合理

局限性 / 可改进方向

  1. 语义歧义问题:对类标签间存在语义歧义的情况(如"highway" vs "road","thick" vs "folded")仍然容易混淆
  2. 视觉混淆:对视觉高度相似的目标(如"thawed meat" vs "frozen fish")识别能力不足
  3. 作者提出的改进方向:利用大语言模型生成更具区分性的文本描述来区分语义相似的类别
  4. CLIP 骨干收益递减:在 C-GQA 的 CLIP 设置下提升较小(CW AUC +0.7%),说明框架在已有强基线上的边际收益有限
  5. 未利用外部知识:不像 KG-SP 和 DRANet 使用外部知识图谱减少候选空间,CPF 纯粹依靠自学习,在 OW 设置下仍有提升空间

与相关工作的对比

方法类型 代表工作 核心思路 CPF 的优势
组合即标签 AoP, SymNet, CGE 将属性-对象组合作为单一标签 CPF 通过分解避免指数级组合空间
解耦学习 OADis, SCEN 独立模块分别学属性和对象 CPF 显式建模属性-对象依赖关系
上下文建模 CoT, CANet 用对象特征调制属性学习 CPF 同时建模语义约束和上下文依赖
VLM 方法 CSP, DFSP, Troika 利用 CLIP 的零样本能力 CPF 可无缝集成 CLIP 且进一步提升

启发与关联

  1. 条件概率分解思想的通用性:这种将复杂联合分布分解为边际分布和条件分布的思路可推广到其他组合识别任务(如动作识别中的"动作+对象"、场景理解中的"关系+实体")
  2. 浅层 vs 深层特征的互补性:浅层特征保留细粒度信息、深层特征捕获全局语义的发现,对多任务学习和多粒度表征设计有借鉴价值
  3. 文本引导视觉注意力:用文本嵌入来引导视觉特征聚焦的思路,可迁移到 VQA、图像检索等需要文本-视觉交互的任务
  4. 推理阶段加法 vs 乘法:采用概率分数加法融合避免乘法的概率消失问题,这个工程技巧值得在类似多分支预测系统中借鉴

评分

维度 分数 (1-5) 说明
创新性 4 条件概率分解视角新颖,但注意力机制设计较常规
技术深度 3.5 方法简洁有效,但数学推导不深
实验充分度 5 三个数据集、两种设置、多种消融、CLIP扩展,非常全面
写作质量 4 逻辑清晰,可视化丰富,有失败案例分析
实用价值 4 框架通用可扩展,代码已开源,推理速度快
综合 4.0 概率分解视角 + 简洁设计 + 全面实验的优秀工作