當全球還沉迷在如何用文字生成文字,以及文字生成圖片的時候,OpenAI就這麼掏出來了一個影片生成模型Sora。有關Sora的具體介紹和效果展示可以看我們昨天的文章《》。簡單來講,這是一個能夠根據文字指令或靜態影象生成長達1分鐘影片的擴散模型,而且影片中還包含精細複雜的場景、生動的角色表情以及複雜的鏡頭運動——它做到了目前市面上影片模型做不到的東西。
那麼Sora是如何做到的?在中,我們曾第一時間基於僅有的資訊給出了一個判 斷:
簡單粗暴的理解,就是語言能力足夠強大之後,它帶來的泛化能力直接可以學習影象影片資料和它體現出的模式,然後還可以直接用學習來的影象生成模型最能理解的方式,給這些利用了引擎等已有的強大而成熟的影片生成技術的視覺模型模組下指令,最終生成我們看到的逼真而強大的對物理世界體現出“理解”的影片。
而之後OpenAI釋出了Sora的技術報告:《Video generation models as world simulators》(影片生成模型作為世界模擬器),其中介紹的技術思路基本印證了我們上面的判斷。
接下來我們一起來基於有限但足夠資訊豐富的技術報告來解讀一下Sora背後的技術。
用大語言模型的方法理解影片
Sora的設計靈感來自於大語言模型,最主要的原因是大語言模型有一個核心功能是透過程式碼將多種文字形式進行了統一。而OpenAI為了訓練出Sora,他們的做法也是將各類視覺資料轉化為統一表示的方法。
不過在正式瞭解Sora之前,我們需要先科普一個概念——塊(patches)。有點類似於大語言模型中的token,塊指的是將影象或影片幀分割成的一系列小塊區域。這些塊是模型處理和理解原始資料的基本單元。
對於影片生成模型而言,塊不僅包含了區域性的空間資訊,還包含了時間維度上的連續變化資訊。模型可以透過學習patches之間的關係來捕捉運動、顏色變化等複雜視覺特徵,並基於此重建出新的影片序列。這樣的處理方式有助於模型理解和生成影片中的連貫動作和場景變化,從而實現高質量的影片內容生成。
OpenAI又在塊的基礎上,將其壓縮到低維度潛在空間,再將其分解為“時空塊”(spacetime patches)。
暈了是不是,別急,一個一個解釋。潛在空間是一個3年前出現的概念,是指一個高維資料透過某種數學變換(如編碼器或降維技術)後所對映到的低維空間,這個低維空間中的每個點通常對應於原始高維資料的一個潛在表示或抽象特徵向量。但是呢,最佳化強大的擴散模型往往需要消耗數百個GPU日的計算資源,並且由於其序列評估性質,推理成本較高。因此,本質上來講潛在空間,就是一個能夠在複雜性降低和細節保留之間達到近乎最優的平衡點,極大地提升了視覺保真度。
時空塊則是指從影片幀序列中提取出的、具有固定大小和形狀的空間-時間區域。相較於塊而言,時空塊強調了連續性,模型可以透過時空塊來觀察影片內容隨時間和空間的變化規律。
為了製造這些時空塊,OpenAI訓練了一個網路,用於降低視覺資料的維度,叫做影片壓縮網路。這個網路接受原始影片作為輸入,並輸出一個在時間和空間上都進行了壓縮的潛在表示。Sora在這個壓縮後的潛在空間中進行訓練和生成影片。同時,OpenAI還也訓練了一個相應的解碼器模型,用於將生成的潛在向量映射回畫素空間。
剛才咱們也聊了,說這個“塊”是非常接近token的,那麼這些塊的作用也應該和token差不太多。對於給定的壓縮輸入影片,OpenAi就直接提取一系列塊作為Transformer token使用,然後這些時空塊會被進一步編碼並傳遞給Transformer網路進行全域性自注意力學習。最後利用Transformer的強大能力來處理並生成具有不同屬性的影片內容。
這一方案同樣適用於影象,因為影象可以看作是僅有一幀的影片。基於塊的表示方法使得Sora能夠對不同解析度、時長和寬高比的影片和影象進行訓練。在推理階段,可以透過在一個適當大小的網格中排列隨機初始化的塊來控制生成影片的尺寸。
此外,在Sora模型的介紹頁面雖然提到的都是透過文字來生成影片,但Sora還能夠接受其他型別的輸入,比如影象或影片,以達到圖片生成影片、影片生成影片的效果。這一特性使得Sora能夠執行廣泛的影象和影片編輯任務——例如製作完美迴圈播放的影片、為靜態影象新增動畫效果、向前或向後延展影片時間軸等。
實現對物理世界的“湧現”
在長期的訓練中OpenAI發現sora模型逐漸擁有了一項新能力,叫做三維一致性。指的是Sora能夠生成動態視角的影片。同時隨著視角的移動和旋轉,人物及場景元素在三維空間中仍然保持一致的運動狀態。
這個可能對咱們人類來說沒什麼,但是對於人工智慧來說,還是相當厲害的。人工智慧理解三維物理世界,跟人類理解三維物理世界的方式不一樣,它採用了一種拓撲結構上的理解。注意,這裡的拓撲結構不是計算機的拓撲結構,而是拓撲學中的拓撲結構。拓撲結構是一個幾何或空間的抽象描述,用於描述集合中元素之間的連線方式和空間屬性,而不考慮具體的度量或形狀。它關注的是空間中點與點之間的連通關係以及空間的整體形狀,而不是具體尺寸或角度等細節。
除此之外,既然影片的視角發生變化,那麼相應的紋理對映也要改變。Sora的真實感非常強,換句話說,紋理對映在拓撲結構上就得非常準確。三維一致性能力使Sora能夠模擬來自現實世界中人物、動物和環境的某些方面。
一個讓人興奮中帶著點害怕的訊息是,這些屬性並非透過為3D、物體等新增明確的歸納偏置而產生——它們純粹是規模效應的現象。也就是說,是Sora自己根據訓練的內容,判斷出了現實世界中的一些物理客觀規律,某種程度上,人類如果僅僅是透過肉眼觀察,也很難達到這樣的境界。
還有一點,影片生成系統面臨的一項重大挑戰是在生成長影片時保持時間上的連貫性。而Sora也能夠有效地模擬短程和長程依賴關係。例如,即使人物、動物或物體被遮擋或離開畫面,Sora仍能保持這些元素存在於視線外,等到視角轉換到能看到他們的時候,再將這些內容展現出來。同樣的,它能夠在單個樣本中生成同一角色的多個鏡頭,並在整個影片中保持其外觀的一致性。
事實上這點倒沒有什麼,因為Sora是從transformer模型中孕育的,而transformer模型本身就能透過全域性自注意力機制等技術來實現很高的連續性。Sora只不過是從影片方面闡述了這種連續性而已。
對此,OpenAI得出了一個結論:影片生成模型是構建通用物理世界模擬器的一條有前景的道路。
Sora目前所展現的能力表明,它是能透過觀察和學習來了解物理規律。就Sora的這個理解力,說句實在的比我都強,老師在上面講課,我只能做到眼睛會了,腦子不會。
不過Sora當前作為一個模擬器存在許多侷限性。在OpenAI的主頁上,他們列舉了該模型的一些常見失效模式,比如在長時間取樣中可能出現的不連貫現象,以及物體無端出現等異常情況。從現有的結果來看,它還無法準確模擬許多基本互動的物理過程,像是玻璃破碎,以及其他型別的互動,比如吃食物。物體狀態的變化並不總是能夠得到正確的模擬,這說明很多現實世界的物理規則是沒有辦法透過現有的訓練來推斷的。
這些是這篇技術報告裡最核心的資訊,一如既往的,OpenAI在模型和實現細節方面繼續保持Close,不過,在報告中,OpenAI在不停提到“大力出奇跡”的效果:
關於湧現,它寫道:我們發現,當大規模地進行訓練時,影片模型展現出許多有趣的湧現能力。這些能力使得Sora能夠模擬現實世界中人類、動物和環境的某些方面。這些屬性並沒有任何針對3D、物體等的明確歸納偏見——它們純粹是規模效應的現象。
OpenAI顯然在把Sora描述成它一直堅持的Scaling law的又一次勝利——沒有多麼純粹原創的技術,很多技術成分早已存在,但它卻比所有人都更篤定的走了下去,並用足夠多的資源在巨大的規模上驗證了它。
歡迎加入這個星球,見證矽基時代發展↓