0
本文作者: 二維馬曉寧 | 2024-04-25 13:03 |
最近,AI 科技評(píng)論發(fā)現(xiàn),國(guó)產(chǎn)視頻生成模型 Open-Sora 在開源社區(qū)悄悄更新了!
現(xiàn)在單鏡頭支持長(zhǎng)達(dá)16秒的視頻生成,分辨率最高可達(dá)720p,并且可以處理任何寬高比的文本到圖像、文本到視頻、圖像到視頻、視頻到視頻和無限長(zhǎng)視頻的生成需求。我們來試試效果。
生成個(gè)橫屏圣誕雪景,發(fā)b站:
再生成個(gè)豎屏,發(fā)抖音:
還能生成單鏡頭16秒的長(zhǎng)視頻,這下人人都能過把編劇癮了。
怎么玩?指路GitHub:https://github.com/hpcaitech/Open-Sora
更酷的是,Open-Sora 依舊全部開源,包含最新的模型架構(gòu)、最新的模型權(quán)重、多時(shí)間/分辨率/長(zhǎng)寬比/幀率的訓(xùn)練流程、數(shù)據(jù)收集和預(yù)處理的完整流程、所有的訓(xùn)練細(xì)節(jié)、demo示例 和 詳盡的上手教程。
1、Open-Sora:技術(shù)報(bào)告全面解讀
最新功能概覽
作者團(tuán)隊(duì)在GitHub上正式發(fā)布了Open-Sora技術(shù)報(bào)告[1],根據(jù)筆者的了解,本次更新主要包括以下幾項(xiàng)關(guān)鍵特性:
?支持長(zhǎng)視頻生成;
?視頻生成分辨率最高可達(dá)720p;
?單模型支持任何寬高比,不同分辨率和時(shí)長(zhǎng)的文本到圖像、文本到視頻、圖像到視頻、視頻到視頻和無限長(zhǎng)視頻的生成需求;
?提出了更穩(wěn)定的模型架構(gòu)設(shè)計(jì),支持多時(shí)間/分辨率/長(zhǎng)寬比/幀率訓(xùn)練;
?開源了最新的自動(dòng)數(shù)據(jù)處理全流程。
時(shí)空擴(kuò)散模型ST-DiT-2
作者團(tuán)隊(duì)表示,他們對(duì)Open-Sora 1.0中的STDiT架構(gòu)進(jìn)行了關(guān)鍵性改進(jìn),旨在提高模型的訓(xùn)練穩(wěn)定性和整體性能。針對(duì)當(dāng)前的序列預(yù)測(cè)任務(wù),團(tuán)隊(duì)采納了大型語言模型(LLM)的最佳實(shí)踐,將時(shí)序注意力中的正弦波位置編碼(sinusoidal positional encoding)替換為更加高效的旋轉(zhuǎn)位置編碼(RoPE embedding)。此外,為了增強(qiáng)訓(xùn)練的穩(wěn)定性,他們參考SD3模型架構(gòu),進(jìn)一步引入了QK歸一化技術(shù),以增強(qiáng)半精度訓(xùn)練的穩(wěn)定性。為了支持多分辨率、不同長(zhǎng)寬比和幀率的訓(xùn)練需求,作者團(tuán)隊(duì)提出的ST-DiT-2架構(gòu)能夠自動(dòng)縮放位置編碼,并處理不同大小尺寸的輸入。
多階段訓(xùn)練
根據(jù)Open-Sora技術(shù)報(bào)告指出,Open-Sora采用了一種多階段訓(xùn)練方法,每個(gè)階段都會(huì)基于前一個(gè)階段的權(quán)重繼續(xù)訓(xùn)練。相較于單一階段訓(xùn)練,這種多階段訓(xùn)練通過分步驟引入數(shù)據(jù),更高效地實(shí)現(xiàn)了高質(zhì)量視頻生成的目標(biāo)。
初始階段大部分視頻采用144p分辨率,同時(shí)與圖片和 240p,480p 的視頻進(jìn)行混訓(xùn),訓(xùn)練持續(xù)約1周,總步長(zhǎng)81k。第二階段將大部分視頻數(shù)據(jù)分辨率提升至240p和480p,訓(xùn)練時(shí)長(zhǎng)為1天,步長(zhǎng)達(dá)到22k。第三階段進(jìn)一步增強(qiáng)至480p和720p,訓(xùn)練時(shí)長(zhǎng)為1天,完成了4k步長(zhǎng)的訓(xùn)練。整個(gè)多階段訓(xùn)練流程在約9天內(nèi)完成,與Open-Sora1.0相比,在多個(gè)維度提升了視頻生成的質(zhì)量。
統(tǒng)一的圖生視頻/視頻生視頻框架
作者團(tuán)隊(duì)表示,基于Transformer的特性,可以輕松擴(kuò)展 DiT 架構(gòu)以支持圖像到圖像以及視頻到視頻的任務(wù)。他們提出了一種掩碼策略來支持圖像和視頻的條件化處理。通過設(shè)置不同的掩碼,可以支持各種生成任務(wù),包括:圖生視頻,循環(huán)視頻,視頻延展,視頻自回歸生成,視頻銜接,視頻編輯,插幀等。
支持圖像和視頻條件化處理的掩碼策略
作者團(tuán)隊(duì)表示,受到UL2[2]方法的啟發(fā),他們?cè)谀P陀?xùn)練階段引入了一種隨機(jī)掩碼策略。具體而言,在訓(xùn)練過程中以隨機(jī)方式選擇并取消掩碼的幀,包括但不限于取消掩碼第一幀、前k幀、后k幀、任意k幀等。作者還向我們透露,基于Open-Sora 1.0的實(shí)驗(yàn),應(yīng)用50%的概率應(yīng)用掩碼策略時(shí),只需少量步數(shù)模型能夠更好地學(xué)會(huì)處理圖像條件化。在最新版本Open-Sora中,他們采用了從頭開始使用掩碼策略進(jìn)行預(yù)訓(xùn)練的方法。
此外,作者團(tuán)隊(duì)還貼心地為推理階段提供了掩碼策略配置的詳細(xì)指南,五個(gè)數(shù)字的元組形式在定義掩碼策略時(shí)提供了極大的靈活性和控制力。
掩碼策略配置說明
支持多時(shí)間/分辨率/長(zhǎng)寬比/幀率訓(xùn)練
OpenAI Sora的技術(shù)報(bào)告[3]指出,使用原始視頻的分辨率、長(zhǎng)寬比和長(zhǎng)度進(jìn)行訓(xùn)練可以增加采樣靈活性,改善幀和構(gòu)圖。對(duì)此,作者團(tuán)隊(duì)提出了分桶的策略。
具體怎么實(shí)現(xiàn)呢?通過深入閱讀作者發(fā)布的技術(shù)報(bào)告,我們了解到,所謂的桶,是(分辨率,幀數(shù),長(zhǎng)寬比)的三元組。團(tuán)隊(duì)為不同分辨率的視頻預(yù)定義了一系列寬高比,以覆蓋大多數(shù)常見的視頻寬高比類型。在每個(gè)訓(xùn)練周期epoch開始之前,他們會(huì)對(duì)數(shù)據(jù)集進(jìn)行重新洗牌,并將樣本根據(jù)其特征分配到相應(yīng)的桶中。具體來說,他們會(huì)將每個(gè)樣本放入一個(gè)分辨率和幀長(zhǎng)度均小于或等于該視頻特性的桶中。
Open-Sora 分桶策略
作者團(tuán)隊(duì)進(jìn)一步透露,為了降低計(jì)算資源的要求,他們?yōu)槊總€(gè)keep_prob和batch_size引入兩個(gè)屬性(分辨率,幀數(shù)),以減少計(jì)算成本并實(shí)現(xiàn)多階段訓(xùn)練。這樣,他們可以控制不同桶中的樣本數(shù)量,并通過為每個(gè)桶搜索良好的批大小來平衡GPU負(fù)載。作者在技術(shù)報(bào)告中對(duì)此進(jìn)行了詳盡的闡述,感興趣的小伙伴可以閱讀作者在GitHub上發(fā)布的技術(shù)報(bào)告來獲取更多的信息:https://github.com/hpcaitech/Open-Sora
數(shù)據(jù)收集和預(yù)處理流程
作者團(tuán)隊(duì)甚至對(duì)數(shù)據(jù)收集與處理環(huán)節(jié)也提供了詳盡的指南。根據(jù)作者在技術(shù)報(bào)告中的闡述,在Open-Sora 1.0的開發(fā)過程中,他們意識(shí)到數(shù)據(jù)的數(shù)量和質(zhì)量對(duì)于培育一個(gè)高效能模型極為關(guān)鍵,因此他們致力于擴(kuò)充和優(yōu)化數(shù)據(jù)集。他們建立了一個(gè)自動(dòng)化的數(shù)據(jù)處理流程,該流程遵循奇異值分解(SVD)原則,涵蓋了場(chǎng)景分割、字幕處理、多樣化評(píng)分與篩選,以及數(shù)據(jù)集的管理系統(tǒng)和規(guī)范。同樣,他們也將數(shù)據(jù)處理的相關(guān)腳本無私地分享至開源社區(qū)。對(duì)此感興趣的開發(fā)者現(xiàn)在可以利用這些資源,結(jié)合技術(shù)報(bào)告和代碼,來高效地處理和優(yōu)化自己的數(shù)據(jù)集。
Open-Sora 數(shù)據(jù)處理流程
2、Open-Sora 性能:全方位評(píng)測(cè)
視頻生成效果展示
Open-Sora最令人矚目的亮點(diǎn)在于,它能夠?qū)⒛隳X中的景象,通過文字描述的方式,捕捉并轉(zhuǎn)化為動(dòng)人的動(dòng)態(tài)視頻。那些在思維中一閃而過的畫面和想象,現(xiàn)在得以被永久地記錄下來,并與他人分享。在這里,筆者嘗試了幾種不同的prompt,作為拋磚引玉。
比如,筆者嘗試生成了一個(gè)在冬季森林里游覽的視頻。雪剛下不久,松樹上掛滿了皚皚白雪,暗色的松針和潔白的雪花錯(cuò)落有致,層次分明。
又或者,在一個(gè)靜謐夜晚中,你身處像無數(shù)童話里描繪過黑暗的森林,幽深的湖水在漫天璀璨的星河的照耀下波光粼粼。
在空中俯瞰繁華島嶼的夜景則更是美麗,溫暖的黃色燈光和絲帶一樣的藍(lán)色海水讓人一下子就被拉入度假的悠閑時(shí)光里。
城市里的車水馬龍,深夜依然亮著燈的高樓大廈和街邊小店,又有另一番風(fēng)味。
除了風(fēng)景之外,Open-Sora還能還原各種自然生物。無論是紅艷艷的小花:
還是慢悠悠扭頭的變色龍, Open-Sora都能生成較為真實(shí)的視頻。
筆者還嘗試了多種prompt測(cè)試,還提供了許多生成的視頻供大家參考,包括不同內(nèi)容,不同分辨率,不同長(zhǎng)寬比,不同時(shí)長(zhǎng)。
筆者還發(fā)現(xiàn),僅需一個(gè)簡(jiǎn)潔的指令,Open-Sora便能生成多分辨率的視頻短片,徹底打破創(chuàng)作限制。
分辨率:16*240p
分辨率:32*240p
分辨率:480*854p
我們還可以喂給Open-Sora一張靜態(tài)圖片讓它生成短片
此外,Open-Sora 還可以將兩個(gè)靜態(tài)圖巧妙地連接起來。
再比如說我們要對(duì)原有視頻進(jìn)行編輯,僅需一個(gè)簡(jiǎn)單的指令,原本明媚的森林便迎來了一場(chǎng)鵝毛大雪。
我們也能讓Open-Sora 生成高清的圖片
值得注意的是,Open-Sora的模型權(quán)重已經(jīng)完全免費(fèi)公開在他們的開源社區(qū)上,不妨下載下來試一下。由于他們還支持視頻拼接功能,這意味著你完全有機(jī)會(huì)免費(fèi)創(chuàng)作出一段帶有故事性的小短片,將你的創(chuàng)意帶入現(xiàn)實(shí)。
權(quán)重下載地址:https://github.com/hpcaitech/Open-Sora
當(dāng)前局限與未來計(jì)劃
盡管在復(fù)現(xiàn)類Sora文生視頻模型的工作方面取得了不錯(cuò)的進(jìn)展,但作者團(tuán)隊(duì)也謙遜地指出,當(dāng)前生成的視頻在多個(gè)方面仍有待改進(jìn):包括生成過程中的噪聲問題、時(shí)間一致性的缺失、人物生成質(zhì)量不佳以及美學(xué)評(píng)分較低。對(duì)于這些挑戰(zhàn),作者團(tuán)隊(duì)表示,他們將在下一版本的開發(fā)中優(yōu)先解決,以期望達(dá)到更高的視頻生成標(biāo)準(zhǔn),感興趣的朋友不妨持續(xù)關(guān)注一下。我們期待Open-Sora社區(qū)帶給我們的下一次驚喜。
開源地址:https://github.com/hpcaitech/Open-Sora
參考文獻(xiàn):
[1] https://github.com/hpcaitech/Open-Sora/blob/main/docs/report_02.md
[2] Tay, Yi, et al. "Ul2: Unifying language learning paradigms." arXiv preprint arXiv:2205.05131 (2022).
[3] https://openai.com/research/video-generation-models-as-world-simulators
雷峰網(wǎng)(公眾號(hào):雷峰網(wǎng))文章
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。