今天小編分享的科學經驗:解剖Sora:37頁論文逆向工程推測技術細節,微軟參與,華人團隊出品,歡迎閱讀。
Sora 剛發布不久,就被逆向工程 " 解剖 " 了?!
來自理海大學、微軟研究院的華人團隊發布了首個Sora 相關研究綜述,足足有 37 頁。
他們基于 Sora 公開技術報告和逆向工程,對模型背景、相關技術、應用、現存挑戰以及文本到視頻 AI 模型未來發展方向進行了全面分析。
連計算機視覺領網域的 AI 生成模型發展史、近兩年有代表性的視頻生成模型都羅列了出來:
網友們也屬實沒想到,僅僅過了半個月、Sora 還暫未公開僅有部分人可使用,學術圈相關研究竟出現得這麼快。
不少網友表示,綜述非常全面有條理,建議全文閱讀。
那麼這篇綜述具體都講了啥?
量子位在不改變原意的基礎上,對部分内容進行了整理。
目錄
逆向工程剖析 Sora 技術細節
整體架構
多樣性視覺數據預處理
指令調優:視頻摘要生成器
視頻提示工程
Sora 具有裡程碑式意義
Sora 的五大應用前景及局限性
逆向工程剖析 Sora 技術細節
眾所周知,Sora 發布後,OpenAI 緊接着發布了技術報告,但未詳細透露技術細節,被有的網友吐槽 OpenAI 果然還是這麼 "Close"。
學術圈的猜測也是五花八門,。Jim Fan 還高呼 Sora 就是視頻生成的GPT-3 時刻。
不過,OpenAI 研究員 Jason Wei 最近對 Sora 的評價是視頻生成的GPT-2 時刻。
大佬們眾說紛纭,然而誰的猜測更為準确還不好說。
而在這篇研究綜述中,研究人員用逆向工程同樣推測分析了 Sora 的技術細節,并讨論了一系列相關工作。大致涉及以下幾個問題——
整體架構
根據 OpenAI 發布的技術報告,Sora 是一個在不同時長、分辨率和寬高比的視頻及影像上訓練而成的擴散模型,同時采用了Transformer架構,即為一種" 擴散型 Transformer"。
回顧現有工作并運用逆向工程,研究人員推測補充了如下信息。
Sora 整個框架可能由三部分組成:
首先,時間 - 空間壓縮器将原始視頻映射到潛在空間;
随後,ViT 處理這些被 token 化的潛在表示,并輸出去噪後的潛在表示;
類似 CLIP 的條件機制接收由 LLM 增強的用戶指令和潛在的視覺提示,生成具有特定風格主題的視頻。經過多次去噪迭代,最終得到了生成視頻的潛在表示,随後通過相應的解碼器映射回像素空間。
△逆向工程:Sora 框架概述
更細節一點,逆向工程推測 Sora 利用了級聯擴散模型架構,結合基礎模型和多個時空細化模型。
由于高分辨率下使用注意力機制的計算成本高且性能提升有限,基礎擴散模型和低分辨率擴散模型不太可能大量使用注意力模塊。
同時,考慮到視頻 / 場景生成中時間一致性比空間一致性更重要,Sora 或采用長視頻(用于時間一致性)和低分辨率的高效訓練策略來保證空間和時間上的一致性。
△Diffusion Transformer,DiT(左)、U-ViT(右)的整體架構
另外,考慮到與預測原始潛在變量 x 或噪聲 ϵ 的其他變體相比,v 參數化擴散模型的性能更優,Sora 可能使用 v 參數化擴散模型。
在潛在編碼器方面,大多數現有工作為提升訓練效率,利用 Stable Diffusion 的預訓練 VAE 編碼器作為初始化的模型 checkpoint。
然而,編碼器缺乏時間壓縮能力。盡管一些工作提議只微調解碼器來處理時間信息,但解碼器在壓縮的潛在空間中處理視頻時間數據的性能仍然不是最優的。
基于技術報告,研究人員推測 Sora 可能不是使用現有預訓練 VAE 編碼器,而是使用從零開始在視頻數據上訓練的時空 VAE 編碼器,該編碼器在針對視頻内容優化的壓縮潛在空間中的表現優于現有編碼器。
多樣性視覺數據預處理
與傳統方法需要裁剪視頻大小或調整寬高比以适應統一的标準尺寸不同,Sora 能夠在原生尺寸的視頻和影像上訓練、理解并生成視頻。
也就是能處理多樣性視覺數據,且對原始尺寸的樣本無損,這顯著提升了 Sora 的視頻構圖與框架,使生成的視頻更自然連貫。
舉個例子,用傳統方法訓練如左圖,由于正方形裁剪,視頻畫面主體被截斷,而右圖使用原始樣本訓練,視頻主體完全被捕捉。
這部分的技術細節,OpenAI 在技術報告中雖然做了重點介紹,不過也僅是提出了一個高層次的想法:
為處理不同分辨率、寬高比、時長的影像和視頻,Sora 采用了統一的視覺表示。具體來說,模型先将視頻壓縮到低維潛在空間中,然後将表示分解為時空 patch,從而實現了視頻的"patch 化 "。
而在綜述中,研究人員做了如下分析。
Sora 的視頻壓縮網絡(視覺編碼器)目的是減少輸入數據(原始視頻)的維度,并輸出一個在時間和空間上都被壓縮的潛在表示。
根據 Sora 技術報告中的參考文獻,壓縮網絡建立在 VAE 或 VQ-VAE 之上。如果按照技術報告中提到的不調整大小、不裁剪,VAE 很難将視覺數據映射到統一且固定大小的潛在空間。
不過,這裡總結了兩種方法來解決這個問題。
一種方法是空間 -patch 壓縮(Spatial-patch Compression),類似于 ViT 和 MAE 中采用的方法,将視頻幀分割成固定大小的 patch 然後将它們編碼到潛在空間。
有幾個關鍵問題要注意:
時間維度的可變性。因視頻時長不同、潛在空間維度不固定,需通過采樣固定幀數或設定超長輸入長度來整合時間信息。
利用預訓練視覺編碼器。大多數研究者傾向于使用預訓練編碼器如 Stable Diffusion 的 VAE,但 Sora 團隊可能自行訓練編碼器和解碼器,能高效處理大尺寸 patch 數據。
時間信息的整合。由于這種方法主要關注空間 patch 壓縮,所以需要模型内部的額外機制來聚合時間信息,這對于捕捉動态變化至關重要。
另一種方法是空間 - 時間 -patch 壓縮(Spatial-temporal-patch Compression),使用 3D 卷積提取時間信息。
這種方法同時封裝視頻數據的空間和時間維度,提供一種全面的視頻表示,考慮了幀之間的運動和變化,從而捕捉視頻的動态特性。
與空間 -patch 壓縮相似,空間 - 時間 -patch 壓縮通過設定特定的卷積核參數處理視頻,由于視頻輸入的特征差異,導致潛在空間維度發生變化,在這裡上文提到的空間 -patch 的方法同樣适用并有效。
在壓縮網絡這部分還有一個關鍵問題:如何處理不同視頻類型中潛在特征塊或 patch 的數量,然後再将 patch 輸入到 Diffusion Transformer 的輸入層?
研究人員認為,基于 Sora 的技術報告和相應參考文獻,patch n ’ pack(PNP)可能是解決方案。
PNP 将來自不同影像的多個 patch 打包到一個序列中,類似于 NLP 中的示例打包,通過丢棄 token 來适應可變長度輸入的高效訓練。
在打包過程中,需要考慮如何以緊湊的方式打包這些 patch,以及如何控制哪些 patch 應被丢棄。
對于第一個問題,研究人員提到了一種簡單的算法,即在有足夠剩餘空間時添加示例,然後用 token 填充序列,以獲得批量操作所需的固定序列長度。
對于第二個問題,一種直觀的方法是丢棄相似的 token,或者像 PNP 那樣應用丢棄率調度器。
不過丢棄 token 可能會在訓練過程中遺失一些細節。因此,研究人員認為 OpenAI 可能會使用超長的上下文視窗打包視頻中的所有 token。
長視頻的空間 - 時間潛在 patch 可以打包在一個序列中,而來自幾個短視頻的潛在 patch 則在另一個序列中連接。
總的來說,在數據預處理這部分,研究人員推測 Sora 首先将視覺 patch 壓縮成低維潛在表示,然後将這樣的潛在 patch 或進一步 patch 化潛在 patch 排列成一個序列,接着在将這些潛在 patch 輸入到 Diffusion Transformer 的輸入層之前注入噪聲。
Sora 采用空間 - 時間 patch 化,因為它易于實現,并且可以有效減少具有高信息密度 token 的上下文長度,降低後續對時間信息建模的復雜性。
指令調優:視頻描述生成器
模型指令調優旨在增強 AI 模型遵循提示的能力,使模型能适應更廣泛的用戶請求,确保對指令中的細節給予細致的關注,并生成精确滿足用戶需求的視頻。
Sora 在這方面采用了一種與 DALL · E 3 類似的方法。
首先訓練一個能夠詳細描述視頻的視頻描述生成器(Video captioner)。然後,将其應用于訓練數據中的所有視頻,來生成高質量的視頻 - 文本對,用這些視頻 - 文本對微調 Sora,提高其遵循指令的能力。
Sora 的技術報告沒有透露訓練視頻摘要生成器的細節。鑑于視頻摘要生成器是一個視頻 - 文本的模型,構建它有多種方法。
方法之一是利用 CoCa 架構進行視頻摘要生成,通過獲取視頻的多個幀并将每個幀輸入到影像編碼器 VideoCoCa。
VideoCoCa 基于 CoCa 并重用預訓練的影像編碼器權重,獨立地應用于采樣的視頻幀。得到的幀 token 嵌入被展平并連接成一個長視頻表示序列。這些展平的幀 token 随後被一個生成性池化器和一個對比性池化器處理,這兩者與對比損失和摘要生成損失一起聯合訓練。
構建視頻描述生成器的其他選擇包括 mPLUG-2、GIT、FrozenBiLM 等。
最後,為确保用戶提示與訓練數據中的描述性摘要格式對齊,Sora 執行了一個額外的提示擴展步驟,其中用 GPT-4V 将用戶輸入擴展為詳細的描述性提示。
視頻提示工程
提示工程是為了讓用戶引導 AI 模型生成與其意圖一致的内容。
以前關于提示工程的研究主要集中在 LLM 和文本生成影像的提示上,研究人員推測對視頻生成模型的視頻提示将會越來越受到關注。
提示工程的效果依賴于精準選擇用詞、明确細節,以及對這些細節如何影響模型輸出的深刻理解。比如下圖示例中,提示詞詳細描述了動作、環境、角色造型,甚至是期望的情緒和場景氛圍。
Sora 還能夠同時利用視覺和文本信息,将靜态影像轉換為動态的、叙事驅動的視頻。
除此外,Sora 還能夠向前或向後擴展視頻,通過提示可以指定擴展的方向、主題等。
在下圖 ( a ) 中,視頻提示指導 Sora 倒退擴展視頻。下圖 ( b ) 中,切換視頻場景時,模型需要通過 prompt 清楚理解所需視頻風格、氛圍、光線明暗變化等細節。圖 ( c ) 中,指導 Sora 連接視頻,在不同場景中對象間順暢過渡,也需要在提示工程上下功夫。
Sora 具有裡程碑式意義
在圈内外炸開鍋、被稱為是視頻生成 GPT-3、GPT-2 時刻,Sora 為何被認為具有裡程碑式意義?
透過計算機視覺(CV)領網域的 AI 生成模型發展史來看,Sora 的突破性或許就更加明了了。
過去十年,生成式 CV 模型的發展變換了多種路線。
深度學習革命前,傳統影像生成依賴于基于手工制作特征的紋理合成和紋理映射等方法。
而後生成對抗網絡(GAN)和變分自編碼器(VAE)、流模型( flow model)和擴散模型(diffusion model)相繼出現。
Transformer 架構出現格局發生巨變,先在 NLP 領網域成功應用,而後在 CV 領網域與視覺組件結合,催生了 ViT、Swin Transformer 等。
與此同時,擴散模型在影像和視頻生成領網域也取得了顯著進展。
2021 年以來,AI 多模态迎來變革。CLIP、Stable Diffusion 接連爆火。
重要的一點是,大語言模型領網域開始逐漸展示出規模化定律,ChatGPT、GPT-4 等展示出了一定的湧現能力。
不過視覺模型是否同樣符合規模化定律還不是很清晰。
而 Sora 作為一個大型視覺模型(LVM),它的問世與規模原則保持了一致,揭示了在文本 - 視頻生成中的幾種湧現能力。這一進展凸顯了 LVM 實現類似 LLM 那樣的進步的潛力。
根據 Sora 的技術報告,它是第一個确認展示出湧現能力的視覺模型,标志着計算機視覺領網域的一個重要裡程碑。
除了其湧現能力,正如上面提到的,Sora 在遵循指令、視覺提示工程以及視頻理解等方面的能力亦有重大進步。
比如,Sora 能生成具有多個角色、包含特定運動的復雜場景,不僅能理解用戶在提示中提出的要求,似乎還能理解簡單物體在物理世界中的存在方式。它還可以在單個視頻中創建多個鏡頭,并依靠對語言的深入理解準确地解釋提示詞,保留角色和視覺風格……
Sora 的五大應用前景及局限性
研究人員總結 Sora 具有五大亮點:提高模拟能力、促進創造力、推動教育創新、增強無障礙性、促進新興應用。
最後還總結了 Sora 的五大應用場景:
1、電影制作:Sora 的應用在電影制作領網域具有革命性意義,它能夠将文本腳本轉化為電影風格的視頻,降低了電影制作的門檻,使得個人創作者也能夠制作電影内容。
2、教育:在教育領網域,Sora 能夠将教學大綱或文本描述轉化為動态視頻内容,提高學生參與度和理解能力,為定制和激活教育材料提供了前所未有的機會。
3、遊戲:傳統遊戲開發常常受限于預渲染環境和腳本事件。擴散模型能夠實時生成動态、高保真度的視頻内容和真實的聲音,有望克服現有限制,為開發者提供創造有機響應玩家行動和遊戲事件的演變遊戲環境的工具。
4、醫療保健:在醫療領網域,它特别适合于識别身體内的動态異常,如早期細胞凋亡、皮膚病變進展和不規則的人體運動,對于早期疾病檢測和幹預策略至關重要。
5、機器人:在機器人技術中,Sora 可以增強機器人的視覺感知和決策能力。使它們能夠與環境互動,并以前所未有的復雜性和精度執行任務。
不過,盡管 Sora 在 AI 視頻生成領網域取得了顯著進步,但仍面臨一些挑戰。
解決生成内容中的偏見問題和防止產生有害視覺内容,确保 Sora 輸出的持續安全和無偏見是一項主要挑戰。
此外,局限性還包括以下幾點:
物理真實性的挑戰:Sora 在處理復雜場景的物理規律時存在不一致性,例如,吃餅幹不一定留下咬痕。
空間和時間的復雜性:Sora 有時難以準确理解空間布局和時間順序的指令,導致物體和角色的位置或安排出現混淆。
人機互動的限制:用戶很難對生成内容進行詳細修改或優化。
使用限制:OpenAI 尚未将 Sora 對公眾開放,在安全性、隐私保護和内容審查等方面,Sora 可能仍需進一步的改進和測試。且目前 Sora 只能生成長達一分鍾的視頻,限制了其在需要展示更長内容的應用場景中的使用。
更多細節,感興趣的家人們可以查閱原論文。
One More Thing
這篇綜述發布後引起了不少網友關注,有網友表示值得全文閱讀,但也有網友吐槽标題 "Sora:" 的設定極易引起誤會。
對此,疑似論文作者在小紅書做出回應:
論文鏈接:https://arxiv.org/abs/2402.17177
參考鏈接:https://twitter.com/_akhaliq/status/1762678991549354121