作者:冷大炜,360 人工智能研究院
刚刚过去的 22 年被媒体誉为 “AIGC 元年”,这一年中 AI 绘画和 chatGPT 相继引爆了全球科技界,成为人工智能领域的两大里程碑事件,特别是 chatGPT 的推出,又重新点燃了人们对通用人工智能 AGI 的新一轮期待,chatGPT 所表现出来的前所未有的逻辑能力和推理能力,让众多 AI 领域的专家和研究人员不禁为之赞叹。与此同时,更多的企业和机构也开始尝试将 chatGPT 应用于自己的业务中,希望通过人工智能的力量来提升工作效率和解决难题。
ChatGPT 是基于 GPT3.5 开发的纯文本单模态的语言模型,对于它的下一代更新,我们之前猜测除了文本能力的继续提升外,从单模态过渡到多模态将是更为关键的一点,今年 3 月 15 日 GPT4 的推出,证实了我们的推测:GPT4 做为新一代的 GPT 模型,增加了对视觉模态输入的支持,这意味着它能够理解图像并进行相应的自然语言生成。
增加了多模态能力的 GPT4 也带来了应用层面的更多可能,比如在电商领域中,商家可以将产品图像输入 GPT4 进行描述生成,从而为消费者提供更加自然的商品介绍;在娱乐领域中,GPT4 可以被用于游戏设计和虚拟角色创造,为玩家带来更加个性化的游戏体验和互动快乐。视觉能力一向被视为一个通用人工智能 AGI 智能体所需必备的基础能力,而 GPT4 则向人们生动展示了融合视觉能力的 AGI 的雏形。
视觉能力融合的方案和优劣对比
实际上 GPT4 并不是第一个将视觉与文本模态相融合的工作,CV、NLP 以及机器人等领域的科研人员长久以来一直在探寻各种方法将多个不同模型的信息相融合的方法,像 VQA、Visual Captioning、Visual Grounding 等都已经是多模态下细分的专业研究领域。
具体到将视觉能力融入语言模型 LLM 的 MLLM(Multimodal Large Language Model),相关的研究路线主要分为两条:一条是原生多模态路线,模型设计从一开始就专门针对多模态数据进行适配设计,代表性的工作有 MSRA 的 KOSMOS-1 [1] 和 Google Robotics 的 PALM-E [2],均在今年 3 月份公开;另一条是单模态专家模型缝合路线,通过桥接层将预训练的视觉专家模型与预训练的语言模型链接起来,代表性的工作有 Deepmind 的 Flamingo [3],Saleforce 的 BLIP-2 [4],以及近期的 LLAVA [5] 和 miniGPT4 [6] 等工作。
图 1 MLLM 代表性工作时间线
以 KOSMOS-1 和 PALM-E 为代表的原生多模态路线,模型结构主体均为 Transformer 堆叠。下图为 KOSMOS-1 的模型结构和训练方案,其中除了 image encoder 部分使用的是预训练的 CLIP ViT-L/14 外,模型主体 MLLM 部分是 24 层的 Transformer 堆叠,使用原生的多模态数据从头训练。
多模态数据由三部分组成:a) 纯文本,以 Pile 和 Common Crawl 为主;b) image-text pair 数据,以 LAION-2B,LAION-400M,COYO-700M, and Conceptual Captions 为主;c) 图文混合数据(Interleaved Image-Text Data),包含 71M 页图文网页数据。通过将 image embedding 以如下格式与 text embedding 相连缀:<s><image>Image Embedding </image>WALL-E giving potted plant to EVE. </s>,KOSMOS-1 用自回归 loss 对图文数据进行统一建模。
图 2 KOSMOS-1 模型结构与训练方案
PALM-E 与 KOSMOS-1 相比,模型结构和对多模态数据的建模方式基本相同,下图 3 为 PALM-E 的模型结构和训练方案,其中 < emb > 为机器人的状态估计向量。与 KOSMOS-1 相比最大的不同在于,PALM-E 使用单模态语言模型 PALM 的权重对模型进行了初始化。
图 3 PALM-E 模型结构与训练方案
原生多模态路线的优势在于,模型结构原生适配多模态数据,在数据量充足的情况下效果优秀,相关领域的经验也表明这种方式的性能上限更高,但缺点也很明显,不能充分复用各个单模态领域的已有成果,训练需要的计算资源和数据资源都非常大。
与原生多模态路线相对的,以 Flamingo、BLIP-2、LLAVA/miniGPT4 为代表的单模态专家模型缝合路线,从一开始模型的设计思路就是尽可能复用各个单模态领域的已有成果特别是近期发展迅速的 LLM 的预训练模型。Flamingo 是 Deepmind 在 22 年 11 月发表的工作,在 freeze 住 vision encoder 和 LM 的基础上,通过在 LM 中插入多个 cross-attention 层来实现视觉信息与文本信息的对齐和联合学习。
图 4 Flamingo 模型结构与训练方案
与 KOSMOS-1 相比,Flamingo 这种缝合方案充分利用了 CV 领域和 NLP 领域的已有成果,vision encoder 和 LM 均不需要训练,只需要对做为不同模态信息之间做为桥接的 cross-attention 层(图 4 中的 GATED XATTN-DENSE)进行训练,因此至少在模型训练成本上就有很明显的优势。
而 23 年 1 月 salesforce 发表的 BLIP-2 工作以及后续衍生的 LLAVA、miniGPT4 等工作则将这一思路进一步简化到 vision encoder 和 LM 之间只通过单个桥接层进行链接,下图 5 是 BLIP-2 的模型结构,其中视觉侧和文本侧分别使用预训练的 CLIP ViT-G/14 模型和 FLAN-T5 模型,仅中间的起桥接作用的 Q-Former 参与训练,训练需要的成本和数据量进一步降低,BLIP-2 的训练数据量仅 129M,16 卡 A100 训练 9 天。
后来的 LLAVA 工作更是将这一思路简化到极致,仅通过一个 projection layer 将 CLIP ViT-L/14 和 Vicuna 语言模型缝合在一起,训练数据仅用了 595K 图文对以及 158K 指令微调数据。miniGPT4 则是在复用 BLIP-2 的 vision encoder + Q-Former 的基础上,通过一层 project layer 缝合了 Vicuna 语言模型,训练数据仅用了 5M 的图文对数据 + 3.5K 的指令微调数据。
图 5 BLIP-2 模型结构
与原生多模态路线相比,单模态专家模型缝合路线最明显的优势是可以充分复用各个单模态领域的已有成果,成本低,见效快,有研究人员猜测 GPT4 可能也是基于缝合路线实现的视觉理解能力。但基于缝合路线的缺陷也显而易见,尤其像 BLIP-2、LLAVA、miniGPT4 这样简单的浅层融合方案,最终训练得到的 MLLM 模型能力通常只能做单轮或多轮对话,不具备像 Flamingo 这种深层融合方案以及 KOSMOS-1、PALM-E 等原生多模态方案所展现出的多模态 in-context learning 能力。
SEEChat 多模态对话模型
SEEChat 项目(https://github.com/360CVGroup/SEEChat)的重点是将视觉能力与已有的 LLM 模型相融合,打造侧重视觉能力的多模态语言模型 MLLM。在多模态能力的实现路线上,我们选择了能够充分复用不同领域已有成果的单模态专家模型缝合路线(Single-modal Experts Efficient integration), 这也是 SEEChat 项目的命名来源。
SEEChat v1.0 的模型结构如下图 6 所示,通过 projection layer 桥接层,将 vision encoder: CLIP-ViT-L/14 与开源的中文 LM:chatGLM6B 缝合到一起。
图 6 SEEChat 模型结构