OpenAI未至,Open-Sora再度升級!已支援生成16秒720p影片

削微寒發表於2024-04-25

Open-Sora 在開源社群悄悄更新了!現在單鏡頭支援長達 16 秒的影片生成,解析度最高可達 720p,並且可以處理任何寬高比的文字到影像、文字到影片、影像到影片、影片到影片和無限長影片的生成需求。我們來試試效果。

生成個橫屏聖誕雪景,發b站

再生成個豎屏,發抖音

還能生成單鏡頭16秒的長影片,這下人人都能過把編劇癮了

影片畫質已被壓縮

怎麼玩?指路 GitHub:github.com/hpcaitech/Open-Sora

更酷的是,Open-Sora 最新版本依舊全部開源、誠意滿滿,倉庫內包含最新的模型架構、最新的模型權重、多時間/解析度/長寬比/幀率的訓練流程、資料收集和預處理的完整流程、所有的訓練細節、Demo 示例和詳盡的上手教程

一、技術報告全面解讀

近日,Open-Sora 的作者團隊在 GitHub 上正式釋出了最新版本的技術報告[1],下面我們將透過技術報告對功能、架構、訓練方式、資料收集、預處理等方面進行逐一解讀。

1.1 最新功能概覽

Open-Sora 本次更新主要包括以下幾項關鍵特性:

  • 支援長影片生成;
  • 影片生成解析度最高可達 720p;
  • 單模型支援任何寬高比,不同解析度和時長的文字到影像、文字到影片、影像到影片、影片到影片和無限長影片的生成需求;
  • 提出了更穩定的模型架構設計,支援多時間/解析度/長寬比/幀率訓練;
  • 開源了最新的自動資料處理全流程;

1.2 時空擴散模型

Open-Sora 本次升級對 1.0 版本中的 STDiT 架構進行了關鍵性改進,旨在提高模型的訓練穩定性和整體效能。針對當前的序列預測任務,團隊採納了大型語言模型(LLM)的最佳實踐,將時序注意力中的正弦波位置編碼(sinusoidal positional encoding)替換為更加高效的旋轉位置編碼(RoPE embedding)。

此外,為了增強訓練的穩定性,他們參考 SD3 模型架構,進一步引入了 QK 歸一化技術,以增強半精度訓練的穩定性。為了支援多解析度、不同長寬比和幀率的訓練需求,作者團隊提出的 ST-DiT-2 架構能夠自動縮放位置編碼,並處理不同大小尺寸的輸入。

1.3 多階段訓練

技術報告指出,Open-Sora 採用了一種多階段訓練方法,每個階段都會基於前一個階段的權重繼續訓練。相較於單一階段訓練,這種多階段訓練透過分步驟引入資料,更高效地實現了高質量影片生成的目標。

  • 初始階段:大部分影片採用 144p 解析度,同時與圖片和 240p、480p 的影片進行混訓,訓練持續約 1 周,總步長 81k。
  • 第二階段:將大部分影片資料解析度提升至 240p 和 480p,訓練時長為 1 天,步長達到 22k。
  • 第三階段:進一步增強至 480p 和 720p,訓練時長為 1 天,完成了 4k 步長的訓練。整個多階段訓練流程在約 9 天內完成。

與 1.0 相比,最新版本在多個維度提升了影片生成的質量。

1.4 統一的圖生影片/影片生影片框架

作者團隊表示,基於 Transformer 的特性,可以輕鬆擴充套件 DiT 架構以支援影像到影像以及影片到影片的任務。他們提出了一種掩碼策略來支援影像和影片的條件化處理。透過設定不同的掩碼,可以支援各種生成任務,包括:圖生影片,迴圈影片,影片延展,影片自迴歸生成,影片銜接,影片編輯,插幀等。

支援影像和影片條件化處理的掩碼策略

受到 UL2[2] 方法的啟發,他們在模型訓練階段引入了一種隨機掩碼策略。具體而言,就是在訓練過程中以隨機方式選擇並取消掩碼的幀,包括但不限於取消掩碼第一幀、前 k 幀、後 k 幀、任意 k 幀等。報告中還透露,基於 Open-Sora 1.0 的實驗,應用 50% 的機率應用掩碼策略時,只需少量步數模型能夠更好地學會處理影像條件化。在最新版的 Open-Sora 中,他們採用了從頭開始使用掩碼策略進行預訓練的方法。

此外,作者團隊還貼心地為推理階段提供了掩碼策略配置的詳細指南,五個數字的元組形式在定義掩碼策略時提供了極大的靈活性和控制力。

掩碼策略配置說明

1.5 支援多時間/解析度/長寬比/幀率訓練

OpenAI Sora 的技術報告[3]指出,使用原始影片的解析度、長寬比和長度進行訓練可以增加取樣靈活性,改善幀和構圖。對此,作者團隊提出了分桶的策略。

