直推式零样本与少样本 CLIP 方法

直推式零样本与少样本 CLIP 方法

顶部

CVPR

2024 年 6 月 17 - 21 日

西雅图,华盛顿州

直推式零样本 & 少样本 CLIP

Ségolène Martin* Yunshi Huang† Fereshteh Shakeri† Jean-Christophe Pesquet* Ismail Ben Ayed†

  • 巴黎萨克雷大学、Inria、CentraleSupélec、CVN

    † ETS 蒙特利尔

巴黎萨克雷大学

ETS

为未来而创新

背景(Background)

动机(Motivation):

利用未标记数据的批次(= 直推式设置)是一种提升预训练视觉模型分类准确率的经典策略。

这类设置尚未扩展到像 CLIP 这样的文本 - 视觉预训练模型中。

贡献(Contributions):

  • 计算为 CLIP [1] 直推式分类量身定制的文本 - 视觉概率特征向量。

  • 将零样本和少样本分类重新表述为关于狄利克雷分布的优化问题。

  • 提出高效的 EM 算法求解该优化问题。

  • 我们的小批量方法在零样本和少样本设置下均能提升准确率。

构建文本 - 视觉特征(Building Text-Vision Features)

目标: 构建同时整合视觉与文本信息、具有可处理概率分布的特征向量。

→ 利用 CLIP 的零样本概率为每个样本定义特征向量:

\(z_x = \text{softmax}\left( \frac{1}{\tau} \cos(f_v(x), f_t(l_k))\right)_{k \in \{1,\dots,K\}} \in \Delta_K\)

其中 \(\tau > 0\) 为温度参数,且

\(\Delta_K = \left\{ p = (p_k)_{k \in \{1,\dots,K\}} \in \mathbb{R}^K \mid \sum_{k=1}^K p_k = 1 \right\}\)\(K\) 维单纯形)。

数据分布(Data Distribution)

对于每个类别 \(k \in \{1,\dots,K\}\),假设数据服从狄利克雷分布,参数为 \(\alpha_k = (\alpha_{k,c})_{c \in \{1,\dots,C\}}\)

\(p(z \mid \alpha_k) = \frac{1}{B(\alpha_k)} \prod_{c=1}^K z_c^{\alpha_{k,c} - 1} \quad \text{若 } z \in \Delta_K\)

其中归一化因子 \(B(\alpha_k) = \prod_{c=1}^K \frac{\Gamma(\alpha_{k,c})}{\Gamma\left( \sum_{c=1}^K \alpha_{k,c} \right)}\)\(\Gamma\) 为伽马函数)。

** **** 单纯形上的狄利克雷分布示例:**

左图:\(\alpha = (0.5, 0.5, 0.5)\);右图:\(\alpha = (0.975, 0.975, 0.5)\)

我们方法的概述(Overview of our Method)

[流程图关键元素翻译:CLIP 概率(CLIP probabilities)、预训练(Pretrain)、映射到 \(\Delta^K\)(Mapping to \(\Delta^K\))、对象标签(Label of the object)等]

最小化问题(Minimization Problem)

符号(Notation):

  • \(K\):类别数;\(N\):数据点数;\(\{S, Q\}\)\(\{1,\dots,N\}\) 的划分(支持集 \(S\)、查询集 \(Q\))。

  • 查询集:\(\{x_q\}_{q \in Q}\);支持集:\(\{x_s\}_{s \in S}\)(可为空,即零样本设置)。

联合估计:

  • 软标签 \(u = (u_{n,k})_{n \in \{1,\dots,N\}, k \in \{1,\dots,K\}} \in \Delta_K^N\)(每个样本对各类别的软分配)。

  • 类别分布参数 \(\alpha = (\alpha_k)_{k \in \{1,\dots,K\}} \in \mathcal{A}^K\)\(\mathcal{A} = \{\alpha \in \mathbb{R}_+^C \mid \alpha_c > 0\}\),正实数向量集)。

