譯者 | 布加迪
審校 | 重樓
上周AI target=_blank class=infotextkey>OpenAI團隊推出了Sora這一大規模視頻生成模型,展示了模擬物理世界基本方面的新功能。我關注文本生成視頻這個領域已有很長一段時間,我認為這個模型代表了質量方面的突飛猛進。
我在Reddit和Twitter上看到許多人在猜測這個模型如何工作,包括一些非主流的說法(Sora是否在名為Unreal的游戲引擎中運行?)。當這個突破性的AI工具發布時,很多人都想顯得自己似乎了解相關原理,或者甚至可能欺騙自己,認為基于幾個已發布的視頻樣本就能從微妙的線索略知一二。我發現這方面最糟糕的例子莫過于Jim Fan博士的帖子,他聲稱“Sora是一個數據驅動的物理引擎”,該帖子在Twitter上被瀏覽了大約400萬人次(Sora根本就不是一個數據驅動的物理引擎)。
幸運的是,OpenAI發布了一篇研究文章,解釋了其模型的架構。如果我們讀了這篇文章,實際上沒有必要猜測。下面我將介紹OpenAI團隊提供的技術,這樣我們就可以看懂Sora到底是如何工作的。
為什么Sora很了不起?
自人工智能領域問世以來,創建能夠建模、理解和模擬現實世界內在復雜性的人工智能一直是一項非常困難的挑戰。與靜態圖像不同,視頻本質上涉及呈現一段時間內的變化、3D空間、物理交互和對象連續性等等。過去的視頻生成模型很難處理不同的視頻持續時間、分辨率和相機角度。更重要的是,這些系統對物理、因果關系和物體持久性缺乏內在的“理解”,而這種理解是進行高保真的現實模擬所必需的。
OpenAI發布的視頻展示了一個比我們在這些領域見過的任何模型都更好的模型。坦白地說,這些視頻看起來很真實。比如說,一個人的頭會擋住標牌,然后越過標牌,而標牌上的文字會保持不變。動物即使在“空閑”時也會逼真地擺動翅膀。風中的花瓣將隨風搖擺。大多數視頻模型面對這種挑戰無能為力,結果往往是一些閃爍、抖動的畫面,觀眾很難厘清頭緒,但Sora不存在這個問題。它是如何做到的?
關于模型架構和訓練的技術細節
在研究模型和現有的帖子時,我的第一個主要的感悟是,這項研究工作建立在OpenAI的GPT等語言模型之前的工作基礎上。
- 視頻表征
研究人員介紹的一個關鍵創新是Sora如何在訓練過程中表示視頻。每一幀都被分成了許多小片塊(Patch),類似在GPT-4等大語言模型中將單詞分解成Token的方式。這種基于片塊的方法可以讓Sora使用長度、分辨率、方向和寬高比各異的視頻加以訓練。無論源視頻的原始形狀如何,從幀中提取的片塊都以一模一樣的方式加以處理。
圖1. OpenAI的研究文章稱:“大致來說,我們先將視頻壓縮到一個較低維度的潛在空間,然后將視頻表征分解為時空片塊,從而將視頻變成片塊。”
- 模型架構
Sora使用與其GPT模型密切相關的變換器(Transformer)架構來處理這些視頻塊Token的長序列。變換器含有時空自關注層,這些層在對文本、音頻和視頻等序列中的遠程依賴關系建模方面的顯示大有好處。
在訓練過程中,Sora的變換器模型將擴散過程早期的視頻塊Token序列作為輸入,預測原始的“去噪”Token。通過使用數百萬個不同的視頻進行訓練,Sora慢慢學會了自然視頻幀的模式和語義。
圖2. 來自OpenAI研究文章的去噪過程圖
- 文本調整
Sora也是有條件的,這意味著它可以根據文本提示可控地生成視頻。文本提示被嵌入,并作為附加上下文提供給模型,與當前視頻幀對應的片塊一起提供。
為了更好地將文本描述與實際的視頻內容聯系起來,研究人員為每個訓練視頻使用了高度描述性的字幕,這些字幕是從一個單獨的字幕模型生成的。這項技術幫助Sora更緊密地遵循文本提示。
- 推理過程
在推理過程中,Sora從純噪聲片塊開始,并在50多個擴散步驟中反復去噪,直到出現連貫流暢的視頻。通過提供不同的文本提示,Sora就能生成與字幕適當匹配的不同視頻。
基于片塊的視頻表征允許Sora在測試時處理任何分辨率、持續時間和方向,只需在開始擴散過程之前將片塊排列成所需的形狀就行。
功能和限制
通過將訓練數據擴展到數百萬個視頻片段的規模,并使用大量的計算資源,OpenAI團隊發現了一些非常有意思的突現行為:
- Sora不僅僅是文本生成視頻,還可以從輸入圖像或其他視頻生成視頻。
- Sora似乎對場景有一種強烈的3D“理解”,人物和對象以一種連續的方式逼真地移動。這純粹源自數據規模,無需任何顯式的3D建模或圖形代碼。
- 模型顯示對象持久性,常常跟蹤實體和對象,即使它們暫時離開幀或被遮擋時也跟蹤。
- Sora展示了模擬一些基本的現實交互的能力——比如說,一個數字畫家在畫布上留下的筆觸在一段時間后精確地流傳下來。
- 它還可以令人信服地生成復雜的虛擬世界和游戲,比如《我的世界》。Sora可以在渲染場景的同時控制在這個生成的環境中移動的代理。
- 隨著額外的算力和數據的增加,視頻質量、連貫性和提示遵守大大提高,這表明了它進一步得益于規模。
然而,Sora依然顯示出明顯的缺陷和局限性:
- 它常常難以為比較復雜的現實世界物理交互、動態和因果關系準確地建模。簡單的物理和對象屬性仍然具有挑戰性。比如說,一個玻璃杯被打翻并溢出液體,顯示玻璃杯融化到桌子上,液體從玻璃杯的側面流淌下來,卻沒有任何打碎的效果。
- 模型往往自發地生成意想不到的對象或實體,在擁擠或混亂的場景中尤其如此。
- Sora很容易混淆左右,或者當許多行動發生時,一段時間內事件或活動的精確順序很容易打亂。
- 依然很難逼真地模擬多個角色之間的自然互動和環境。比如說,它會生成一個人在跑步機上走錯方向的視頻。
未來發展方向
盡管一直存在這些缺陷,但Sora預示了未來的潛力,因為研究人員繼續擴大視頻生成模型的規模。有了足夠的數據和算力,視頻變換器可能會開始對現實世界的物理、因果關系和物體持久性有更深刻的理解。結合語言理解能力,這有望通過基于視頻的現實世界模擬為訓練AI系統開辟新思路。
Sora朝著這個目標邁出了頭幾步。雖然需要做更多的工作來克服它的許多弱點,但它所演示的新興功能彰顯了這一研究方向的前景。使用大量不同的視頻數據集訓練的巨型變換器最終可能會生成AI系統,能夠與我們的物理環境的內在復雜性、豐富度和深度進行智能交互和理解。
結論
因此,與毫無根據的說法相反,Sora不是通過游戲引擎或“數據驅動的物理引擎”來運行,而是通過一種變換器架構來運行,這種架構憑借視頻“片塊”來運行,尤如GPT-4憑借文本Token來運行。它擅長創建表明理解深度、對象持久性和自然動態的視頻。
該模型的關鍵創新在于將視頻幀作為片塊序列來處理,類似語言模型中的單詞Token,使它能夠有效地管理不同的視頻方面。這種方法結合文本條件生成,使Sora能夠根據文本提示生成與上下文相關、視覺上連貫的視頻。
盡管擁有突破性的功能,Sora仍然有局限性,比如為復雜的交互建模和動態場景保持連貫性。這些局限性恰恰表明了需要進一步研究,但無損于其在推進視頻生成技術方面取得的重大成就。
我希望Sora能盡快發布給人們試用,因為我已經想到了關于這種技術的眾多新穎的應用,不妨讓我們拭目以待。
原文標題:How Sora (actually) works,作者:Mike Young