多图像输入视觉语言模型新方法
视觉语言模型能够将图像和文本映射到同一表征空间,在广泛的多模态AI任务中展现出卓越性能。然而,这些模型通常基于文本-图像对进行训练:每个文本输入仅关联一张图片,这限制了模型的适用性。例如,我们可能希望视觉语言模型接收两张输入图像来识别它们之间的差异,或者从超声波或X射线截面的3D融合图像中进行推理。在某电商平台的商店中,单个产品常关联多张图片,用户可能希望执行涉及多张图片的查询。
解决此局限的标准方法是将多张图像拼接起来,作为一个巨大的图像输入模型。但这错失了创建更丰富表征(即嵌入)的机会,这种表征可以系统地利用多张图像中的互补信息。
多图像融合新方法
在今年的计算机视觉应用冬季会议(WACV)上,我们提出了一种新方法,用于生成多图像的综合嵌入,从而提升多项多模态AI任务的性能。我们研究了四种多图像融合方法:
- 逐元素平均:计算单个图像嵌入的元素级平均值
- 最大池化:记录所有图像中每个图像特征的最高值
- 注意力机制(带门控和不带门控):使用神经网络注意力机制
我们在三项不同任务上测试了该方法:产品分类、产品信息推理和图像描述。作为基线,我们使用接收拼接图像并在每个任务上进行微调的模型,并通过准确率、精确率和召回率三项指标来衡量结果。
实验结果表明,采用无门控注意力机制的模型在所有任务中均表现最佳,有时优势显著。例如,在图像描述任务中,其表现比基线模型高出6.4%;在产品属性推理任务中,其精确率和召回率分别比基线模型高出6.9%和7.9%。
模型架构
视觉语言模型通常包含一个图像编码器(生成输入图像的嵌入)和一个投影层(学习将图像嵌入投影到预训练大语言模型的表征空间中)。有时,在图像编码器和投影层之间还会插入一个查询嵌入生成器。该生成器基于图像嵌入及其相关图像描述进行训练,学习图像嵌入的语言表征,帮助投影层更好地导航大语言模型的表征空间。
我们引入了一个多实例视觉组件,该组件在上述两种架构中均可接收视觉编码器的输出,为多个输入图像创建统一表征。
置换不变注意力机制
视觉编码器学习识别输入数据的特征——可能是低层属性(如图像块的颜色梯度)或高层属性(如特定形状),并为每个输入在特征维度上赋值。
我们的第一种方法简单地平均输入图像的特征值,而最大池化则选取所有图像中每个特征的最高值。
注意力机制针对特定任务进行微调,学习哪些图像的哪些特征对该任务最重要。我们要求多图像的表征不依赖于图像输入视觉编码器的顺序,因此设计了一种注意力机制,其中每个图像特征的注意力值不仅取决于该图像的嵌入,还取决于其他图像的嵌入。
带门控的注意力机制与基本注意力机制类似,但它学习一个额外的Sigmoid函数来增强高注意力值、降低低注意力值,旨在隔离输入信号中最关键的特征。然而在实验中,其效果不如基本注意力机制。
由于我们对目标任务的注意力机制进行了微调,因此也对基线模型进行了微调以确保公平比较。但在属性推理和描述任务上,微调实际上降低了基线模型的性能。若以零样本拼接图像模型作为基线,我们方法的优势略有缩小:在图像描述任务上,优势缩减至5.6%;在产品属性推理任务上,精确率和召回率的优势分别缩减至5.5%和7%。但这仍然是一个显著的差异。
目前,注意力机制仅应用于视觉编码流程,并假设所有图像是独立同分布的。在正在进行的工作中,我们正在研究跨模态注意力以及融合图像间的相关性是否能带来进一步的改进。FINISHED