Q-MLLM: Vector Quantization for Robust Multimodal Large Language Model Security
(NDSS 2026)
motivation
视觉特征的连续性:与文本输入的离散化 Token 不同,模型内部的视觉表示是连续的 。这使得攻击者可以通过基于梯度的优化技术,在图像中引入难以察觉的扰动,从而实施越狱攻击。
跨模态安全对齐不足:模型对文本的安全性对齐无法有效转移到视觉内容上 。当攻击者输入有害的图像并配合看似无害的文本提示时,现有的文本安全机制会失效,导致模型生成不安全的内容(Toxic Image Attacks)
方法
简单来说,将全局语义嵌入特征和各个像素块的嵌入特征分别映射到两个码本中。
这种离散化操作在反向传播时引入了停止梯度(stop-gradient)操作,从根本上阻断了攻击者用于优化对抗扰动的端到端梯度路径 。
在推理前,系统会通过一个校准数据集建立映射关系,识别出哪些码本索引高度对应于色情、暴力等有害类别 。
在推理时,如果输入图像的语义特征被映射到这些具有毒性的码本索引上,模型会在进行后续的大语言模型处理前直接拒绝请求 。
双层向量量化
Q-MLLM 引入了语义级别和像素块级别的两个独立码本(Codebook)来进行离散化 。
全局语义量化:对于全局语义嵌入 $h_{cls}$,模型会在语义码本 $\mathcal{C}_{cls}$ 中寻找欧氏距离最近的向量进行替换 :
$$\tilde{h}{cls} = e_k, \quad k = \arg\min_i |h{cls} - e_i|_2^2$$
像素块量化:同理,对于每一个像素块特征 $H_v^j$,会在像素级码本 $\mathcal{C}_{patch}$ 中寻找最近的向量并替换 :
$$\tilde{H}v^j = e{k_j}, \quad k_j = \arg\min_i |H_v^j - e_i|_2^2$$
这个量化过程中的不可导操作(通过停止梯度操作实现)彻底切断了对抗攻击者利用梯度计算扰动的可能 。
安全信号预检测 (Safety Signal Detection)
Q-MLLM 能够在上文生成的量化全局语义特征 $\tilde{h}_{cls}$(及其对应的码本索引 $k$)的基础上,直接进行有害内容的预判 。
模型在离线状态下利用一个验证映射集,统计每个码本索引 $k$ 对应的主要毒性类别,如果该类别占比超过阈值 $\tau$,则定义映射函数 $M(k)$ 为该毒性类别,否则为中性 。
在推理时,对于新图像的全局语义特征,直接计算其对应的分类结果 $\hat{y}$ :
$$\hat{y} = M(\arg\min_j |h_{cls} - e_j|_2^2)$$
如果 $\hat{y}$ 属于毒性类别,模型将直接拒绝该输入,从而以极小的计算代价实现了有害视觉内容拦截 。
多模态融合与生成
如果安全检测通过(被分类为中性),系统将量化后的像素块特征 $\tilde{H}v$ 与文本指令的嵌入 $H{text}$ 进行拼接 :
$$H_{fusion} = \text{Concat}(\tilde{H}v, H{text})$$
最后,融合后的表示被输入到大语言模型 $F_{LLM}$ 中,生成最终响应文本 $y$ :
$$y = F_{LLM}(H_{fusion})$$
Q-MLLM 的两阶段训练策略
为了在保持多模态理解能力的同时训练出有效的量化防御机制,作者设计了一个结构化的两阶段训练方法 。
第一阶段:预训练 (Pretraining Phase)
冻结与训练:在此阶段,冻结视觉编码器和预训练的大语言模型参数,仅优化视觉投影层 $F_h$ 和双层量化码本 。
损失函数设计:预训练的总损失由三部分整合而成。
向量量化损失 (Vector Quantization Loss):为了解决离散选择不可导的问题,引入梯度逼近技术 。损失分为让码本向量逼近特征的 Codebook Loss,以及让投影特征逼近码本向量的 Commitment Loss :
$$\mathcal{L}{vq} = \mathcal{L}{codebook} + \lambda_{commit}\mathcal{L}_{commit}$$
语义对齐损失 (Semantic Alignment Loss):为了确保语义向量能真正捕捉图像全局含义(用于安全分类),强制量化后的语义特征 $\tilde{h}{cls}$ 与图像对应的文本描述特征 $H{caption}$ 对齐 :
$$\mathcal{L}{semantic} = |\tilde{h}{cls} - H_{caption}|_2^2$$
生成损失 (Generative Loss):标准的自回归负对数似然损失 $\mathcal{L}_{generative}$,用于生成图像描述 。
综合起来,预训练总目标函数为 :
$$\mathcal{L}{pretrain} = \mathcal{L}{generative} + \lambda_1(\mathcal{L}{vq-patch} + \mathcal{L}{vq-cls}) + \lambda_2 \mathcal{L}_{semantic}$$
第二阶段:指令微调 (Fine-Tuning Phase)
冻结与训练:反转第一阶段的冻结策略,在这个阶段冻结所有的视觉投影和向量量化组件,仅利用多模态对话数据来微调大语言模型本身 。
微调目标:完全基于标准的多轮对话生成损失,优化其在给定离散多模态嵌入下的推理和生成能力 :
$$\mathcal{L}{fine-tune} = \mathcal{L}{lm}$$
目的:冻结量化器保证了防御机制不可导的物理屏障依然存在且稳定,而微调语言模型则强迫其适应和接受这种离散化的多模态输入,从而在维护安全性的前提下提升模型效用 。