合成數(shù)據(jù)助力視頻生成提速8.5倍,上海AI Lab開源AccVideo
雖然擴(kuò)散模型在視頻生成領(lǐng)域展現(xiàn)出了卓越的性能,但是視頻擴(kuò)散模型通常需要大量的推理步驟對(duì)高斯噪聲進(jìn)行去噪才能生成一個(gè)視頻。這個(gè)過程既耗時(shí)又耗計(jì)算資源。例如,HunyuanVideo [1] 需要 3234 秒才能在單張 A100 上生成 5 秒、720×1280、24fps 的視頻。
為了解決上述問題,上海AI Lab提出了一種創(chuàng)新性的高效蒸餾方法 AccVideo,旨在利用合成數(shù)據(jù)集加速視頻擴(kuò)散模型。AccVideo 相比于教師模型(HunyuanVideo)[1] 提升了 8.5 倍的生成速度并保持相當(dāng)?shù)男阅?。此外,通過使用合成數(shù)據(jù)集,AccVideo 顯著提升訓(xùn)練效率并減少數(shù)據(jù)需求。僅需 8 塊 A100 顯卡,使用 3.84 萬條合成數(shù)據(jù)訓(xùn)練 12 天,即可生成高質(zhì)量 5s、720×1280、24fps 的視頻。
- 開源鏈接:https://github.com/aejion/AccVideo
- 項(xiàng)目主頁:https://aejion.github.io/accvideo
- 論文鏈接:https://arxiv.org/abs/2503.19462
該模型受到包括 Reddit 等在內(nèi)的社區(qū)廣泛關(guān)注,目前已經(jīng)集成 ComfyUI,并且支持 Lora。
- Reddit 討論鏈接:https://www.reddit.com/r/StableDiffusion/comments/1jnb5rt/accvideo_85x_faster_than_hunyuan/
研究動(dòng)機(jī)
作者首先在 1D toy 實(shí)驗(yàn)上對(duì)現(xiàn)有蒸餾擴(kuò)散模型的方法進(jìn)行了細(xì)致的分析。如圖 1 所示,現(xiàn)有的方法在通常需要前向擴(kuò)散來計(jì)算蒸餾數(shù)據(jù)點(diǎn),但是由于數(shù)據(jù)集不匹配(教師模型和學(xué)生模型訓(xùn)練時(shí)使用的數(shù)據(jù)集不匹配)或者高斯噪聲不匹配(高斯噪聲和真實(shí)數(shù)據(jù)的不匹配)的問題,計(jì)算出來的數(shù)據(jù)點(diǎn)可能是無用的。這會(huì)導(dǎo)致教師模型為學(xué)生模型提供不可靠的指導(dǎo)(如圖 1 紅框所示),從而影響模型的蒸餾效率以及生成結(jié)果。
圖 1. 1D toy 實(shí)驗(yàn)圖,展示了現(xiàn)有蒸餾方法在蒸餾時(shí)會(huì)使用無用數(shù)據(jù)點(diǎn)的問題。e) 無用數(shù)據(jù)點(diǎn)的頻率會(huì)隨著數(shù)據(jù)集不匹配的程度大幅增長(zhǎng)
方法概述
本文方法旨在通過蒸餾預(yù)訓(xùn)練視頻擴(kuò)散模型(HunyuanVideo)來減少推理步數(shù),從而加速視頻生成?;谏厦娴姆治?,作者嘗試在蒸餾過程中避免了無效數(shù)據(jù)點(diǎn)的使用。具體而言,作者首先構(gòu)建了一個(gè)合成視頻數(shù)據(jù)集 SynVid,該數(shù)據(jù)集利用教師模型生成高質(zhì)量合成視頻及其去噪軌跡。隨后,作者提出了一種基于軌跡的少步指導(dǎo)機(jī)制和一種對(duì)抗訓(xùn)練策略,從而以更少推理步數(shù)生成視頻并充分利用 SynVid 所捕獲的每個(gè)擴(kuò)散時(shí)間步的數(shù)據(jù)分布特性,進(jìn)一步提升模型性能。圖 2 展示了本方法的總覽圖。
圖 2. AccVideo 方法總覽圖
(1)合成視頻數(shù)據(jù)集,SynVid
作者采用 HunyuanVideo 作為生成器來構(gòu)建合成數(shù)據(jù),如圖 3 所示。作者構(gòu)建的合成數(shù)據(jù)集包含高質(zhì)量的合成視頻
、潛在空間中的去噪軌跡
以及它們對(duì)應(yīng)的文本提示
,其中
表示數(shù)據(jù)數(shù)量,n=50表示推理步數(shù),
表示推理擴(kuò)散時(shí)間步。文本提示
通過使用 InternVL2.5 標(biāo)注互聯(lián)網(wǎng)上的高質(zhì)量視頻獲得。對(duì)于高斯噪聲
,去噪軌跡可以通過以下方式求解:
合成視頻可以通過 VAE 解碼干凈的潛在編碼
得到。值得注意的是,
中的數(shù)據(jù)點(diǎn)是通向正確視頻的中間結(jié)果,因此它們都是有效且有意義的。這有助于高效蒸餾并顯著減少對(duì)數(shù)據(jù)量的需求。
圖 3. 合成視頻數(shù)據(jù)集 SynVid 構(gòu)建圖
(2)基于軌跡的少步指導(dǎo)機(jī)制
視頻擴(kuò)散模型通常需要大量的推理步驟來生成視頻。為了加速生成過程,作者設(shè)計(jì)了一個(gè)學(xué)生模型,該學(xué)生模型從預(yù)訓(xùn)練視頻擴(kuò)散模型(即教師模型)生成的去噪軌跡中學(xué)習(xí),能以更少的推理步數(shù)生成視頻。具體而言,作者提出了一種基于軌跡的損失函數(shù),以 m 步學(xué)習(xí)教師模型的去噪過程。該損失選擇m+1個(gè)關(guān)鍵擴(kuò)散時(shí)間步
,并在每條去噪軌跡上獲取它們對(duì)應(yīng)的潛在編碼
,并通過這些關(guān)鍵潛在編碼學(xué)習(xí)高斯噪聲到視頻的映射關(guān)系:
其中。這些關(guān)鍵潛在編碼構(gòu)建了一條從高斯噪聲到視頻潛在編碼的更短路徑,通過學(xué)習(xí)這個(gè)更短路徑,學(xué)生模型顯著減少了推理步數(shù)。在實(shí)驗(yàn)中,作者m=5設(shè)置,與教師模型相比,推理步驟數(shù)量減少了 10 倍,從而大大加速了視頻生成過程。
(3)對(duì)抗訓(xùn)練策略
除了高斯噪聲與視頻潛在編碼之間的一對(duì)一映射外,SynVid 還包含每個(gè)擴(kuò)散時(shí)間步的許多潛在編碼
,這些潛在編碼隱式地代表了在這個(gè)擴(kuò)散時(shí)間步下的數(shù)據(jù)分布
。為了充分釋放合成數(shù)據(jù)集中的知識(shí)并提升學(xué)生模型
的性能,作者提出了一種對(duì)抗訓(xùn)練策略,以最小化對(duì)抗散度
,其中
表示學(xué)生模型
在擴(kuò)散時(shí)間步
生成的數(shù)據(jù)分布。訓(xùn)練目標(biāo)遵循標(biāo)準(zhǔn)的生成對(duì)抗網(wǎng)絡(luò):
其中D表示判別器。由于判別器需要區(qū)分不同擴(kuò)散時(shí)間步的噪聲潛在編碼,作者設(shè)計(jì)的判別器D包含一個(gè)噪聲感知的特征提取器和m個(gè)擴(kuò)散時(shí)間步感知的投影頭
需要注意的是,該對(duì)抗訓(xùn)練策略避免了現(xiàn)有方法中常用的前向擴(kuò)散操作,從而防止了對(duì)無用數(shù)據(jù)點(diǎn)進(jìn)行蒸餾。這確保了教師模型能夠?yàn)閷W(xué)生模型提供準(zhǔn)確的指導(dǎo)。此外,基于軌跡的少步指導(dǎo)機(jī)制提升了對(duì)抗學(xué)習(xí)的穩(wěn)定性,無需復(fù)雜的正則化設(shè)計(jì)。
實(shí)驗(yàn)結(jié)果
視頻展示了 AccVideo 在不同分辨率下和 VideoCrafter2 [2]、T2V-Turbo-V2 [3]、LTX-Video [4]、CogVideoX [5]、PyramidFlow [6] 以及 HunyuanVideo [1] 的定性對(duì)比結(jié)果。AccVideo 生成的視頻偽影更少(例如小女孩的手部細(xì)節(jié))。相比 CogVideoX1.5,本方法生成的視頻具有更高保真度的畫面和更優(yōu)質(zhì)的背景效果。與 HunyuanVideo 相比,本方法的結(jié)果能更好地匹配文本描述(例如復(fù)古 SUV 的呈現(xiàn)效果)。
總結(jié)
在本文中,作者首先系統(tǒng)分析了現(xiàn)有擴(kuò)散蒸餾方法因使用無效數(shù)據(jù)點(diǎn)而導(dǎo)致的關(guān)鍵問題。基于這一發(fā)現(xiàn),作者提出了一種高效蒸餾新方法以加速視頻擴(kuò)散模型。具體而言:1)構(gòu)建了包含有效蒸餾數(shù)據(jù)點(diǎn)的合成視頻數(shù)據(jù)集 SynVid;2)提出基于軌跡的少步指導(dǎo)機(jī)制,使學(xué)生模型僅需 5 步即可生成視頻,較教師模型實(shí)現(xiàn)顯著加速;3)設(shè)計(jì)了利用合成數(shù)據(jù)集分布特性的對(duì)抗訓(xùn)練策略以提升視頻質(zhì)量。實(shí)驗(yàn)表明,AccVideo 在保持性能相當(dāng)?shù)那疤嵯?,生成速度較教師模型提升 8.5 倍。