MTV

Multimodal Task Vectors (MTV) --NIPS2024

OR 《Multimodal Task Vectors Enable Many-Shot Multimodal In-Context Learning》

背景

Challenge:

1.LMM应用多样本ICD学习会对上下文长度的内在限制。因为LMM必须编码文本的图像,非常耗费token

2.可能由于预训练任务与ICL不对齐,导致很多指令调节(instruction-tuned)的LMM在ICL设置下的任务表现不佳

3.由于每次推理而处理长上下文,所需的内存和运行时间不断增加

==>本文提出了:MTV——compact representations of multimodal in-context tasks—within the attention heads of LMMs to enable many-shot ICL

在LMM注意力头上加入MTV从而实现多样本的ICL。

文章的思路就是:

1.通过不断地输入多样本的ICL示例,然后多次迭代式地计算最后一个token中的平均激活值。

这make sense的,因为最后一个token是包含了之间的所有token的全部信息的,它对最后推理结果的影响可以认为相当重要

2.在模型中选择最优的注意力头的一个集合用于存储ICL示例的平均激活值,并且选择一个最优的集合,在这个集合中多样本示例将会被编码。

则将这些平均激活值和位置==>MTV, which 能隐式地编码多样本示例。

3.在推理中,将这些平均及激活值和位置replace到原位置上。

由于在步骤1上不断地迭代输入例子来寻找平均激活值,因此最终得到的 MTV 隐式地能够比 上下文长度限制的 编码了更多样本。

结果:
1.使用示例提取MTV的效果 > 零样本和少样本的ICL

\2. MTV直接replace到LMM上,去除了ICL所需要的示例token(也就是说不再需要ICL显式的token去作用在LMM上了,直接将激活的vector加到LMM上就可以实现推理)

分为三步:

1.计算MTV的平均激活值

\(T\) 次推理调用,每次调用传入一个小样本输入 \(I_t\) ,每个 \(I_t\) 包含 \(N\)个 多模态 \(ICD\)

LMM在每次推理调用时接收 N-shot ICL示例,形式为:

\[(x_1, y_1), (x_2, y_2), \dots, (x_N, y_N) \]

  1. 激活值采集
    对每个注意力头索引 \(l\)\(l \in (h,m) which\space means \space h^{th} \space layer \space and \space m^{th} attention \space head\)):

    • 记录其对应输入序列最后一个token的激活值 \(z_{l,j}\)
  • 采集范围:\(T\)次独立推理调用
  1. 均值计算
    通过期望值计算得到标准化激活均值:

    • \(j\):对于 task \(j\)
    • \(T\): 总推理调用次数
    • \(\lambda\): 注意力头的集合

    \[\forall l \in \lambda: \quad \mu_{l,j} = \frac{1}{T} \sum_{t=1}^{T} \mathbb{E}[z_{l,j} \mid I_t] = \frac{1}{T} \sum_{t=1}^{T} \mathbb{E}[z_{l,j} \mid (x_1 : y_1), (x_2 : y_2), \ldots, (x_N : y_N), Q_t] \]

2.提取MTV注意力头的位置

准备一个独立的包含 S 个示例的集合,用于对齐下游任务的格式(用于找到合适的注意力头的位置能够在下游任务上表现良好!)

采样过程属于基于概率的强化学习策略优化方法,核心是通过可微分的概率分布来控制注意力头的选择。以下详细解释具体实现逻辑:


1. 伯努利分布的参数:概率如何定义?

  • 每个注意力头对应一个独立的伯努利分布,参数为选中概率 p(即每个头被选中的概率)。
  • 初始概率:通常所有头的 p 会被初始化为0.5(即50%概率被选中),表示对哪些头重要“无先验知识”,完全通过后续优化调整。
  • 概率的可微性:这些概率 p可学习的参数,后续会通过梯度下降优化(通过损失反馈调整)。

2. 采样过程:如何确定选中哪些头?

  • 独立采样

    :对每个注意力头的位置,根据其对应的概率p,进行一次“伯努利试验”(类似抛硬币):

    • 生成一个0或1的随机数,1表示选中该头,0表示不选中。
    • 例如,若某个头的 p=0.6,则有60%概率生成1(选中),40%概率生成0(不选中)。
  • 多次采样生成候选集:

    • 每次采样会生成一个二进制掩码(mask),标记哪些头被选中(例如 [0,1,0,1,0])。
    • 通过多次采样(如100次),得到多个不同的掩码组合,用于后续评估和优化。

3. 优化机制:如何通过反馈调整概率?

  • 强化学习思想:将选中头的操作视为一种“策略”,通过奖励信号(损失函数)优化策略的分布参数。

  • 具体流程:

    1. 向前传播:用当前掩码选中某些头,替换为平均激活值,输入查询 \(Q_s\) 得到模型输出。
    2. 计算损失:模型输出与真实答案 \(R_s\) 的交叉熵损失,作为反馈信号。
    3. 反向传播梯度:将损失梯度回传到伯努利分布的参数 p,通过策略梯度(Policy Gradient)方法更新 p
    • 若某个头的选中导致损失降低(表现好),则提高它的 p
    • 若导致损失升高(表现差),则降低它的 p

4. 结果收敛:概率如何稳定?

  • 经过多次迭代(如S=1000次)后:
    • 关键头的 p→1:对任务重要的头会被高频选中,概率趋近于1。
    • 无关头的 p→0:对任务无贡献的头的概率趋近于0。
  • 最终,概率最高的头组合 \(λ^{MTV}\) 即为最优插入位置。

3.MTV应用

对于任务 \(j\) ,找到了 平均激活值 \(μ_j^{MVT}\) 和注意力头集合 \(\lambda_j^{MTV}\), 有 \(μ_j^{MVT} = \{μ_{l,j} | \forall l \in \lambda_j^{MTV}\}\) ,插入到模型中即可。在给出新的Query后,模型会返回新的响应 Response。

\[R_{\text{new}} = F(Q_{\text{new}} \mid \lambda_j^{\text{MTV}}, \mu_j^{\text{MTV}}) \]

多模态任务向量(MTV)方法的局限性

尽管多模态任务向量(Multimodal Task Vectors, MTV)在处理复杂的视觉-语言任务方面提供了显著优势,但仍存在一些限制。

  1. 对模型架构的依赖性

    • MTV 需要访问语言模型(LMM)的内部架构,因此仅适用于开源模型。
    • 无法应用于专有模型,如 GPT-4 和 Gemini。
  2. 多样本上下文学习(Many-shot ICL)的实用性

    • 在许多应用中,多样本上下文学习非常有吸引力。
    • 但在数据量较少的场景中,其应用可能不切实际,可能需要依赖合成数据或从其他数据集中转移 MTV。
posted @ 2025-03-02 13:36  ZonHu1  阅读(26)  评论(0)    收藏  举报