banner
NEWS LETTER

VSRN图文对齐机制

Scroll down

VSRN图文对齐机制

0. 论文基础信息

  • 标题:Image-Text Embedding Learning via Visual and Textual Semantic Reasoning
  • 会议/期刊:IEEE TPAMI 2023
  • 核心任务:图像-文本跨模态检索(图文匹配)
  • 核心思想:先做视觉/文本语义推理 → 生成全局单一向量 → 简单内积做匹配 → 高精度+超快推理
  • 模型:VSRN(基础)、VSRN++(增强版)

1. 研究动机与问题

1.1 现有方法的缺陷

  1. CNN 全局特征:只做像素级建模,没有物体间语义关系
  2. 区域-单词密集匹配(SCAN/BFAN/CAMP/IMRAM)
    • 精度高,但推理时要计算所有区域与所有单词的相似度,速度极慢
  3. 缺少显式语义推理:无法建模物体交互、空间关系、场景逻辑。

1.2 本文解决思路

不做密集局部匹配,改为:

  • 对图像区域:语义关系推理 + 空间关系推理 + 全局语义整合
  • 对文本单词:单词关系推理 + 全局语义整合
  • 最终图文各一个向量,内积直接算相似度,速度极快。

2. 整体模型框架

总流程(图像侧 + 文本侧 + 匹配训练)

  1. 图像编码

    自底向上区域提取 → 区域语义亲和度计算 → 构建全连接图 → GCN关系推理 → 空间位置推理 → GRU全局语义推理 → 图像全局表征

  2. 文本编码

    词嵌入/BERT → 单词亲和度计算 → GCN单词关系推理 → GRU全局推理 → 文本全局表征

  3. 训练

    三元组匹配损失 + 文本生成损失 +(VSRN++:Sinkhorn 归一化)

  4. 推理

    图像向量与文本向量内积算相似度。


3. 图像端:完整详细计算流程

3.1 自底向上区域特征提取(Bottom-Up Attention)

输入

任意图像

步骤

  1. Faster R-CNN + ResNet-101 检测器(在 Visual Genome 预训练)。
  2. 输出:物体/区域类别、属性、置信度。
  3. NMS 非极大值抑制(IoU=0.7),置信度阈值 0.3。
  4. 每幅图保留 Top-36 置信度最高的区域
  5. 对每个区域取平均池化特征,维度 2048。
  6. 用线性层映射到统一维度 D:$v_i = W_f f_i + b_f$
  • $f_i$:区域原始特征 (2048)
  • $W_f$:线性变换权重 (D×2048)
  • $v_i$:区域嵌入特征 (D)
  • 最终得到区域集合:$ V = {v_1, v_2, …, v_k}, k=36 $

3.2 区域语义亲和度计算 + 全连接图构建(RRR 核心)

目标

衡量两个区域在语义上的相关程度,用于构建图的边权重。

公式(原文严格公式)

两两区域 $v_i$ 与 $v_j$ 的语义亲和度

$$R(v_i, v_j) = \varphi(v_i)^T \phi(v_j)$$

逐符号解释

  • $\varphi(v_i) = W_\varphi v_i$:对 $v_i$ 做线性变换
  • $\phi(v_j) = W_\phi v_j$:对 $v_j$ 做线性变换
  • $W_\varphi, W_\phi$:可学习权重矩阵 (D×D)
  • $R(v_i, v_j)$:余弦相似度类内积,值越大表示语义越相关

图构建

  • 节点:所有 36 个图像区域
  • 边:由亲和度矩阵 R 完全连接(全连接图)
  • 边权重 = $R_{i,j}$

3.3 区域语义关系推理(RRR:Region Relationship Reasoning)

方法:带残差的图卷积 GCN

公式:

$$V^* = (R * W * W_g) W_r + V$$

步骤

  1. 对亲和度矩阵 R 行归一化(保证数值稳定)。
  2. 做图卷积(并非卷积):信息在全连接图上传递,每个区域融合其他区域的语义。
  3. 残差连接,防止梯度消失。
  4. 输出:语义关系增强后的区域特征

$$V^{} = {v_1^, v_2^, …, v_k^}$$
每个 $v_i^$ 都包含了*与其他所有区域的语义关联信息


3.4 区域位置关系推理

目标:建模空间位置关系