\(\underset{u, \alpha}{\text{最小化}} \ -\underbrace{\frac{1}{N} \sum_{n=1}^N \sum_{k=1}^K u_{n,k} \ln(p(z_n \mid \alpha_k))}_{\text{① 数据拟合项:促进平衡划分}} - \underbrace{\lambda \sum_{k=1}^K \pi_k \ln(\pi_k)}_{\text{② 划分熵:惩罚划分基数复杂度}} + \underbrace{\sum_{k=1}^K \sum_{n=1}^N u_{n,k} \ln u_{n,k}}_{\text{③ 熵障:处理单纯形约束}}\)

满足单纯形与监督约束

其中 \(\pi_k = \frac{1}{|Q|} \sum_{q \in Q} u_{q,k}\)(类别 \(k\) 在查询集中的占比)。

EM 算法(EM Algorithm)

初始化 \(u^{(0)}\) 为 CLIP 输出的概率,且对所有 \(k \in \{1,\dots,N\}\),令 \(\alpha_k^{(0)} = \mathbf{1}_K\)(全 1 向量)。

// \(u^{(t)}\) 为第 \(t\) 步的软分配

E 步:更新分布参数

\(\alpha_k^{(t+1)} = \arg\min_{\alpha_k} \left\{ - \sum_{n=1}^N u_{n,k}^{(t)} \ln(p(z_n \mid \alpha_k)) \right\}\)

// 更新类别比例

\(\pi_k^{(t+1)} = \frac{1}{|Q|} \sum_{q \in Q} u_{q,k}^{(t)}\)

M 步:更新分配

\(u_{n,k}^{(t+1)} = \text{softmax}\left( \left( \ln(p(z_n \mid \alpha_k^{(t+1)}) + \beta_k \ln(\pi_k^{(t+1)}) \right)_k \right)\)

结束循环

零样本设置下的结果(Results in the Zero-Shot Setting)

真实直推式设置:

  • 每批查询集大小 \(|Q| = 75\) 个样本。

  • 查询集仅含 5 个不同类别,但在 \(K\) 个总类别中是 “未知” 的(无先验标注)。

[表格列:各类别(aeroplane、bicycle、bird、boat、bottle、bus、car、cat、chair、cow、diningtable、dog、horse、motorbike、person、pottedplant、sheep、sofa、train、tvmonitor)、平均值(Average);行:方法(Zero-shot CLIP、CLIP+Kmeans、EM (K=50)、EM (K=50) (dim cov)、EM (K=100)、EM (K=100) (dim cov)、EM+Kmeans、EM+Kmeans (dim cov)、EM+Dirichlet、Hard EM+Dirichlet)及对应数值,保留原文格式]

4 样本设置下的结果(Results in the 4-Shot Setting)

[表格列:各类别(同零样本)、平均值(Average);行:方法(Top-k shot、CoOp [9]、BDSCK [2]、HardEM Shot [7]、EM+Dirichlet、EM+Dirichlet (dim cov)、Hard EM+Dirichlet)及对应数值,保留原文格式]

参考文献(References)

[1] A. Radford 等,《从自然语言监督中学习可迁移视觉模型》,ICML,2021.

[2] R. Zhang 等,《直推式零样本学习的统一分类器》,ICCV,2023.

[3] K. Li 等,《为视觉 - 语言模型预训练提示》,Int. J. Comput. Vis.,2022.

[4] J. Zhu 等,《少样本学习的拉普拉斯正则化》,ECCV,2020.

[5] J. Zhu 等,《少样本学习的直推式正则化》,ICML,2020.

[6] Z. Qiao 等,《用于直推式少样本学习的可插拔评估函数》,NeurIPS,2021.

[7] S. Martin 等,《通过直推式最小描述长度推断的文本先验少样本学习》,NeurIPS,2022.

底部

Paper(论文)

Github(代码库)

posted @ 2025-09-25 12:06  JaxonYe  阅读(23)  评论(0)    收藏  举报