AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


阿里全面开源mPLUG-Owl3!超长图像序列理解多模态大模型
发布日期:2024-08-19 22:19:49 浏览次数: 1677


多模态大语言模型(MLLMs)已经在处理单张图片任务上表现得非常出色。不过,当涉及到长图片序列的处理时,仍然有很多困难需要解决。为此,阿里推出了一款名叫mPLUG-Owl3的模型,它不仅功能强大,还能在需要结合图文知识、混合图文内容和处理长视频的场景中,更好地理解长图片序列。
现有的一些多图输入方法存在两个主要问题:像LLaVA-Next-Interleave等模型将视觉特征直接与文本序列拼接,这在处理多图长序列时会导致高昂的计算成本;而Flamingo等模型使用的cross-attention结构虽然降低了计算开销,但却导致了视觉信息的细节损失,限制了它们在单图和多图任务中的表现。为此,mPLUG-Owl3特别设计了一个叫‘超注意力模块’的新技术,能够高效地将视觉和语言整合在一起,使得处理多张图片的任务变得更加轻松。

01 技术原理
mPLUG-Owl3模型的核心结构由三个主要部分组成:视觉编码器SigLIP-400M、语言模型Qwen2,以及连接这两者的线性层。视觉编码器首先从图像中提取特征,然后通过线性层将这些特征映射到与语言模型相同的维度。在文本序列中,使用了特殊的标记来表示图像位置,并采用self-attention和cross-attention并行建模的方式,将图像特征与文本特征融合在一起。
与Flamingo和EVLM等模型在语言模型的每一层都插入cross-attention层的做法不同,mPLUG-Owl3只在网络中的少数层使用了他们提出的Hyper Attention Transformer Block(HATB)。这种方法避免了引入大量额外的参数和计算负担,同时仍然实现了有效的特征融合。

视觉特征和文本特征首先会经过一个共享的层(LN层)进行处理。在实验中发现,使用同一个LN层来处理视觉和文本输入,比为视觉输入单独设置一个LN模块能带来更好的效果。通过LN层处理后,延续了mPLUG-Owl2的做法,为视觉输入设置了专门的Key-Value映射,同时与文本输入共享相同的Query映射。这样做既能保留视觉特征的独特性,又能让语言模型根据文本的语义,灵活获取所需的视觉信息。
在完成文本间的self-attention和跨模态的cross-attention并行建模后,设计了一种自适应门控机制。通过计算文本特征线性映射后的激活值来获得门控值,实现了文本和视觉信息的自适应融合。
另外,在进行attention建模之前,引入了一种叫做多模态交错旋转位置编码(MI-Rope)的方法,来保留图像和文本的位置信息。因为在文本序列中,图像是用特殊标记表示的,对于第n幅图像,它的所有patch特征都会共享同一个标记位的位置编码。这种设计确保了位置编码不仅能反映图像的顺序,也能反映图像在整个文本序列中的具体位置。
02 实际示例
mPLUG-Owl3可以从检索系统中学习知识。
mPLUG-Owl3 还可以通过交错的图像文本上下文与用户聊天。
mPLUG-Owl3可以观看电影等长视频并记住其细节。
https://huggingface.co/spaces/mPLUG/mPLUG-Owl3https://github.com/X-PLUG/mPLUG-Owl/tree/main/mPLUG-Owl3


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询