Transfusion,Show-o and Show-o2论文解读

目录

一、Transfusion

1、概述

2、方法

二、Show-o

1、概述

2、方法

3、训练

三、Show-o2 

1、概述

2、模型架构

3、训练方法

4、实验


一、Transfusion

1、概述

        Transfusion模型应该是Show系列,Emu系列的前传,首次将文本和图像生成统一到单一Transformer架构中,并通过混合训练目标实现多模态协同学习。

        另外在Transfusion中提出了Omni-attention。

        整体来说,就是把文字和图片都转换成Transformer能理解的token,并通过一个巨大的Transformer来学习多模态,而图片其实中间先通过VAE转换为连续的patch序列,再通过Transformer,最后通过VAE解码。

2、方法

        训练目标:自回归语言建模损失LM loss(NTP loss)和图像的扩散模型损失DDPM loss。

        视觉部分的处理

        首先对256x256的原始图像通过预训练VAE压缩为32x32x8的潜在张量。之后通过分块,将潜在张量序列化为patch向量。

        之后通过加噪,对潜在向量添加高斯噪声,并经过一组U-Net下采样块,进一步压缩,然后输入到Transformer中。

        Transformer通过预测添加到图像里的噪声,注意力采用Omni-attention的方法。

        之后反复去噪,更新向量信息,并通过U-Net上采样还原维度信息,最终通过VAE解码器重建像素图像。

        

二、Show-o

1、概述

        视觉理解模型的发展,从单一的视觉理解,单一的图像生成,朝着视觉理解与生成统一的方向发展。但是以往的统一模型,要么是通过ViT+LLM,并将特征信息传输给diffusion用于生成图像(NExT-GPT,SEED-X),要么是通过tokenizer+LLM+de-tokenizer的方式(Chameleon),归根结底,都不是一个完整的Transformer架构。Show-o提出利用MAGVIT的分词器(本质上就是MaskGIT),实现单个Transformer同时处理理解和图像生成任务。

        但随之而来存在一个问题,文本是一个离散的tokens,图像则是一个连续的tokens,二者本身存在明显差异,也不容易集成到同一个网络中。同样以往的方法都是将文本利用text encoder后直接用LLM编码,图像则需要进入扩散模型中。

        Show-o为满足同时处理理解和生成任务,使用AR+diffusion混合建模,文本部分完全建立在以往LLM分词器上,保留文本推理的自回归建模能力。图像部分则采用MAGViT-v2,将图像离散化为256个token,实现与文本token的符号空间对齐。

2、方法

        受益于离散去噪扩散模型(D3PMs),区别于传统扩散模型只能用于连续信息,离散去噪扩散模型可以处理离散数据(文本)间的信息,比如VQDiffusion,Copliot4D,而MaskGIT继续简化模型,并应用到图像离散化数据中,Show-o则是建立在MAGVIT-v2上。

Image Tokenization

        利用MAGVIT-v2作为基础框架,训练一个无查找量化器,避免传统VQ-VAE的码本查询瓶颈。codebook size=8192,每张图片256x256被编码为16x16的离散tokens。由于MAGVIT-v2易于微调,所以未来将考虑衍生一个video tokenizer。(但是MAGVIT本身就是一个视频编码器啊,估计做了统一处理?),对于这个Image Tokenizer的架构,具体来说就是下图a,而b,c则是后续实验进行了对比。

Text tokenization

        Show-o基于预训练LLaMA,使用相同的tokenizer进行文本数据标记,不做修改。

LLM整体架构

        基于预训练LLM LLaMA设计,保留原始的Transformer结构,但是在每一个注意力层都添加QK-Norm操作,并新增8192个可学习嵌入向量,表示离散图像tokens。

        统一提示策略

        为了统一训练多模态理解和生成,设计了Unified Prompting 策略,对给定Image-text pair 通过tokenizer得到M个image tokens \bold{u}=\left \{ u_i \right \}_{i=1}^M和N个text tokens \bold{v}=\left \{ v_i \right \}_{i=1}^N

        并且根据下图的方法,设计为multi-modal understanding(多模态理解),visual generation(文生图),mixed-modality generation(混合模态生成)三种任务,其中右侧的 [MMU] 和 [T2I] 代表预定义的task token,表示执行什么具体的任务(生成文字or生成图片), [SOT] 和 [EOT] 代表text token的开始和结束token,[SOI] 和 [EOI] 代表image token的开始和结束token。

        Omni-Attention机制 

        对于Show-o注意力机制并不是Casual attention,也不是Full attention,而是一种全新的综合注意力机制,根据输入序列的格式,自适应地混合和更改。可以理解为在不同Image和Text混合下,Casual attention和Full attention范围内的一种自适应变换。

        其中Show-o通过Casual attention对sequence中的text tokens进行建模,通过Full attention对image tokens进行建模。

        所以鉴于上面的统一提示策略图,提出了四种任务的注意力机制变换。