具體怎麼實現呢?透過深入閱讀作者釋出的技術報告,我們瞭解到,所謂的桶,是(解析度、幀數、長寬比)的三元組。他們為不同解析度的影片預定義了一系列寬高比,以覆蓋大多數常見的影片寬高比型別。在每個訓練週期 epoch 開始之前,他們會對資料集進行重新洗牌,並將樣本根據其特徵分配到相應的桶中。具體來說,他們會將每個樣本放入一個解析度和幀長度均小於或等於該影片特性的桶中。

Open-Sora 分桶策略

為了降低計算資源的要求,他們為每個 keep_probbatch_size 引入兩個屬性(解析度、幀數),以減少計算成本並實現多階段訓練。這樣就可以控制不同桶中的樣本數量,並透過為每個桶搜尋良好的批大小來平衡 GPU 負載。技術報告中對此進行了詳盡的闡述,感興趣的小夥伴,可以閱讀 GitHub 上的技術報告來獲取更多的資訊。

GitHub 地址:github.com/hpcaitech/Open-Sora

1.6 資料收集和預處理流程

作者團隊甚至對資料收集與處理環節也提供了詳盡的指南。根據技術報告中的闡述,在 Open-Sora 1.0 的開發過程中,他們意識到資料的數量和質量對於培育一個高效能模型極為關鍵,因此他們致力於擴充和最佳化資料集。他們建立了一個自動化的資料處理流程,該流程遵循奇異值分解(SVD)原則,涵蓋了場景分割、字幕處理、多樣化評分與篩選,以及資料集的管理系統和規範。

同樣,他們也將資料處理的相關指令碼無私地分享至開源社群。對此感興趣的開發者現在可以利用這些資源,結合技術報告和程式碼,來高效地處理和最佳化自己的資料集。

Open-Sora 資料處理流程

二、效能全方位評測

說了這麼多技術細節,下面讓我們一同欣賞下 Open-Sora 最新的影片生成效果,放鬆一下。

Open-Sora 本次更新最令人矚目的亮點在於,它能夠將你腦中的景象,透過文字描述的方式,捕捉並轉化為動人的動態影片。那些在思維中一閃而過的畫面和想象,現在得以被永久地記錄下來,並與他人分享。在這裡,筆者嘗試了幾種不同的 prompt,作為拋磚引玉。

2.1 風景

比如,筆者嘗試生成了一個在冬季森林裡遊覽的影片。雪剛下不久,松樹上掛滿了皚皚白雪,暗色的松針和潔白的雪花錯落有致,層次分明。

又或者,在一個靜謐夜晚中,你身處像無數童話裡描繪過黑暗的森林,幽深的湖水在漫天璀璨的星河的照耀下波光粼粼。

在空中俯瞰繁華島嶼的夜景則更是美麗,溫暖的黃色燈光和絲帶一樣的藍色海水讓人一下子就被拉入度假的悠閒時光裡。

城市裡的車水馬龍,深夜依然亮著燈的高樓大廈和街邊小店,又有另一番風味。

2.2 自然生物

除了風景之外,Open-Sora 還能還原各種自然生物。無論是紅豔豔的小花,

還是慢悠悠扭頭的變色龍,Open-Sora 都能生成較為真實的影片。

2.3 不同解析度/長寬比/時長

筆者還嘗試了多種 prompt 測試,還提供了許多生成的影片供大家參考,包括不同內容、不同解析度、不同長寬比、不同時長。

筆者還發現,僅需一個簡潔的指令,Open-Sora 便能生成多解析度的影片短片,徹底打破創作限制。

解析度:16*240p

解析度:32*240p

解析度:64*240p

解析度 480*854p

2.4 圖生影片

我們還可以餵給 Open-Sora 一張靜態圖片讓它生成短片。

Open-Sora 還可以將兩個靜態圖巧妙地連線起來,輕觸下方影片,將帶您體驗從下午至黃昏的光影變幻,每一幀都是時間的詩篇。

2.5 影片編輯

再比如說我們要對原有影片進行編輯,僅需一個簡單的指令,原本明媚的森林便迎來了一場鵝毛大雪。

2.6 生成高畫質圖片

我們也能讓 Open-Sora 生成高畫質的圖片:

值得注意的是,Open-Sora 的模型權重已經完全免費公開在他們的開源社群上。由於他們還支援影片拼接功能,這意味著你完全有機會免費創作出一段帶有故事性的小短片,將你的創意帶入現實。

權重下載地址:github.com/hpcaitech/Open-Sora

三、當前侷限與未來計劃

儘管 Open-Sora 在復現類 Sora 文生影片模型的工作方面取得了不錯的進展,但作者團隊也謙遜地指出,當前生成的影片在多個方面仍有待改進,包括生成過程中的噪聲問題、時間一致性的缺失、人物生成質量不佳以及美學評分較低。

對於這些挑戰,作者團隊表示:他們將在下一版本的開發中優先解決,以期望達到更高的影片生成標準,感興趣的朋友不妨持續關注。我們期待 Open-Sora 社群帶給我們的下一次驚喜。

GitHub 地址:github.com/hpcaitech/Open-Sora

參考文獻:

[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

相關文章