论文链接:Tune-A-Video: One-Shot Tuning of Image Diffusion Models for Text-to-Video Generation
为了复制文本到图像 (T2I) 生成的成功,最近的工作使用大规模视频数据集来训练文本到视频 (T2V) 生成器。尽管他们的结果很有希望,但这种范式的计算成本很高。本工作提出了一种新的 T2V 生成设置——One-Shot Video Tuning,仅需要一个文本-视频对。本文中模型为了进一步学习连续运动,引入了Tune-A-Video,它涉及定制的时空注意机制和有效的一次性调整策略。本文做出两个关键观察:1)T2I 模型可以生成仍然代表动词术语的图像; 2)扩展 T2I 模型以生成多个图像同时表现出令人惊讶的良好内容一致性。在推理时,使用 DDIM 反转来为采样提供结构指导。广泛的定性和定量实验表明本文方法在各种应用中具有显着的能力。
大规模多模态数据集Laion由从互联网上抓取的数十亿个文本图像对组成,在文本到图像(T2I)生成方面取得了突破。为了在 Text-toVideo (T2V) 生成中复制这种成功,最近的工作将空间域的 T2I 生成模型扩展到时空域。这些模型通常采用在大规模文本视频数据集(例如 WebVid-10M)上进行训练的标准范式。尽管这种范式为 T2V 生成产生了有希望的结果,但它需要对大型硬件加速器进行大量训练,这既昂贵又耗时。
人类能够通过利用现有知识和提供给它们的信息来创建新概念、想法或事物的能力。例如,当呈现带有“一只男子滑雪在雪上滑雪”文本描述的视频时,可以想象熊猫在雪上滑雪,借鉴了对熊猫看起来像什么的知识。由于使用大规模图像文本数据预训练的 T2I 模型已经捕获了开放域概念的知识,因此出现了一个直观的问题:它们能否从单个视频示例(如人类)中推断出其他新颖的视频?因此引入了一种新的 T2V 生成设置,即 One-Shot Video Tuning,其中仅使用单个文本-视频对来训练 T2V 生成器。生成器有望从输入视频中捕获基本的运动信息,并合成带有编辑提示的新视频。
直观地说,成功生成视频的关键在于保持一致物体的连续运动。因此,本文对最先进的T2I扩散模型进行了以下观察,相应地激发了方法。(1) 关于运动:T2I模型能够生成与文本对齐的图像,包括动词术语。例如,给定文本提示“一个人在海滩上跑步”,T2I模型生成一个人跑步(不是走路或跳跃)的快照,尽管不一定以连续的方式(图2的第一行)。这证明T2I模型可以通过跨模态注意来正确地关注静态运动生成的动词。(2)关于一致的对象:简单地将T2I模型中的空间自注意从一张图像扩展到多张图像,就可以产生跨帧的一致内容。同样的例子,当用扩展的时空注意力并行生成连续的帧时,虽然运动仍然不是连续的,但在结果序列中可以观察到同一个人和同一海滩(图2第二行)。这意味着 T2I 模型中自注意力层仅由空间相似性而不是像素位置驱动。
将发现实现为一种简单而有效的方法,称为 Tune-A-Video。该方法基于最先进的 T2I 模型在时空维度上的简单膨胀。然而,在时空中使用完全注意不可避免地会导致计算的二次增长。因此,生成帧增加的视频是不可行的。此外,采用一种简单的微调策略来更新所有参数可能会危及 T2I 模型的预先存在的知识,并阻碍生成具有新概念的视频的生成。为了解决这些问题,引入了一种稀疏时空注意力机制,它只访问第一个和前一个视频帧,以及一个高效的调整策略,仅更新注意力块中的投影矩阵。根据经验,这些设计在所有帧中保持一致的对象,但缺乏连续的运动。因此,在推理时,进一步通过DDIM反演从输入视频中寻找结构指导,即DDIM采样的反向过程。使用倒置的潜在作为初始噪声,生成具有平滑运动的时间相干视频。值得注意的是,本论文方法本质上与现有的个性化和条件预训练的 T2I 模型兼容,例如 DreamBooth 和 T2I-Adapter ,提供了一个个性化可控的用户界面。
图1展示了Tune-A-Video在文本驱动的视频生成的广泛应用中的显著结果。通过广泛的定性和定量实验将本论文方法与最先进的基线进行比较,证明了它的优越性。主要贡献如下:
本文工作涉及多个领域交叉;从文本提示生成图像/视频的扩散模型和方法,对真实图像/视频的文本驱动编辑,以及在单个视频上训练的生成模型。在此简要概述了每个领域的关键成就,强调了其与本文方法的联系和区别。
文本到图像(T2I)的生成已经得到了广泛的研究,在过去的几年里,许多模型都是基于Transformers。几个T2I生成模型最近采用了扩散模型。GLIDE在扩散模型中提出了无分类器引导来提高图像质量,而DALLE-2则利用CLIP特征空间改进了文本-图像对齐。Imagen使用级联扩散模型进行高清视频生成,随后的工作如VQ-diffusion和Latent Diffusion Models (LDMs)在自动编码器的潜在空间中运行,以提高训练效率。本文方法建立在LDMs的基础上,通过将2D模型膨胀到潜在空间中的时空域。
虽然 T2I 生成方面取得了重大进展,但由于高质量、大规模的文本视频数据集的稀缺以及建模时间一致性和连贯性的固有复杂性,从文本中生成视频仍然落后。早期的工作主要集中在生成简单域中的视频,例如移动数字或特定的人类行为。最近,GODIVA是第一个利用2D VQ-VAE和稀疏注意力来生成 T2V 的模型,这允许更现实的场景。N̈UWA通过多任务学习方法为各种生成任务提供统一的表示,扩展了GODIVA。为了进一步增强 T2V 生成性能,CogVideo通过在预训练的 T2I 模型 CogView2 之上合并额外的时间注意模块来开发的。
为了复制T2I扩散模型的成功,Video diffusion models(VDM)使用了一个时空分解的U-Net,进行图像和视频数据的联合训练。Imagen Video使用级联扩散模型和 v 预测参数化改进了 VDM,以生成高清视频。Make-A-Video 和 MagicVideo 具有相似的动机,旨在将 T2I 生成的进展转移到 T2V 生成。尽管目前的T2V生成模型已经显示出令人印象深刻的结果,但它们的成功在很大程度上依赖于使用大量视频数据进行训练。相比之下,本文提出了一个新的T2V生成框架,通过在一个文本视频对上有效地调整预训练的T2I扩散模型。
最近基于扩散的图像编辑模型可以处理视频中的每个单独帧,但由于模型中缺乏时间意识,这会在帧之间产生不一致。Text2Live 允许使用文本提示进行一些基于文本的视频编辑,但由于其依赖于分层神经图谱,难以准确反映预期的编辑。此外,生成神经图谱通常需要大约 10 小时,而本文方法只需要每个视频 10 分钟的训练,只需 1 分钟就可以对视频进行采样。两个当前工作,Dreamix 和 Gen-1,都利用视频扩散模型 (VDM) 进行视频编辑。尽管VDMs取得了令人印象深刻的结果,但值得注意的是,VDMs的计算要求很高,需要大规模的字幕图像和视频进行训练。此外,他们的训练数据和预训练模型无法公开访问。
Single-video GANs为输入视频生成具有相似外观和动态的新视频。然而,这些基于 GAN 的方法在计算时间上受到限制(例如,HPVAE-GAN 在 13 帧的短视频上训练需要 8 天),因此在某种程度上是不切实际的且不可扩展。Patch - nearest-neighbour方法在提高视频生成质量的同时,将计算费用降低了几个数量级。然而,它们在泛化方面是有限的,因此只能处理需要“复制”输入视频部分的任务。最近,SinFusion将扩散模型应用于单视频任务,并使自回归视频生成具有改进的运动泛化能力;然而,它仍然无法产生包含新颖语义上下文的视频。
设 V = { v i ∣ i ∈ [ 1 , m ] } V=\{v_{i}|i \in [1,m]\} V={vi∣i∈[1,m]}是有 m m m帧的视频, P P P是描述 V V V的原始提示词。本文目标是基于编辑过的 P ∗ P^{*} P∗生成你新视频 V ∗ V^{*} V∗。例如,考虑一个视频和原始提示“"a man is skiing”,并假设用户想要改变衣服的颜色,将牛仔帽子融入滑雪者,甚至用Spider Man替换滑雪者,同时保留原始视频的运动。用户可以通过进一步描述滑雪者的外观或用另一个词替换它来直接修改原始提示。
一个直观的解决方案是在大规模视频数据集上训练一个 T2V 模型,但它的计算成本很高。本文提出了一种新的设置,称为 One Shot Video Tuning,它使用公开可用的 T2I 模型和单个文本-视频对来实现相同的目标。
DDPMs是经过训练以重新创建固定前向马尔可夫链 x 1 , . . . , x N x_{1},...,x_{N} x1,...,xN的潜在生成模型。给定数据分布 x 0 ∼ q ( x 0 ) x_{0} \sim q(x_{0}) x0∼q(x0),马尔可夫转换 q ( x t ∣ x t − 1 ) q(x_{t}|x_{t−1}) q(xt∣xt−1)定义为方差调度 β t ∈ ( 0 , 1 ) β_{t} ∈ (0,1) βt∈(0,1)的高斯分布,即
通过贝叶斯规则和马尔可夫性质,可以明确地将条件概率 q ( x t ∣ x 0 ) q(x_{t}|x_{0}) q(xt∣x0)和 q ( x t − 1 ∣ x t , x 0 ) q(x_{t−1}|x_{t,} x_{0}) q(xt−1∣xt,x0)表示为:
为了生成马尔可夫链 x 1 , . . . , x N x_{1},...,x_{N} x1,...,xN,DDPM利用先验分布 p ( x T ) = N ( x T ; 0 , I ) p(x_{T})=N (x_{T};0, I) p(xT)=N(xT;0,I)的反向过程和高斯转换
训练可学习参数 θ θ θ,以保证生成的逆过程接近正过程。
为此,DDPM通过最大化负对数似然的变分下界来遵循变分推理原理,该下界在给定高斯分布之间的KL散度的情况下具有封闭形式。根据经验,这些模型可以解释为一系列加权去噪自编码器 ϵ θ ( x t , t ) \epsilon_{θ}(x_{t}, t) ϵθ(xt,t),这些自编码器经过训练以预测其输入 x t x_{t} xt的去噪变体。目标可以简化为 E x , ϵ ∼ N ( 0 , 1 ) , t [ ‖ ϵ − ϵ θ ( x t , t ) ‖ 2 2 ] E_{x,\epsilon \sim N (0,1),t}[‖\epsilon −\epsilon_{θ}(x_{t}, t)‖^{2}_{2}] Ex,ϵ∼N(0,1),t[‖ϵ−ϵθ(xt,t)‖22]。
LDMs是DDPMs的新变体,它在自编码器的潜在空间中工作。LDMs由两个关键组件组成。首先,在大量图像集合上使用逐块损失训练自编码器,其中编码器 E E E学习将图像 x x x压缩为潜在表示 z = E ( x ) z = E(x) z=E(x),解码器 D D D学习将潜在重构回像素空间,使 D ( E ( x ) ) ≈ x D(E(x))≈x D(E(x))≈x。第二个组件是DDPM,它经过训练以去除添加到采样数据中的噪声。对于文本引导的LDM,目标如下:
E z , ϵ ∼ N ( 0 , 1 ) , t , c [ ‖ ϵ − ϵ θ ( z t , t , c ) ‖ 2 2 ] E{z,\epsilon \sim N (0,1),t,c}[‖\epsilon −\epsilon_{θ}(z_{t},t,c)‖^{2}_{2}] Ez,ϵ∼N(0,1),t,c[‖ϵ−ϵθ(zt,t,c)‖22]
其中 c = ψ ( P ∗ ) c = ψ(P^{∗}) c=ψ(P∗)是文本条件 P ∗ P^{∗} P∗的嵌入。
T2I扩散模型(如LDM)通常采用U-Net,这是一种基于空间下采样传递的神经网络体系结构,然后是具有跳过连接的上采样传递。它由堆叠的2D残差块和transformer块组成。每个transformer块由一个空间自注意力层、一个交叉注意力层和一个前馈网络 (FFN) 组成。空间自注意力利用特征图中的像素位置进行相似的相关性,而交叉注意力考虑像素和条件输入(如文本)之间的对应关系。形式上,给定视频帧 v i v_{i} vi的潜在表示 z v i z_{v_{i}} zvi,空间自注意机制实现 A t t e n t i o n ( Q , K , V ) = S o f t m a x ( Q K T d ) ⋅ V Attention(Q, K, V) = Softmax(\frac{QK^{T}}{\sqrt d})·V Attention(Q,K,V)=Softmax(dQKT)⋅V, Q = W Q z v i , K = W K z v i , V = W V z v i Q = W^{Q}z_{v_{i}} , K = W^{K}z_{v_{i}} , V = W^{V}z_{v_{i}} Q=WQzvi,K=WKzvi,V=WVzvi,其中 W Q , W K , W V W^{Q},W^{K},W^{V} WQ,WK,WV分别是将输入投影到查询、键和值的可学习矩阵, d d d是键和查询特征的输出维度。
本文将2D LDM扩展到时空域。与 VDM 类似,本文将 2D 卷积层膨胀为伪 3D 卷积层,3 × 3 内核被替换为 1 × 3 × 3 内核,并在每个transformer中附加时间自注意力层以进行时间建模。为了增强时间一致性,进一步将空间自注意机制扩展到时空域。时空注意 (ST-Attn) 机制还有其他选择,包括完全注意和因果注意,这也捕获了时空一致性。然而,由于计算复杂度高,这种直接的选择在生成具有增加帧的视频方面实际上是不可行的。具体来说,给定 m m m帧和每帧 N N N个序列,完全注意和因果注意的复杂度都是 O ( ( m N ) 2 ) O((mN)^{2}) O((mN)2)。如果需要生成 m m m值较大的长视频,这是负担不起的。本文建议使用稀疏版本的因果注意机制,在帧 z v i z_{v_{i}} zvi和前两帧 z v 1 z_{v_{1}} zv1和 z v i − 1 z_{v_{i−1}} zvi−1之间计算注意矩阵,保持在 O ( 2 m ( N ) 2 ) O(2m(N)^{2}) O(2m(N)2)的低计算复杂度。具体来说,从帧 z v i z_{v_{i}} zvi中导出查询特征,从第一帧 z v 1 z_{v_{1}} zv1和前帧 z v i − 1 z_{v_{i−1}} zvi−1中导出键值特征,并通过 Q = W Q z v i , K = W K [ z v 1 , z v i − 1 ] , V = W V [ z v 1 , z v i − 1 ] Q = W^{Q}z_{v_{i}}, K = W^{K} [z_{v_{1}},z_{v_{i−1}}],V = W^{V} [z_{v_{1}},z_{v_{i−1}}] Q=WQzvi,K=WK[zv1,zvi−1],V=WV[zv1,zvi−1]实现 A t t e n t i o n ( Q , K , V ) Attention(Q, K, V) Attention(Q,K,V),其中[,]表示连接操作。请注意,投影矩阵 W Q , W K , W V W^{Q}, W^{K},W^{V} WQ,WK,WV在空间和时间之间共享。如图五所示,将帧 z v i z_{v_{i}} zvi、前一帧 z v i − 1 z_{v_{i−1}} zvi−1和 z v 1 z_{v_{1}} zv1的潜在特征投影到 Q , K , V Q,K,V Q,K,V中。输出是这些值的加权和,根据查询和关键特征之间的相似性进行加权。突出显示更新的参数 W Q W^{Q} WQ。
在给定的输入视频上微调网络以进行时间建模。时空注意(ST-Attn)旨在通过查询前一帧中的相关位置来建模时间一致性。本文建议固定参数 W K , W V W^{K},W^{V} WK,WV,并且只更新 ST-Attn 层中的 W Q W^{Q} WQ。相反,在整个时间自注意(T-Attn)层被添加时对其进行微调。此外,提出通过更新交叉关注(Cross-Attn)中的查询投影来改进文本视频对齐。在实践中,与完全调优相比,对注意力块进行微调计算效率更高,同时保留了预先训练的T2I扩散模型的原始性质。在标准LDM中使用相同的训练目标。图 4 说明了带有突出显示可训练参数的微调过程。
微调注意力层对于确保所有帧之间的空间一致性至关重要。然而,它并没有提供对像素偏移的太多控制,导致循环中停滞的视频。为了解决这个问题,推理阶段合并了来自源视频的结构指导。具体来说,通过没有文本条件的DDIM inersion得到源视频 V V V的潜在噪声。该噪声作为DDIM采样的起点,由编辑后的提示 T ∗ T^{*} T∗指导。输出视频 V ∗ V^{*} V∗则由以下公式给出:
V ∗ = D ( D D I M − s a m p ( D D I M − i n v ( E ( V ) ) , T ∗ ) ) ) . V^{*} = D(DDIM-samp(DDIM-inv (E(V)), T^{*}))). V∗=D(DDIM−samp(DDIM−inv(E(V)),T∗))).
以下展示了几个用于文本驱动视频生成和编辑的Tune-A-Video应用程序。
本文方法的主要应用之一是通过编辑文本提示来修改对象。这允许轻松替换、添加或删除对象。图 6 显示了一些示例,将“a man”替换为“Spider Man”或“Wonder Woman”、“a rabbit”替换为“a cat”或“a puppy”,甚至将“a watermelon”换成“a cheeseburger”,只需修改相应的单词。可以通过进一步描述提示中的对象,例如“a cowboy hat”或“"sunglasses”。删除一个对象可以通过删除相应的短语实现——例如 watermelon。
本文方法还允许用户更改视频背景(即对象所在的位置),同时保留对象运动的一致性。例如,可以通过添加新的位置/时间描述,将图6中滑雪人的背景修改为“on the beach”或“at sunset”,并通过替换现有的位置描述,将图7中的乡村道路视图更改为海景。
由于预训练的 T2I 模型的开放域知识,本文方法将视频转移到各种难以仅从视频数据中学习的样式中。例如,通过将全局样式描述符附加到提示中,将真实世界的视频转换为漫画风格(图 6)或 Van Gogh 风格(图 10)。
本文方法可以很容易地与个性化的 T2I 模型(例如,DreamBooth,它以 3-5 张图像作为输入并返回个性化的 T2I 模型)集成,通过直接对它们进行微调。例如,可以使用为“Modern Disney Style”或“Mr Potato Head”个性化的 DreamBooth 来创建特定风格或主题的视频(图 11)。本文方法还可以与T2I-Adapter和ControlNet等条件T2I模型集成,以不需要额外的训练成本对生成的视频进行不同的控制。例如,可以使用一系列人体姿势作为控制来进一步编辑运动(如图 1 中的跳舞)。注意,可以使用现成的姿势估计模型从真实世界的视频中自动检测到人体姿势序列。本文方法与个性化和有条件的T2I模型的兼容性为用户创造他们想要的视频内容提供了更多的可能性。
开发基于潜在扩散模型(即稳定扩散)和公开预训练权重。从输入视频中采样32个分辨率为512 × 512的均匀帧,并使用本文方法对模型进行500步的微调,学习率为 3 × 1 0 − 5 3 × 10^{−5} 3×10−5,batch size为1。在推理方面,实验中使用无分类器引导的DDIM采样器。对于单个视频,微调大约需要10分钟,在NVIDIA A100 GPU上采样大约需要1分钟。
为了评估本文方法,使用了42个来自DAVIS数据集的代表性视频。使用现成的字幕模型自动生成视频片段,并在应用程序中手动设计140个编辑提示。有关基准测试的更多详细信息,请参见附录A 。
将本文呢方法与三个基线进行比较:
图7中给出了本文方法与几个baselines的比较。观察到,虽然CogVideo可以生成反映文本中一般概念的视频,但输出的视频质量差异很大,并且不能将视频作为输入。另一方面,Plug-andPlay 成功地单独编辑每个视频帧,但由于忽略了时间上下文,缺乏帧一致性(如Porsche car 的外观跨帧不一致)。Text2LIVE 虽然能够产生时间平滑的视频,但很难准确地表示编辑过的提示(如Porsche car 仍然出现在原始 jeep car 的形状中)。这可能是因为它依赖于分层神经图谱,这限制了其编辑能力。相比之下,本文方法生成时间连贯的视频,以保留输入视频的结构信息,并与编辑过的单词和细节很好地对齐。
通过自动度量和用户研究来根据基线量化本文方法,并在表1中报告框架一致性和文本可信度。
对于帧一致性,在输出视频的所有帧上计算CLIP图像嵌入,并报告所有视频帧对之间的平均余弦相似度。为了衡量文本的可信度,计算输出视频的所有帧和相应的编辑提示之间的平均CLIP分数。研究结果表明,CogVideo产生一致的视频帧,但难以表示文本描述,而Plug-and-Play实现了高文本忠实度,但未能生成一致的内容。相比之下,本文方法在两个指标上都优于基线。
对于帧一致性,以随机顺序展示了本文方法和基线生成的两个视频,并要求评估者“which one has better temporal consistency?”。对于文本忠实度,还展示了文本描述并询问评估者“which video better aligns with the textual description?”。招募了 5 名参与者来注释每个示例,并对最终结果使用多数票。附录B中提供了更多详细信息。观察到 CogVideo 和 Plug-and-Play 由于框架和框架文本不一致而不太受欢迎,而本文方法从两个方面实现了更高的用户偏好。
本文进行了消融研究,以评估在 Tune-A-Video 中时空注意力 (ST-Attn) 机制、DDIM 反转和微调的重要性。每个设计都被单独消融以分析其影响。图 8 所示的结果表明,w/o ST-Attn 的模型表现出显着的内容差异(与滑雪者的服装颜色无关)。相比之下,w/o 反演模型保持一致的内容,但不能复制输入视频中的运动(即滑雪)。由于 ST-Attn 和反演,w/o 微调的模型仍然足以跨帧保持一致的内容。然而,连续帧中的运动并不平滑,导致视频闪烁。结果表明,所有的关键设计都有助于本文方法的生成结果。
图 9 显示了当输入视频包含多个对象并显示遮挡时本文方法的失败例子。这可能是因为 T2I 模型在处理多个对象和对象交互方面的固有限制。一个潜在的解决方案是使用额外的条件信息,例如深度,使模型能够区分不同的对象及其交互。这条研究途径留作未来的工作。
本文介绍了一个名为 One-Shot Video Tuning 的 T2V 生成新任务。该任务涉及仅使用单个文本-视频对和预训练的 T2I 模型训练 T2V 生成器。提出了 Tune-A-Video,这是一个简单而有效的文本驱动视频生成和编辑框架。为了生成连续的视频,本文提出了一种有效的调优策略和结构反演,能够生成时间连贯的视频。大量实验表明,本文方法在广泛的应用中取得了显著的效果。