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示例,形式为:
-
激活值采集
对每个注意力头索引 \(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\)次独立推理调用
-
均值计算
通过期望值计算得到标准化激活均值:- \(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次),得到多个不同的掩码组合,用于后续评估和优化。
- 每次采样会生成一个二进制掩码(mask),标记哪些头被选中(例如
3. 优化机制:如何通过反馈调整概率?
-
强化学习思想:将选中头的操作视为一种“策略”,通过奖励信号(损失函数)优化策略的分布参数。
-
具体流程:
- 向前传播:用当前掩码选中某些头,替换为平均激活值,输入查询 \(Q_s\) 得到模型输出。
- 计算损失:模型输出与真实答案 \(R_s\) 的交叉熵损失,作为反馈信号。
- 反向传播梯度:将损失梯度回传到伯努利分布的参数 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。
多模态任务向量(MTV)方法的局限性
尽管多模态任务向量(Multimodal Task Vectors, MTV)在处理复杂的视觉-语言任务方面提供了显著优势,但仍存在一些限制。
-
对模型架构的依赖性
- MTV 需要访问语言模型(LMM)的内部架构,因此仅适用于开源模型。
- 无法应用于专有模型,如 GPT-4 和 Gemini。
-
多样本上下文学习(Many-shot ICL)的实用性
- 在许多应用中,多样本上下文学习非常有吸引力。
- 但在数据量较少的场景中,其应用可能不切实际,可能需要依赖合成数据或从其他数据集中转移 MTV。