(a)多模态理解:文本关注先前所有图像token,但是文本之间只关注以前的文本token

(b)文生图:图像token可以交互所有先前文本token,但是图像间互相全交互

(c)文本建模中:退化会casual attention

(d)混合模态生成:综合以上多种方法自适应调整。

3、训练

        训练目标

        训练目标包含LLaMA本身的自回归(Next-token-prediction)用于处理文本的语言建模损失,以及图像离散扩散建模的扩散损失(Mask-token-prediction)。

        对于给定M个image tokens \bold{u}=\left \{ u_i \right \}_{i=1}^M和N个text tokens \bold{v}=\left \{ v_i \right \}_{i=1}^N

        NTP:L_{NTP}=\sum_i logp_\theta(v_i|v_1,...,v_{i-1},u_1,...,u_M)

        MTP:对于输入的M个Image tokens \bold{u}=\left \{ u_i \right \}_{i=1}^M,首先以一定的比例(受 timestep控制)随机将图像token随机替换为[MASK] token,得到u_*,然后目标以unmasked区域和text token,重建原始图像的token。

                L_{MTP}=\sum_j logp_\theta(u_j|u_*,u_2,...,u_{*},u_M,v_1...,v_N)    

        基于classifier-free guidance做法,以一定的概率用空文本随机替换conditioned text token。   

        总损失为L=L_{MTP}+\alpha L_{NTP}

        训练策略

        训练分为三个阶段,由于缺乏了文本编码器模块,这对于文本与图像对齐产生了很大挑战,所以我们采用三阶段的方法。

        第一阶段,训练图像token嵌入(8192个新增向量)和像素依赖学习,通过纯文本RefinedWeb训练语言建模能力,图像分类库ImageNet-1K训练图像生成能力,图文对CC12M+SA1B训练基础图文对齐。

        第二阶段:跨模态深度对齐,将ImageNet的分类名,转为自然语言描述训练文本对齐能力,文本描述能力。

        第三阶段:高质量数据微调。利用高质量图文对LAION-aesthetics-12M,JourneyDB,训练文生图,另外通过LLaVA-Pretain-558K和LLaVA-v1.5-mix-665K训练复杂推理指令和多任务混合指令。

        推理策略

        对于文本的预测,直接给定图像或多模态问题,text token从具有更高置信度的预测token中自回归采样。

        对于图像的预测,通过输入文本信息(N个token),和M个token [MASK]作为输入,通过show-o为每一个[MASK] token预测一个logit l^t,其中t是时间步,每个[MASK]token的最终预测logit使用conditional logit l^t_c和masked token的unconditional logit l^t_u

        l^t=(1+w)l_c^t-wl_u^t,其中w是guidance scale

        下图为去噪过程,包含T步,其中每一步保留置信度更高的image token,并替换以往的[MASK] token,随后反馈到下一轮预测。

三、Show-o2 

1、概述

        Show-o2首次实现同一模型下原生统一地集成自回归建模和Flow matching机制,实现了大规模下对文本、图像和视频多模态理解和生成。

        对于以往的统一多模态模型(UMM)从两个方面进行分类,视觉表示类型和统一建模类型,对于视觉表示类型,要么是统一表示(Unified),要么是解耦模型(Und & Gen Representation)。对于统一建模类型,要么是原生统一的(Native Und & Gen),要么是组装专家模型(Assembling Tailored Models)。下图为所有相关模型的对比,Show-o2是第一个统一的原生多模态,支持视频的,AR+Diff架构的模型。

        Show-o2引入了CogVideoX中的特色,使用3D Causal VAE对视频进行编码 。在训练过程中同样采用分层次训练,先具备语言表达能力,在提升理解和图、视频生成能力。并且由于Show-o2训练数据集的多样性,也使得Show-o2可以理解中英文,同时可以在文档中穿插文字,图像,视频序列。