步骤

  1. 计算任意两区域的相对极坐标 $p(i,j)$:
    • 包含:距离 + 方向(方位角+仰角)
  2. M 个可学习高斯核 编码位置信息:
    $$v_i^{#} = \left[ \bigcup_{m=1}^M W_m^# \sum_{j\in \mathcal{N}(i)} \kappa_m(p(i,j)) v_j \right] W_r^# + v_i$$
  3. 残差连接,输出空间增强特征 $V^#$。
  4. 融合:语义特征 + 空间特征 → 最终关系增强区域特征 $V^*$

$$V^* = \text{L2Norm}(V^* + V^#)$$


3.5 全局语义推理

目标

把 36 个区域特征,融合成 1 个图像全局表征

结构:门控循环单元 GRU

(1)更新门(控制记忆更新多少)

$$z_i = \sigma_z \left( W_z v_i^* + U_z m_{i-1} + b_z \right)$$

(2)重置门(控制遗忘多少)

$$r_i = \sigma_r \left( W_r v_i^* + U_r m_{i-1} + b_r \right)$$

(3)候选记忆

$$\tilde{m}i = \sigma_m \left( W_m v_i^* + U_m (r_i \circ m{i-1}) + b_m \right)$$

(4)当前记忆(场景表示逐步生成)

$$m_i = (1-z_i) \circ m_{i-1} + z_i \circ \tilde{m}_i$$

最终图像表征

取最后一步的记忆状态:$I = m_k \quad \in \mathbb{R}^D$这是整幅图像的单一全局向量

区域输入顺序

检测置信度从高到低输入,效果最优。


4. 文本端

4.1 VSRN 基础版文本编码

  1. 词嵌入:
    $$t_i = W_t w_i + b_t$$
  2. 用 GRU 编码整个句子,得到句子向量 C。

4.2 VSRN++ 增强版(BERT + 文本关系推理)

步骤

  1. 12 层 BERT 提取单词特征(固定不微调,省显存)。

  2. 单词语义亲和度计算(和图像完全一致)$R’(t_i, t_j) = \varphi’(t_i)^T \phi’(t_j)$

  3. 构建单词全连接图,用 GCN 做关系推理:$T^* = (R’ * T * W_g’) W_r’ + T$

  4. 用 GRU 做全局语义推理,得到句子全局向量:$C \in \mathbb{R}^D$


5. 匹配与训练(完整损失 + Sinkhorn)

5.1 相似度计算

基础版:直接内积

$$S(I,C) = I^T C$$

5.2 VSRN++:Sinkhorn 归一化

对批次内相似度矩阵 S 做行、列交替归一化,变成双随机矩阵,让匹配更稳定。

$$\mathcal{S}^{(k)’} = \mathcal{S}^{(k-1)} \oslash (\mathcal{S}^{(k-1)} \mathbf{1}\mathbf{1}^\top)$$

$$\mathcal{S}^{(k)} = \mathcal{S}^{(k)’} \oslash (\mathbf{1}\mathbf{1}^\top \mathcal{S}^{(k)’})$$

5.3 匹配损失

$$L_M = \left[\alpha - S(I,C) + S(I,\hat{C})\right]+ + \left[\alpha - S(I,C) + S(\hat{I},C)\right]+$$

  • $\hat{C}$:最难负文本
  • $\hat{I}$:最难负图像
  • $\alpha=0.2$:间隔

5.4 生成损失(Caption 生成正则)

用带注意力的 Seq2Seq LSTM 从区域特征生成 caption:

$$L_G = -\sum_{t=1}^l \log p(y_t | y_{t-1}, V^*; \theta)$$

5.5 总损失

$$L = L_M + L_G$$

  • 生成损失只在训练用,推理时移除,不增加耗时。

6. 可解释性

6.1 注意力图

计算最终图像向量 I 与每个区域 $v_i^*$ 的内积,高亮关键区域。

6.2 关系边可视化

展示 GCN 中权重最高的边,模型自动学到:

  • 人 ↔ 手 ↔ 飞盘
  • 斑马 ↔ 草地 ↔ 水面
  • 酒杯 ↔ 嘴
    无需任何场景图标注。

7. 优点与局限

优点

  • 精度 SOTA
  • 推理极快,适合工业检索
  • 结构简洁:GCN + GRU
  • 可解释
  • 训练稳定

局限

  • 依赖自底向上区域检测质量
  • 未做大规模跨模态预训练(作者列为未来工作)

其他文章
目录导航 置顶
  1. 1. 0. 论文基础信息
  2. 2. 1. 研究动机与问题
    1. 2.1. 1.1 现有方法的缺陷
    2. 2.2. 1.2 本文解决思路
  3. 3. 2. 整体模型框架
    1. 3.1. 总流程(图像侧 + 文本侧 + 匹配训练)
  4. 4. 3. 图像端:完整详细计算流程
    1. 4.1. 3.1 自底向上区域特征提取(Bottom-Up Attention)
      1. 4.1.1. 输入
      2. 4.1.2. 步骤
    2. 4.2. 3.2 区域语义亲和度计算 + 全连接图构建(RRR 核心)
      1. 4.2.1. 目标
      2. 4.2.2. 公式(原文严格公式)
      3. 4.2.3. 逐符号解释
      4. 4.2.4. 图构建
    3. 4.3. 3.3 区域语义关系推理(RRR:Region Relationship Reasoning)
      1. 4.3.1. 方法:带残差的图卷积 GCN
      2. 4.3.2. 步骤
    4. 4.4. 3.4 区域位置关系推理
      1. 4.4.1. 目标:建模空间位置关系
      2. 4.4.2. 步骤
    5. 4.5. 3.5 全局语义推理
      1. 4.5.1. 目标
      2. 4.5.2. 结构:门控循环单元 GRU
        1. 4.5.2.1. (1)更新门(控制记忆更新多少)
        2. 4.5.2.2. (2)重置门(控制遗忘多少)
        3. 4.5.2.3. (3)候选记忆
        4. 4.5.2.4. (4)当前记忆(场景表示逐步生成)
      3. 4.5.3. 最终图像表征
      4. 4.5.4. 区域输入顺序
  5. 5. 4. 文本端
    1. 5.1. 4.1 VSRN 基础版文本编码
    2. 5.2. 4.2 VSRN++ 增强版(BERT + 文本关系推理)
      1. 5.2.1. 步骤
  6. 6. 5. 匹配与训练(完整损失 + Sinkhorn)
    1. 6.1. 5.1 相似度计算
    2. 6.2. 5.2 VSRN++:Sinkhorn 归一化
    3. 6.3. 5.3 匹配损失
    4. 6.4. 5.4 生成损失(Caption 生成正则)
    5. 6.5. 5.5 总损失
  7. 7. 6. 可解释性
    1. 7.1. 6.1 注意力图
    2. 7.2. 6.2 关系边可视化
  8. 8. 7. 优点与局限
    1. 8.1. 优点
    2. 8.2. 局限
请输入关键词进行搜索