16幀1024×1024視頻耗時(shí)僅16秒!64倍壓縮助力高效視頻生成:復(fù)旦&微軟發(fā)布Reducio-DiT
文章鏈接:https://arxiv.org/pdf/2411.13552
項(xiàng)目鏈接:https://github.com/microsoft/Reducio-VAE
亮點(diǎn)直擊
- 將視頻編碼為極少量的運(yùn)動(dòng)隱變量和一個(gè)內(nèi)容圖像,其中設(shè)計(jì)的 Reducio-VAE 可以將視頻壓縮到比常見的二維VAE 小64倍的隱變量空間。
- 基于Reducio-VAE,通過結(jié)合額外的圖像條件設(shè)計(jì)了一個(gè)名為Reducio-DiT的擴(kuò)散模型。
- 實(shí)驗(yàn)表明,Reducio-DiT可以顯著加速生成過程,同時(shí)生成高質(zhì)量的視頻。
總結(jié)速覽
解決的問題
- 商用視頻生成模型雖然能生成逼真的高保真結(jié)果,但因昂貴的訓(xùn)練與推理成本,難以大規(guī)模應(yīng)用。
- 視頻包含比圖像更多的冗余信息,現(xiàn)有方法未充分壓縮視頻的運(yùn)動(dòng)信息表征。
提出的方案
- 設(shè)計(jì)了一個(gè)圖像條件變分自編碼器(Image-Conditioned VAE),將視頻編碼為極度壓縮的運(yùn)動(dòng)隱變量(Motion Latents)。
- 提出Reducer-DiT方法,通過極大程度減少隱變量的數(shù)量來提高視頻生成效率。
- 采用兩階段視頻生成范式:文本到圖像和文本-圖像到視頻。
應(yīng)用的技術(shù)
- Reducer Charm:通過圖像條件 VAE,隱變量數(shù)量減少64 倍,而不犧牲視頻質(zhì)量。
- 擴(kuò)散模型(Diffusion Model):在壓縮的隱變量表示上進(jìn)行訓(xùn)練和生成。
- 高效的 GPU 資源利用:總訓(xùn)練耗時(shí)3.2K GPU時(shí),使用單張 A100 GPU 實(shí)現(xiàn)快速生成。
達(dá)到的效果
- 大幅提升視頻隱變量擴(kuò)散模型(Video LDMs)的訓(xùn)練和推理效率。
- 支持生成1024×1024 分辨率、16 幀的視頻,耗時(shí)僅15.5 秒。
- 在有限的 GPU 資源下實(shí)現(xiàn)了高質(zhì)量視頻生成,評估性能表現(xiàn)優(yōu)異。
Reducio
Reducio 視頻自動(dòng)編碼器
變分自編碼器 (VAE)
將輸入的圖像或視頻投影到服從特定分布的壓縮隱變量空間,并通過解碼器將從分布中采樣的隱變量映射到 RGB 空間。隱變量擴(kuò)散模型 (LDM)利用 VAE 的下采樣隱變量空間以支持更高效的生成。本文遵循這一通用方法,并基于 VAE 構(gòu)建我們的視頻自動(dòng)編碼器。
視頻的 Reducio 魔咒
Reducio 擴(kuò)散Transformer
得益于 Reducio-VAE 的魔法壓縮能力,以4096的下采樣因子將輸入視頻投影到壓縮隱變量空間,從而顯著加速了擴(kuò)散模型的訓(xùn)練和推理過程。采用 DiT-XL模型,并遵循 PixArt-α 的大部分設(shè)計(jì)選擇,例如使用 AdaLN 單模塊、帶有 Flan-T5-XXL 文本條件的交叉注意力層。訓(xùn)練目標(biāo)遵循反向擴(kuò)散過程,其可表示為:
為了將圖像擴(kuò)散模型適配到視頻,考慮了兩種選擇:
(1) 直接將 2D 注意力轉(zhuǎn)換為完整的 3D 注意力,而不添加額外的參數(shù)。
(2) 添加時(shí)間層,并將模型轉(zhuǎn)換為執(zhí)行 2D 空間注意力加 1D 時(shí)間注意力。
本文默認(rèn)采用選項(xiàng) (1)。
此外,為了針對圖像條件的視頻生成,引入了 Reducio-DiT(如下圖 3 所示),并加入了額外的圖像條件模塊,如下所述。
內(nèi)容幀模塊包括一個(gè)基于預(yù)訓(xùn)練 OpenCLIP ViT-H 的語義編碼器和一個(gè)初始化為 SD2.1-VAE 的內(nèi)容編碼器。前者將內(nèi)容幀投影到高級語義空間,而后者主要專注于提取空間信息。將獲得的特征與由 T5 輸出的文本token進(jìn)行拼接,形成圖像-文本-聯(lián)合條件,然后將其與帶噪聲的視頻隱變量進(jìn)行交叉注意力操作。具體來說,詳細(xì)的操作可以描述為:
在常規(guī)視頻擴(kuò)散模型中,放大到高分辨率視頻需要消耗大量計(jì)算資源。然而,Reducio-DiT 在很大程度上緩解了這一限制。為了支持高分辨率(例如,10242)的視頻生成,采用了漸進(jìn)式訓(xùn)練策略:
- 在訓(xùn)練的第一階段,模型學(xué)習(xí)將視頻潛空間與圖像-文本先驗(yàn)對齊,輸入大量的 2562 視頻;
- 在第二階段,我們對分辨率更高的視頻(即 512×512)進(jìn)行微調(diào)。因此,內(nèi)容編碼器與帶噪聲隱變量一起增強(qiáng)了 4 倍的token;
- 在第三階段,對空間分辨率大約為 1024 的視頻進(jìn)行進(jìn)一步微調(diào),采用多角度增強(qiáng)。
實(shí)驗(yàn)
訓(xùn)練與評估細(xì)節(jié)
Reducio-VAE 在一個(gè)由 Pexels* 收集的 40萬視頻數(shù)據(jù)集上進(jìn)行訓(xùn)練。Pexels 提供了大量免費(fèi)的高質(zhì)量素材視頻,每個(gè)視頻都附帶簡短的文本描述。我們從頭開始訓(xùn)練 Reducio-VAE,使用的是 256×256 分辨率、16 幀每秒(FPS)的視頻。需要注意的是,我們將高分辨率的視頻按空間維度分割為多個(gè)小塊。為了進(jìn)行 VAE 比較,使用 PSNR、SSIM 、LPIPS 和重建 FVD (rFVD)作為評估指標(biāo)。
Reducio-DiT 在上述 Pexels 數(shù)據(jù)集和一個(gè)包含 500 萬個(gè)高分辨率文本-視頻對的內(nèi)部數(shù)據(jù)集上進(jìn)行訓(xùn)練。本文采用多階段訓(xùn)練策略,將模型從低分辨率訓(xùn)練到高分辨率。首先在 4 塊 Nvidia A100 80G GPU 上以批量大小 512 訓(xùn)練 Reducio-DiT-256,訓(xùn)練約 900 個(gè) A100 小時(shí),并使用 PixArt-α-256初始化模型權(quán)重。然后,我們在 5122 視頻上進(jìn)行短時(shí)間微調(diào),訓(xùn)練 300 個(gè) A100 小時(shí),得到 Reducio-DiT-512。在第三階段,我們從 40 個(gè)寬高比桶中隨機(jī)采樣視頻批次,這與 PixArt-α 中的設(shè)置相同。我們使用 8 塊 AMD MI300 GPU 支持批量大小為 768 的訓(xùn)練,并微調(diào) Reducio-DiT-1024,訓(xùn)練 1000 個(gè) GPU 小時(shí)。
本文采用 DPM-Solver++ 作為高效推理的采樣算法,并將采樣步驟設(shè)置為 20。對于下表 2 中的評估,我們計(jì)算在單塊 A100 80G GPU 上生成 16 幀視頻片段的速度,并將內(nèi)存溢出token為 OOM。對于 Reducio-DiT,我們使用 PixArt-α-256 和 PixArt-α-1024 分別生成 2562 和 10242 視頻的內(nèi)容幀。我們報(bào)告了在零-shot 設(shè)置下,Reducio-DiT-512 在 UCF-101 和 MSR-VTT 上的 FVD 和 IS 分?jǐn)?shù)。由于我們的方法是一種兩階段視頻生成方法,要求使用條件圖像先驗(yàn),按照 MicroCinema 的做法,使用 SDXL 生成所有評估的條件圖像,包括在 UCF-101 和 MSR-VTT 上的 FVD 評估。此外,還在最近的視頻生成基準(zhǔn) VBench 上評估了 Reducio-DiT-512。
主要結(jié)果
Reducio-VAE 保留了視頻輸入的細(xì)節(jié)。下圖 4 展示了由 SDXL-VAE 和 Reducio-VAE 重建的 2562 視頻的第一幀和最后一幀,黃色框框突出顯示了細(xì)節(jié)上明顯不同的區(qū)域。盡管 SDXL-VAE 會(huì)造成損壞和模糊,Reducio-VAE 通常能保持中間幀中的微妙紋理。
下表 1 也反映了 Reducio-VAE 在定量重建指標(biāo)上的優(yōu)勢,例如 PSNR、SSIM 和 LPIPS,這些是在 Pexels 上隨機(jī)抽取的 1K 視頻驗(yàn)證子集(每個(gè)視頻時(shí)長 1 秒)上的評估結(jié)果,并且在 UCF-101 和 Pexels 上進(jìn)行了 FVD 測試。
從表中可以看出,Reducio-VAE 在整體重建性能上具有明顯優(yōu)勢。具體來說,我們的模型在 PSNR 上比現(xiàn)有的最先進(jìn) 2D VAE(例如 SD 2.1-VAE 和 SDXL-VAE)高出超過 5db。此外,與最近文獻(xiàn)中專門為視頻設(shè)計(jì)的 VAE(如 OmniTokenizer 和 OpenSora-1.2)相比,Reducio-VAE 也表現(xiàn)出更好的性能。我們的 VAE 還優(yōu)于與之同時(shí)發(fā)布的 Cosmos-VAE,該模型也采用了進(jìn)一步壓縮的視頻潛空間,Reducio-VAE 在 SSIM 上高出 0.2,并且在 PSNR 上高出 5 db,且下采樣因子高達(dá) 8 倍。
Reducio-VAE 在 UCF-101 上的 rFVD 比其他方法差。通過仔細(xì)檢查,我們發(fā)現(xiàn)選定的先驗(yàn)內(nèi)容圖像在許多情況下因?yàn)?UCF-101 視覺質(zhì)量較低而導(dǎo)致模糊,從而導(dǎo)致重建質(zhì)量較差。相比之下,Reducio-VAE 在 Pexels 上的 rFVD 排名第一,Pexels 中的視頻具有更高的視覺質(zhì)量和更高的分辨率。
Reducio-DiT 在效率和性能之間取得了良好的平衡。由于我們使用了極其壓縮的潛空間,我們的擴(kuò)散模型的訓(xùn)練成本與文本到圖像的擴(kuò)散模型相似。經(jīng)過僅 3.2K A100 小時(shí)的訓(xùn)練,我們的模型在 UCF-101 上的 FVD 得分為 318.50,在 MSR-VTT 上為 291.0,并且在 VBench 上的得分為 81.39,超越了表 2 中記錄的一系列以前的最先進(jìn)視頻 LDM。下圖 5 展示了 Reducio-DiT 與另外兩個(gè)最先進(jìn)的圖像到視頻模型的比較。雖然 DynamicCrafter 和 SVD-XT 都未能生成與給定內(nèi)容幀一致的穩(wěn)定幀,Reducio-DiT 則能生成具有高視覺質(zhì)量且面部細(xì)節(jié)未被損壞的內(nèi)容幀。
消融研究
Reducio-VAE 設(shè)計(jì)
增加隱空間通道有助于提高重建性能,如下表 4 所示。當(dāng) z 從 4 增加到 16 時(shí),重建視頻的 PSNR 增加了 2.71 db。然而,增加隱空間通道會(huì)出現(xiàn)天花板效應(yīng),將 z 設(shè)置為 32 幾乎不會(huì)在 PSNR 和 SSIM 上帶來進(jìn)一步的提升。因此,選擇將隱空間的大小設(shè)置為 |z| = 16 作為 Reducio 的默認(rèn)設(shè)置。下圖 6 展示了一個(gè)視覺上的定性比較,其中比較了 |z| = 16、8 和 4 時(shí)的結(jié)果。
使用交叉注意力融合在下表 5 中取得了最具競爭力的性能。對于基于加法的融合,我們將內(nèi)容幀特征輸入卷積,并在時(shí)間維度上復(fù)制輸出。然后,我們將視頻特征與內(nèi)容特征加在一起,并加入時(shí)間嵌入。關(guān)于基于線性融合的方法,我們將內(nèi)容條件視為單幀視頻特征,并將其與視頻特征按時(shí)間維度拼接。拼接后的特征通過 3D 卷積層進(jìn)行精煉。如表 5 所示,基于注意力的 Reducio-VAE 在 PSNR 上比其他基準(zhǔn)高出 1.71,SSIM 上高出 0.01,但計(jì)算成本較高。默認(rèn)情況下,我們展示的是使用基于注意力的融合方法的結(jié)果。請注意,表 5 中展示的所有 Reducio-VAE 都共享相同的 3D 編碼器,因此具有相同的隱空間,用戶可以根據(jù)不同的資源限制選擇任何解碼器。
Reducio-DiT的設(shè)計(jì)
對于DiT的消融實(shí)驗(yàn),我們在Pexels數(shù)據(jù)集上進(jìn)行了每個(gè)實(shí)驗(yàn)300個(gè)A100小時(shí)的訓(xùn)練,并在UCF-101上報(bào)告了FVD和IS得分。
使用聯(lián)合時(shí)空注意力(3D 注意力)在生成質(zhì)量上優(yōu)于使用分解的空間和時(shí)間注意力(即 2D + 1D 注意力)。有趣的是,我們觀察到分解注意力導(dǎo)致訓(xùn)練損失的收斂速度更快。然而,正如下表 7 所示,在相同的訓(xùn)練步驟下,分解注意力在 FVD 上落后于聯(lián)合 3D 注意力 45 點(diǎn)。推測可能的原因是 2D + 1D 方案需要添加額外的時(shí)間層,并對每個(gè)小的 token 集進(jìn)行分解自注意力,使得在輕量計(jì)算下很難建模平滑的開放集運(yùn)動(dòng)。相比之下,3D 注意力直接利用原始參數(shù),并協(xié)作所有時(shí)空 tokens。
同時(shí)融合語義信息和內(nèi)容信息有助于獲得最佳質(zhì)量。如下表 8 所示,單獨(dú)使用語義特征(即基于 OpenClip 的特征)可能導(dǎo)致視覺細(xì)節(jié)失真,從而導(dǎo)致較低的 FVD。另一方面,使用基于內(nèi)容的特征有助于使視頻更加平滑和穩(wěn)定,盡管其運(yùn)動(dòng)不夠多樣化,從而實(shí)現(xiàn)更高的 FVD。下圖 7 中展示了一個(gè)對比示例。內(nèi)容和語義特征的協(xié)同作用幫助 Reducio 在內(nèi)容一致性和運(yùn)動(dòng)豐富性之間取得最佳平衡。
結(jié)論
視頻生成在許多潛在應(yīng)用中展現(xiàn)了良好的前景,但仍然受到不可承受的計(jì)算成本的限制。本文探討了如何通過減少隱空間的大小來有效降低開銷。特別地,我們發(fā)現(xiàn)借助內(nèi)容圖像先驗(yàn),視頻可以被編碼成極度壓縮的隱空間表示,其中隱空間編碼只需表示運(yùn)動(dòng)變量?;谶@一觀察,設(shè)計(jì)了 Reducio-VAE,將視頻壓縮為 4096 倍更小的隱空間表示。利用這個(gè)強(qiáng)大的 Reducio-VAE,我們訓(xùn)練了 Reducio-DiT,實(shí)現(xiàn)了快速的高分辨率視頻生成。我們的方法也與其他加速技術(shù)兼容,例如修正流,允許進(jìn)一步的加速,未來我們將對此進(jìn)行進(jìn)一步探索。
局限性和未來工作。盡管 Reducio-DiT 在與中心幀的一致性方面展現(xiàn)了強(qiáng)大的能力,但生成的視頻仍然相對較短(16幀,16fps,即 1 秒),不適用于現(xiàn)實(shí)世界中的應(yīng)用。鑒于視頻的長度,生成視頻中的運(yùn)動(dòng)幅度也有所限制。相信將我們的工作適應(yīng)更長視頻生成的潛力,并將在未來進(jìn)行探索。
本文轉(zhuǎn)自AI生成未來 ,作者:AI生成未來
