©作者 | 远洋之帆
单位 | 蚂蚁集团
研究方向 | AIGC
随着大模型的推进,单模态的大模型已经无法很好的满足现实工作的需要。很多科研团队和机构开始多模态的研究,多模态的几种机构在前面的文章已经介绍过,这部分不做过多介绍。最理想的多模态应该就是没有模态,单一的模型可以把各种的数据无差别的输入,根据控制需要可以生成出任何想要的输出结果,换句话说就是我们可以用一个模型对齐所有模态之间关系。要实现这样的目标至少是有三种架构:
把各种模态输入/输出拉横,分区块设计每个部分对应模态,通过任务设计,让一种输入数据预测输出数据的值,通过足够多数据训练,让模型学习到模态之间对应关系;
2. 训练时候输入/输出只有一种模态数据,通过训练模型可以学习到模态之间对应关系;
前两种架构是一阶段的训练方法,也就是说各种模态之间数据不需要经过映射到 latent 空间这一步骤。直接的可以对齐到各种模态各种粒度的信息对齐,理论上讲只要有足够多的数据,一阶段的模型表达能力是更强大。但因为数据收集难度、数据处理难度、训练代价、以及下游任务的推理算力需求。现在主流的多模态应该是两阶段的对齐训练架构。即:
先单独把每个模态数据映射到一个空间;
下面介绍的三个模型 clip、blip2、mini-chatgpt4 差异如下:
clip:训练数据基本没有考虑数据之间序列、任务设计图文做相似的计算;
2. blip2:训练数据基本没有考虑序列,任务设计:相似的计算、模态交融任务设计、VQA、图到文本生成;
过度态模型
2.1 clip

2.2 BLIP-2

固定视觉预训练模型,通过三个任务来训练一个 Q-Former 将图像输入中的语义编码到一个和文本特征空间相似的特征空间中。具体来讲,模型基于 K 个可学习的 query 嵌入和 cross-attention 机制从图像中获取特征,三个任务包括:
图文匹配:对输入的(图像,文本)二元组分类,判断其是否相关
2. 基于图像的文本生成:给定图像输入,生成对应的文本描述

优点:
通过固定单模态的预训练模型,BLIP-2 大大减少了预训练所需的计算和数据资源;
仅用了 129M 的图文对,一台 16-A100(40G) 机器不足 9 天可以训练完最大规模的 BLIP-2;
缺点:
2.3 MiniGPT-4
MiniGPT-4 的目标是将一个训练好的视觉编码器和先进的大型语言模型(LLM)对齐,使用 Vicuna 作为语言解码器,它基于 LLaMA 构建,能够执行各种复杂的语言任务。对于视觉感知,我们使用与 BLIP-2 相同的视觉编码器,并将其训练的 Q 前体相结合。语言和视觉模型都是开源的。使用线性投影层,通过一个设计的对话模板,用一条路径将视觉编码器和 LLM 对齐。提出了一种两阶段的训练方法:
初始阶段涉及在大量的对齐图像文本对上预训练模型,以获取视觉-语言知识;
在第一段预训练阶段,设计任务让模型从 aligned image-text pairs 中获取视觉语言知识。利用注入的投影层的输出作为 LLM 的软 prompt,促使它生成相应的真实文本。
在整个预训练过程中,两个预训练的视觉编码器和 LLM 都保持冻结,只有线性投影层进行预训练。使用公开的的 Concep- tual Caption, SBU 和 LAION 数据集来训练模型。经历了 20,000 训练步,批量大小为 256,涵盖了大约 5 百万个图像-文本对。使用了 4 块 A100(80GB)GPU,整个过程需要大约 10 小时。问题设计为图文 embdding 成 soft prompt 做文本生成:
在第一段预训练阶段之后, MiniGPT-4 表现出能够拥有丰富知识并对人类问题做出合理回答的能力。但是观察到它有时难以生成连贯的语言学输出,例如生成重复的词语或句子、破碎的句子或无关的内容。这些问题妨碍了 MiniGPT-4 与人类进行流畅的视觉对话的能力。
类似的问题在 GPT-3 中也存在。尽管 GPT-3 在广泛的语言数据集上进行了预训练,但它不能直接生成符合用户意图的语言学输出。通过从人类反馈中学习指令微调和强化学习,GPT-3 逐渐进化为 GPT-3.5,能够生成更加人性化的输出。这种现象与 MiniGPT-4 在第一段预训练阶段之后的状态类似。模型可能会在这一阶段难以生成流畅和自然的语言输出。
为了增强生成语言的自然度和提高模型的可用性,需要进行第二段对齐过程。虽然在 NLP 领域中,指令微调和对话数据集很容易获得,但在视觉语言领域中却没有类似的数据集。为了解决这个问题,需要精心设计一个高质量的图像文本数据集,专门用于对齐。该数据集随后用于第二段对齐过程中,用来 MiniGPT-4 进行微调。
初始对齐图像-文本生成。在初始阶段,使用从第一段预训练阶段推导出来的模型生成一个给定图像的详细描述。为了让模型生成更详细的图像描述,设计了一个遵循 vicuna 语言模型对话格式的 prompt,如下所示:
###Human: <Img><ImageFeature></Img> Describe this image in detail. Give as many details as possible. Say everything you see. ###Assistant:
数据预处理:生成的图像描述仍然存在许多噪声和包含错误,例如重复单词或句子,以及包含不合理陈述的问题。为了减轻这些问题,使用 ChatGPT 来通过后续提示来优化描述。
###Human: <Img><ImageFeature></Img> <Instruction> ###Assistant:
在 this 提示中, 代表我们随机采样的指令集,其中包含指令的变体,例如“详细描述这个图像”或“能否为我描述这个图像的内容”。重要的是指出,我们不使用该特定文本图像提示的回归损失。
优点:
研究表明,通过将冻结的视觉编码器和先进的大型语言模型 Vicuna 对齐,可以实现新兴的视觉-语言能力;
2. 通过使用预训练的视觉编码器和大型语言模型,MiniGPT-4 实现了更高的计算效率。研究结果表明,仅训练一个投影层可以有效地将视觉特征与大型语言模型对齐。MiniGPT-4 仅需要在 4 A100 GPU 上训练大约 10 小时;
小结
lantent modal 学习后续是否会和 raw rext、pixcel 粒度数据融合或者说是更细粒度图文特征接入,解决细粒度图文可控性生成是个可以关注方向(当然这么做对训练数训练技巧、训练算力要求会很高)。
微信群 公众号


内容中包含的图片若涉及版权问题,请及时与我们联系删除
评论
沙发等你来抢