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