國產(chǎn)開源Sora上新:全面支持國產(chǎn)AI算力,可用ReVideo視頻編輯,北大-兔展團隊出品
北大-兔展聯(lián)合發(fā)起的Sora開源復現(xiàn)計劃Open-Sora-Plan,今起可以生成最長約21秒的視頻了!
生成的視頻水平,如下展示。先看這個長一點的,9.2s:
下面這段人形機器人種花要短一點,是2.7s:
當然了,老規(guī)矩,這一次的所有數(shù)據(jù)、代碼和模型,繼續(xù)開源。
目前,Open-Sora-Plan在GitHub上有10.4k顆星星,大家可以選擇去抱抱臉上激情試玩。
該說不說,版本迭代速度還挺快——上個月,Open-Sora-Plan就在開源社區(qū)上新過一波。
當時能支持單鏡頭16秒的視頻生成,分辨率最高720p,能滿足的生成需求也比較多樣。
這次版本更新,背后主要是兩個方面有了進步:
- 采用了更高質量視覺數(shù)據(jù)與caption
- 優(yōu)化了CausalVideoVAE的結構
團隊還表示,Open-Sora-Plan已經(jīng)支持使用國產(chǎn)AI計算系統(tǒng)(華為昇騰,期待更多國產(chǎn)算力芯片)進行完整的訓練和推理。
Open-Sora-Plan v1.1.0展示
此次更新的版本是Open-Sora-Plan v1.1.0。
項目團隊對Open-Sora-Plan的現(xiàn)階段能力進行了三個層面的展示,并注明演示背后是用3k小時視頻數(shù)據(jù)。
首先展示的是10秒版文生視頻(10s×512×512)。
這張圖的Prompt是,“藍色時刻圣托里尼島的鳥瞰圖,展示了令人驚嘆的建筑”。
這張圖的Prompt是,“攝像機對準一大堆老式電視機,所有電視機都顯示不同的畫面”。
其次展示的是2秒版文生視頻(2s×512×512)。
給出的效果展示,有經(jīng)典的小狗子,“一只戴著貝雷帽和黑色高領毛衣的柴犬”。
還有一幅畫,畫面上航船前行,波濤拍打:
團隊展示的第三類,是用Open-Sora-Plan v1.1.0進行視頻編輯(2s×512×512)。
據(jù)了解,這部分內(nèi)容采用的是聯(lián)合團隊剛提出來的ReVideo模型。
不論是小貓戴墨鏡:
還是天空飄氣球:
在畫面連續(xù)性和角色一致性方面都表現(xiàn)得還算不錯。
當然,團隊承認“但我們?nèi)匀浑xSora有一段距離”,同時給出了失敗案例展示。
例如,團隊對比了4倍時間和2倍時間下采樣的重建視頻,發(fā)現(xiàn)視頻在重建細粒度特征時,畫面都會發(fā)生抖動。
這表明減少時間下采樣并不能完全解決抖動問題。
并且用v1.1.0生成的雪地里的小狗,視頻中的小狗頭出現(xiàn)了Semantic distortion的問題,似乎模型不能很好的判斷哪個頭是哪個狗的。
這個問題其實在OpenAI的Sora的早期基座模型也會出現(xiàn)……
因此Open-Sora-Plan的團隊成員認為,也許可以通過擴大模型和數(shù)據(jù)量來解決問題,達到更好的效果。
?
團隊還提到,視頻生成與圖片生成最大的不同,在于其動態(tài)性,即物體在連續(xù)的鏡頭中發(fā)生一系列動態(tài)變化。
然而v1.1.0生成的視頻仍然存在許多有限動態(tài)的視頻。
團隊通過翻看大量的訓練視頻發(fā)現(xiàn),這些素材網(wǎng)爬取的視頻雖然畫面質量很好,然而充斥著一些無意義的特寫鏡頭;而這些特寫鏡頭往往變化幅度很小,甚至處于靜止狀態(tài)。
同時,團隊還發(fā)現(xiàn)negative prompt可以顯著提高視頻質量——這意味著也許需要在訓練數(shù)據(jù)中加入更多先驗知識。
△without negative prompt生成的小狗視頻
除了對方給出的展示,目前大家都可以在Hugging Face上試玩。
需要注意啦,由于視頻生成可能需要150個左右的步驟才能產(chǎn)生良好的結果,試玩時生成每個視頻大約需要4-5mins。
背后技術
整體框架上,Open-Sora-Plan由三部分組成:
- Video VAE
- Denoising Diffusion Transformer(去噪擴散型Transformer)
- Condition Encoder(條件編碼器)
這和Sora技術報告的內(nèi)容基本差不多。
此次更新的Open-Sora-Plan v1.1.0是一個基于Transformer的文本到視頻模型,經(jīng)過T5文本嵌入的訓練。
與之前的工作類似,整個訓練過程采用多階段的級聯(lián)的訓練方法,分三個階段。
其中,第二階段采用了華為昇騰算力進行訓練,該階段的訓練、推理完全由國產(chǎn)芯片支持。
目前,仍然在訓練和不斷觀察第三階段的模型——增加幀數(shù)到513幀,大約是24FPS的21秒的視頻。
相比上個月發(fā)布的前作Open-Sora-Plan v1.0.0,最新版本主要2個方面的優(yōu)化。
一是優(yōu)化了CausalVideoVAE的結構,二是采用了更高質量的視覺數(shù)據(jù)與captions。
- 優(yōu)化CausalVideoVAE的結構
優(yōu)化CausalVideoVAE的結構,讓Open-Sora-Plan v1.1.0擁有比前作更強的性能、更高的推理效率。
來看過程:
模型結構
隨著生成視頻幀數(shù)不斷增加,CausalVideoVAE的encoder開銷逐漸增加;當訓練257幀時,80G的顯存不足以讓VAE encode視頻。
因此,團隊減少CausalConv3D的數(shù)量,只保留encoder的最后兩個stage的CausalConv3D。
它能夠幾乎保持原有的性能的情況下大幅度降低開銷。
注意,這里只修改encoder,decoder的仍然保留所有的CausalConv3D,因為訓練Diffusion Model不需要decoder。
Temoral Module
而在v1.0.0,Open-Sora-Plan的temporal module只有一個TimeAvgPool,AvgPool會導致視頻中的高頻信息(如細節(jié)和邊緣)丟失。
為了解決這個問題,團隊在v1.1.0中改進該模塊,引入了卷積并增加了可學習的權重,以期望不同分支能夠解耦不同特征。
當忽略CasualConv3D時,視頻將會被重建得非常模糊;同樣的,當忽略TemporalAvgPool,視頻會變得非常銳利。
訓練細節(jié)
同時,和v1.0.0一樣,團隊從Latent Diffusion的VAE初始化,采用tail initialization。
對于CasualVideoVAE,研究人員在第一階段訓練100k steps with the video shape of 9×256×256。
進一步,研究人員將9幀提高到25幀,發(fā)現(xiàn)增加視頻幀數(shù)還能顯著提高模型性能。
需要特別澄清的是,第一階段和第二階段團隊開啟mixed factor,在訓練結束時a(sigmoid(mixed factor))的值為0.88,這意味著模型傾向于保留低頻信息。
研究人員在第三階段將mixed factor初始化為0.5(sigmoid(0.5)=0.6225),最終模型能力得到進一步提升。
損失函數(shù)
研究人員發(fā)現(xiàn)GAN Loss能夠保留高頻信息和緩解網(wǎng)格效應。
同時還發(fā)現(xiàn)將2D GAN改成3D GAN能有進一步提升。
Inference Tricks
在v1.0.0中,團隊采用spatial tiled convolution,它能夠以幾乎恒定的內(nèi)存推理任意分辨率的視頻。
然而隨著幀數(shù)變多,VAE encoder的開銷不斷增加。
因此新版本引入一個方法叫做temporal rollback tiled convolution,它是專門為了CausalVideoVAE而設計的一種tiled方法。
具體來說,除了第一個窗口以外的窗口都將拋棄第一幀,因為窗口內(nèi)的第一幀被看作圖片,然而其余幀都應該被當作視頻幀。
- 采用更高質量的視覺數(shù)據(jù)與caption
接下來介紹第二個優(yōu)化部分,即Open-Sora-Plan v1.1.0采用了更高質量的視覺數(shù)據(jù)與caption,這使得模型對世界運行規(guī)律有了更好的理解。
由于Open-Sora-Plan支持圖片視頻聯(lián)合訓練,因此數(shù)據(jù)收集分為圖片和視頻2個部分,且圖片數(shù)據(jù)集和視頻數(shù)據(jù)集是兩個獨立的數(shù)據(jù)集。
團隊注明,大概花費了32×240個H100 hours生成image and video captions——這些也全部開源。
圖片收集管道
研究人員從Pixart-Alpha獲取了11M個圖像文本對,他們的caption由LLaVA生成。
團隊還注意到了高質量的OCR數(shù)據(jù)集Anytext-3M,這個數(shù)據(jù)集每一個圖片都配對了相對應的OCR字符。但這些caption不足以描述整個圖片。因此,團隊采用InternVL-1.5進行補充描述。
由于T5只支持英文,所以研究人員篩選了英文數(shù)據(jù)參與訓練,這約有完整數(shù)據(jù)的一半。
另外還從Laion-5B中篩選高質量圖片以提高生成人類的質量,篩選規(guī)則主要包括:高分辨率、高美學分數(shù)、無水印的包含人的圖片。
視頻收集管道
在v1.0.0中,團隊對視頻采樣1幀來生成caption。
然而隨著視頻時長增加,一幀圖片無法描述整個視頻的內(nèi)容,也無法描述時序上的鏡頭移動。
因此現(xiàn)在采用video captioner對整個video clip生成caption——具體地,采用ShareGPT4Video,它能夠很好的覆蓋時間信息并且描述整個視頻內(nèi)容。
值得注意的是,v1.1.0的視頻數(shù)據(jù)集大約有3k小時,而v1.0.0版本僅有0.3k小時。
與之前一樣,團隊開源所有的文本注釋和視頻(均為CC0協(xié)議)。
One More Thing
最后,Open-Sora-Plan表示,接下來的工作主要圍繞兩個方面進行。
一是數(shù)據(jù)縮放,重點關注數(shù)據(jù)來源和數(shù)據(jù)體量。
二是模型設計,主要會對CasualVideoVAE和擴散模型下手。
不變的是,無論如何更迭,所有數(shù)據(jù)、代碼和模型都會繼續(xù)開源。
有上抱抱臉手動體驗了的朋友們,歡迎在評論區(qū)分享試玩感受呀~
GitHub:
??https://github.co??m/PKU-YuanGroup/Open-Sora-Plan
抱抱臉:
??https://huggingface.co/spaces/LanguageBind/Open-Sora-Plan-v1.1.0??
ReVideo模型:
??https://github.com/MC-E/ReVideo?tab=readme-ov-file??
本文轉自 量子位 ,作者:量子位