2、模型架构

        Show-o2模型由文本编码器+嵌入层、视觉编码器(3D Causal VAE)、双路径融合、多模态建模器LLM、语言头和流式头。

        文本编码器和多模态建模器没有具体说,基于Qwen2.5-1.5B-instruct和Qwen2.5-7B-instruct变体,并且LLM基于Show-o的Omni-Attention机制。

        视觉编码器:采用3D causal VAE编码器,生成latents,架构与Wan2.1模型中相同,空间压缩:432x432->27x27,支持8x空间压缩和4x时间压缩。

        双路径视觉融合:潜在空间加噪,双路径提取深度特征,融合特征三部分。

        潜在空间加噪:首先对潜在图像特征空间加噪处理。为了后续流匹配生成高质量图像、视频提供优化路径。(先对潜在空间x_1添加可控噪声,生成带噪状态x_t,之后进行语义层蒸馏和底层投影获得特征,最后通过流匹配预测速度场v_t=\frac{dx_t}{d_t},从纯噪声x_0出发,沿梯度v_t方向,积分生成x_1

        双路径结构:语义路径,利用基于SigLIP预先蒸馏的ViT块,提取高层语义特征(如物体类别,场景全局信息),之后通过预蒸馏损失,确保特征对齐,公式如下,就是将semantic layers对齐到SigLIP上。

                        L_{distil}=-\sum logsim(S(x_t),SigLIP(X))

        投影路径,则是通过一个轻量投影器,留下色彩,边界,细节等底层结构信息。

        融合机制STF:拼接双路径特征->RMSNorm归一化->两层MLP融合->输出统一表示\bold u

                        \bold u=STF(P(\bold x_t),S(\bold x_t))

        多模态建模器:token序列格式,[BOS] {Text} [BOI / BOV] {Image / Video} [EOI / EOV] {Text} · · · [EOS]。可以同时适应任意模态组合

        双重输出头语言头,通过NTP loss,预测文本token。流式头,通过流匹配预测速度场,并从噪声中,沿着速度场方向,重构图像/视频。流式头结构由DiT-style Transformer层+adaLN-zero时间步调制。

        总损失函数L=\alpha L_{NTP}+L_{FM}

3、训练方法

        现有的训练策略,一般分为三类。

        从头训练,Transfusion,无预训练基础,直接学习多模态对齐,并通过扩散建模实现视觉生成。但依赖大规模文本语料,语言知识容易退化。

        LLM或LMM微调,Show-o,EMU3,基于预训练LLaMA或视觉语言模型CLIP初始化,并添加扩散建模或自回归头,实现理解与生成。计算成本高,收敛慢。

        组装专家模型,NExT-GPT,SEED-X,独立训练理解模型BLIP和生成模型SD,通过Adaptor拼接模块,兼容性差,参数量冗余。

        具体Show-o2训练策略

        Show-o2提出两阶段训练,一阶段冻结预训练语言模型,训练特征提取部分。二阶段训练除VAE以外的全模型。

        Stage1:冻结预训练语言模型,Sematic layers通过SigLIP初始化,并且在带噪潜变量xt上优化,仅训练Projector,STF,Flow Head。数据采用66M图文对(扩展到512x512,1024x1024分辨率,来自CC12M,COYO,LAION-Aesthetic-12M,AI合成数据集,并且除合成数据集外,其他均使用ShareGPT4v重标注,多模态理解指令为DenseFusion-1M和LLaVA-Onevision子集),视频数据(Webvid,Pandas),交错数据(OmniCorpus)。

        Stage2:多模态对齐,全模型训练,联合优化语言头和Flow matching头,α=1.0,平衡两者。数据采用更高质量的文本对,视频数据,以及交错数据。并利用TextAtlas进行文本丰富图像增强文本渲染。

        相比于Show-o来说,Show-o采用随机噪声扩散,会导致高方差带来的图像生成随机性,另外,Show-o三阶段采样,也会造成上千步的采样时间。 

        不同模型大小

        训练过程中,先训练小模型1.5B,之后通过训练轻量MLP变换扩展到7B大模型,并复用除LLM部分,再次经过两阶段训练训7B模型。

       

4、实验

多模态理解

图像生成

        在GenEval和DPG-Bench上进行对比,在GenEval上甚至超过了SD3,但是最高的是Mogao。GenEval就是偏文生图的指标,DPG-Bench类似于动态编辑,推理能力的组合。

视频生成

        文生视频和图生视频,由于没有在运动上规范,所以运动上分数不高,但是描述能力很好。

推理能力

论文参考:

https://arxiv.org/abs/2506.15564

[2408.12528] Show-o: One Single Transformer to Unify Multimodal Understanding and Generation

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值