化是漸化,變是頓變:一窺 OpenAI Sora 相關技術的演進
編者按: 近期,OpenAI 釋出通用視覺大模型 Sora ,這也是繼文字模型 ChatGPT 和圖片模型 Dall-E 之後,又一極具顛覆性的大模型產品,人們重新思考了生成式 AI 在視覺內容創作領域的應用前景,內容創作工作流有望被顛覆。
我們今天要為大家分享的這篇博文,作者認為 Sora 代表了 Transformer、NaViT、擴散模型等一系列視覺 AI 技術的融合創新,是邁向通用人工智慧的重要一步。
作者首先簡要介紹了 Sora 的功能,然後詳細梳理了支援 Sora 的各項核心技術內容,包括 Transformer、ViT、ViVit、MAE、NaViT、擴散模型、Latent Diffusion Models 以及最關鍵的 Diffusion Transformer。最後,作者預測 Sora 未來將進一步擴充應用範圍,進軍三維建模領域,並最終成為類似物理引擎的通用分析工具,為視覺內容創作甚至其他各個領域帶來革命性進步。Sora 的誕生預示著多模態 AI 將逐步走向成熟與普及,人類想象力的邊界將得到進一步擴充。
作者 | Ryota Kiuchi, Ph.D.
編譯 | 嶽揚
Photo by Kaushik Panchal on Unsplash
2024 年 2 月 15 日,曾在 2022 年底釋出 ChatGPT 驚豔世界的 OpenAI,再次憑藉 Sora 的亮相震驚世界。不可否認,這項能夠根據文字提示詞(text prompt)製作長達一分鐘影片的技術必將是邁向 AGI 的又一座里程碑。
在這篇博文中,我將根據 OpenAI 釋出的技術報告,介紹這項驚人技術背後的基本研究方法和研究內容。
順便提一下,“Sora”在日語中是“天空”的意思。雖然官方尚未公佈這一命名是何用意,但鑑於 OpenAI 釋出的推文中有一段以東京為主題的影片,因此可以推測這個猜測是比較合理的。
OpenAI 透過 X 向全世界展示 Sora
目錄
01 Sora 的簡單介紹
02 它背後的相關技術和相關研究有哪些?
03 這些研究基礎加上 OpenAI 的努力共同造就了 Sora
04 展望 Sora 的未來
01 Sora 的簡單介紹
Sora 是由 OpenAI 開發的一款 text-to-video (文生影片)轉換模型,其能力和應用範圍指引了現代 AI 技術的新發展方向。該模型不僅限於能夠生成幾秒鐘的影片,甚至可以建立長達一分鐘的影片,在保持高質量的同時忠實地滿足使用者的指令。它彷彿能夠將大家的夢想變成現實。
OpenAI Sora 生成的內容演示
根據現實世界生成複雜場景
Sora 可以理解 Prompt 中描述的元素在物理世界中存在形式和運作方式(exist and operate)。這使得該模型能夠準確地表現使用者期望在影片中出現的動作和行為。例如,它可以逼真地再現人奔跑的景象或自然現象的變化。此外,它還能精確再現多個角色的細節、動作型別以及主體和背景的具體細節。
以往,使用生成式人工智慧進行影片創作面臨著一個艱鉅挑戰,即如何在不同場景之間保持一致性和可再現性。這是因為, 在單獨生成每個場景或每一幀時,要完全理解之前的上下文和細節,並將其適當地繼承到下一個場景中是一項極其艱鉅的挑戰。 然而,該模型透過將 “對帶有視覺上下文的語言的深刻理解”和 “對 prompt 的準確解讀”相結合,保證了敘事的一致性。它還能從給定的 prompt 中捕捉人物的情緒和個性特徵,並將其描繪成影片中富有表現力的角色。
The post by Bill Peebles (OpenAI) via X
02 它背後的相關技術和相關研究有哪些?
Photo by Markus Spiske on Unsplash
Sora 的研究建立在先前影像資料生成模型研究的基礎上。之前的研究採用了多種方法,如遞迴網路(recurrent networks)、生成對抗網路(GANs)、自迴歸 Transformers 和擴散模型,但通常專注於某些單一類別的視覺資料、較短的影片或固定解析度的影片。Sora 超越了這些限制,並且在生成影片的持續時間、長寬比和尺寸上得到了顯著改進。在本節中,我將介紹支援這些改進的核心技術。
2.1 Transformer
Vaswani et al. (2017), “Attention is all you need.”
Transformer 是一種神經網路架構,它徹底改變了自然語言處理(NLP)領域。它由 Vaswani 等人於 2017 年首 次提出。 該模型極大地克服了傳統遞迴神經網路(RNN)和卷積神經網路(CNN)存在的短板,作為一種創新方法支援著當今的各種突破性技術。
Transformer 模型架構|Vaswani et al. (2017)
RNN 存在的問題:
-
長期依賴(long-term dependencies)問題:儘管 RNN 在理論上可以透過時間傳遞資訊,但在實踐中往往難以捕捉長時間跨度的依賴關係。
-
並行處理存在限制:由於 RNN 的每一步計算都依賴於前一步的輸出,因此必須進行順序處理(例如,按順序逐個處理文字中的單詞或句子),從而無法利用現代計算機體系結構提供的並行處理優勢。這導致在大型資料集上進行訓練效率低下。
CNN 存在的問題:
-
固定的感受野大小(receptive field size) :雖然 CNN 擅長提取區域性特徵,但其固定的感受野大小限制了其在整個上下文中捕捉長距離依賴關係(long-distance dependencies)的能力。
-
難以模擬自然語言的層次結構:使用 CNN 直接為語言的層次結構建模極具挑戰性,可能不足以實現深層次的上下文理解。
Transformer 的新特性:
-
注意力機制:使得模型能夠直接建模序列中任意位置之間的依賴關係,從而直接捕捉長距離依賴和廣泛的上下文。
-
能夠支援並行處理:由於輸入資料是作為一個整體一次性處理的,因此實現了計算的高度並行化,大大加快了在大型資料集上的訓練速度。
-
可變的感受野(receptive field) :注意力機制使得模型能夠根據需要動態調整“感受野”的大小。這意味著模型在處理某些任務或資料時,可以自然地將注意力集中在區域性資訊上,而在其他情況下,則可以考慮更廣泛的上下文。
2.2 Vision Transformer (ViT)
Dosovitskiy, et al. (2020), “An image is worth 16x16 words: Transformers for image recognition at scale.”
在這項研究中,顛覆自然語言處理(NLP)的 Transformer 原理被應用於影像識別中,為視覺模型開闢了新的方向。
Token 和 Patch
在原始的 Transformer 論文中,token 主要代表單詞或句子的一部分,分析這些 token 之間的關係可以深入理解句子的含義。在這項研究中,為了將 token 的概念應用到視覺資料中,影像被劃分成了 16x16 的小塊(patch),並且每個 patch 都被視為 Transformer 中的一個“token”。這種方法使得模型能夠學習到每個 patch 在整個影像中的關係,從而能夠基於此識別和理解整個影像。 它超越了傳統 CNN 模型在影像識別中使用的固定感受野大小的限制,能夠靈活捕捉影像中的任何位置關係。
ViT 模型概覽|Dosovitskiy, et al. (2020)
2.3 Video Vision Transformer (ViViT)
Arnab, et al. (2021), “Vivit: A video vision transformer.”
ViViT 進一步擴充套件了 Vision Transformer 的概念,將其應用到影片的多維資料上。影片資料更加複雜,因為它既包含靜態影像資訊(空間元素),又包含隨時間變化的動態資訊(時間元素)。 ViViT 將影片分解為 patch ,並將其視為 Transformer 模型中的 token。 引入 patch 後,ViViT 能夠同時捕捉影片中的靜態和動態元素,並對它們之間的複雜關係進行建模。
Tubelet (時空輸入量) 嵌入影像 |Arnab, et al. (2021)
2.4 Masked Autoencoders (MAE) 帶有掩碼的自編碼器
He, et al. (2022), “Masked autoencoders are scalable vision learners.”
這項研究透過使用一種被稱為帶有掩碼的自編碼器(Masked Autoencoder)的自監督預訓練方法,顯著改善了傳統上 與高維度和海量資訊相關的大型資料集訓練中存在的 計算成本高昂和低效率問題。
具體來說, 透過對輸入影像的部分內容進行掩碼處理,網路被訓練來預測隱藏部分的資訊,從而更有效地學習影像中的重要特徵和結構,並獲得豐富的視覺資料表徵。 這個過程使得資料的壓縮(compression )和表徵學習(representation learning)更加高效,降低了計算成本,並增強了不同型別的視覺資料以及視覺任務的多樣性。
這項研究的方法還與 BERT(Bidirectional Encoder Representations from Transformers)等語言模型的演變密切相關。雖然 BERT 透過 Masked Language Modeling(MLM)實現了對文字資料的深度上下文理解,但 He 等人則將類似的掩碼技術應用於視覺資料,實現了對影像的更深層次理解和表示。
Masked Autoencoders|He, et al. (2022)
2.5 Native Resolution Vision Transformer (NaViT)
Dehghani, et al. (2023), “Patch n’Pack: NaViT, a Vision Transformer for any Aspect Ratio and Resolution.”
本研究提出了 Native Resolution ViTransformer(NaViT),該模型旨在進一步擴充套件 Vision Transformer(ViT)的適用性,使其適用於任何長寬比或解析度的影像。
傳統 ViT 面臨的挑戰
Vision Transformer 引入了一種開創性的方法,透過將影像劃分為固定大小的 patches ,並將這些 patches 視為 tokens ,將 transformer 模型應用於影像識別任務。然而,這種方法假設模型針對特定解析度或長寬比進行了針對性的最佳化,因此對於不同尺寸或形狀的影像,需要對模型進行調整。這是一個比較大的限制,因為現實世界中的應用通常需要處理各種尺寸和長寬比的影像。
NaViT 的創新
NaViT 可高效處理任何長寬比或解析度的影像,允許它們直接輸入模型而無需事先調整。 Sora 也將這種靈活性應用於影片場景,透過無縫處理各種尺寸和形狀的影片和影像,大大提高了模型的靈活性和適應性。
Dehghani, et al. (2023)
2.6 Diffusion Models
Sohl-Dickstein, et al. (2015), “Deep unsupervised learning using nonequilibrium thermodynamics.”
除了 Transformer,擴散模型也是支援 Sora 的骨幹技術。這項研究為擴散模型奠定了理論基礎,擴散模型是一種利用非平衡熱力學的深度學習模型。擴散模型引入了擴散過程的概念,該過程從隨機噪聲(沒有任何模式(pattern)的資料)開始,逐漸去除噪聲,從而建立與實際影像或影片相似的資料。
例如,想象一下,一開始只有隨機的點,然後逐漸變成美麗風景或人物的影片。這種方法後來被應用於影像和聲音等複雜資料的生成,促進了高質量生成模型的發展。
去噪過程的影像|圖片來源:OpenAI
Ho et al. (2020), “Denoising diffusion probabilistic models.”
Nichol and Dhariwal (2021), “Improved denoising diffusion probabilistic models.”
在 Sohl-Dickstein 等人(2015)提出的理論框架基礎上,開發出了被稱為 Denoising Diffusion Probabilistic Models(DDPM)的實用資料生成模型。這種模型在高質量影像生成領域取得了特別顯著的成果,證明了擴散模型的有效性。
擴散模型對 Sora 的影響
通常情況下,要訓練機器學習模型,需要大量標註資料(比如,告訴模型“這是一張貓的影像”)。然而,擴散模型也可以從未被標註的資料中學習,使其能夠利用網際網路上大量的視覺內容來生成各種型別的影片。換句話說, Sora 可以透過觀察不同的影片和影像,學習到“什麼是一個正常影片的樣子”。
2.7 Latent Diffusion Models
Rombach, et al. (2022), “High-resolution image synthesis with latent diffusion models.”
這項研究為利用擴散模型(diffusion models)合成高解析度影像這一領域做出了重大貢獻。它提出了一種方法,與直接生成高解析度影像相比,該方法透過利用隱空間(latent space)中的擴散模型,在保證質量的前提下大大降低了計算成本。換句話說,它透過對在隱空間(一個容納影像壓縮表徵的低維空間)中表示的資料進行編碼並引入擴散過程,可以用更少的計算資源實現目標,而不是直接操作影像。
Sora 將這一技術應用於影片資料,將影片的時間+空間資料壓縮到較低維度的隱空間,然後將其分解為時空碎片(spatiotemporal patches)。這種高效的隱空間資料處理和生成能力,在使 Sora 能夠更快地生成更高質量的視覺內容方面發揮了至關重要的作用。
Image of visual encoding|Image Credit (OpenAI)
2.8 Diffusion Transformer (DiT)
Peebles and Xie. (2023), “Scalable diffusion models with transformers.”
這項研究可能是實現 Sora 最關鍵的部分。正如 OpenAI 釋出的技術報告所述,Sora 採用的不是普通的 transformer ,而是 diffusion transformer(DiT)。
Importantly, Sora is a diffusion transformer. (via OpenAI Sora technical report)
這項研究引入了一種新的模型, 用 Transformer 結構替代了擴散模型中常用的 U-net 元件。這種結構透過 Transformer 對 latent patches 的操作實現 Latent Diffusion Model。這種方法能夠更高效地處理 image patches,從而在有效利用計算資源的同時生成高質量的影像。與 2022 年 Stability AI 宣佈的 Stable Diffusion 不同,引入這種 Transformer 被認為有助於更自然地生成影片。
Diffusion Transformers 生成的影像|Peebles and Xie. (2023)
此外,值得注意的是,他們的驗證結果證明了 DiT 具備可擴充套件性,為 Sora 的實現做出了重大貢獻。具備可擴充套件性意味著模型的效能能夠隨著 Transformer 的深度/寬度(使模型更復雜)或輸入 token 數量的增加而提高。
Diffusion Transformers 的可擴充套件性|Peebles and Xie. (2023)
-
Gflops(計算效能):計算機計算速度的度量單位,相當於每秒十億次浮點運算。在本文中,網路複雜度(network complexity)透過 Gflops 進行衡量。
-
FID(Fréchet Inception Distance):這是影像生成的評估指標之一,數值越小表示準確性越高。它透過測量生成影像和真實影像的特徵向量之間的距離來定量評估生成影像的質量。
Kaplan 等人(2020)和 Brown 等人(2020)已經證實,在自然語言處理領域已經觀察到了這一點(譯者注:此處應當指的是“存在可擴充套件性”),這也是支援 ChatGPT 創新成功背後的關鍵特性。
Kaplan et al. (2020), “Scaling Laws for Neural Language Models.”
Brown, et al. (2020), “Language models are few-shot learners.”
與傳統的擴散模型(diffusion models)相比,由於 Transformer 的優勢, 它能以更低的計算成本生成高質量的影像,而這一顯著特點表明,使用更多的計算資源甚至可以生成更高質量的影像。Sora 將這項技術應用於影片生成。
影片生成的可擴充套件性|Image Credit (OpenAI)
03 這些研究基礎加上 OpenAI 的努力共同造就了 Sora
3.1 可變的影片時長、解析度、長寬比
主要得益於 NaViT,Sora 能夠生成 widescreen 1920x1080p 影片、vertical 1080x1920 影片以及介於兩者之間的所有影片。這意味著它可以為各種裝置型別建立任何解析度的視覺內容。
3.2 使用影像和影片作為 Prompt
目前,Sora 以 text-to-video 的格式實現影片生成,即透過文字提示詞給出指令生成影片。不過,從前面的研究中不難看出,也可以使用現有的圖片或影片作為輸入,而不僅僅是文字。這樣,Sora 就可以將影像製作成動畫,或將現有影片的過去或未來想象成視覺內容並輸出。
3.3 3D consistency
雖然不清楚上述研究如何直接參與其中,幫助實現這一特性。但 Sora 可以生成具有 dynamic camera motion 效果(譯者注:dynamic camera motion 表明影片不是靜止不動的,而是隨著時間變化而移動、旋轉或改變視角。)的影片。隨著“攝像機”的移動和旋轉,人物和場景元素能夠在三維空間中保持一致地移動。
04 展望 Sora 的未來
這篇博文詳細介紹了 OpenAI 用於生成影片的通用視覺模型 Sora 背後的技術。一旦 Sora 能夠向公眾開放,讓更多人使用,必將在全球範圍內產生更加重大的影響。
這一突破所帶來的影響預計將涵蓋影片創作的各個方面,但據預測, Sora 可能在影片領域紮根後繼續進軍三維建模領域。 屆時,不僅對影片創作者產生影響,就連虛擬空間(如元宇宙)中的視覺效果製作也能很快由人工智慧輕鬆生成。
下圖已經暗示了這種情況未來可能會出現:
Martin Nebelong 透過 X 釋出的與 Micael Rublof 產品相關的帖子
目前,Sora 被部分人認為“僅僅”是一個影片生成模型,但 Nvidia 的 Jim Fan 暗示它可能是一個資料驅動的物理引擎。 人工智慧有可能從大量真實世界的影片和(雖然沒有明確提到)需要考慮物理行為的影片(如虛幻引擎中的影片)中理解物理規律和現象。 如果是這樣,那麼在不久的將來出現 text-to-3D 模型的可能性也是非常高的。
Jim Fan’s intriguing post via X
Thanks for reading!
END
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70018536/viewspace-3007812/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 繫結變數窺測的演變變數
- JavaScript模組化的演變JavaScript
- SAP S/4 HANA新變化-CO技術變化
- 從技術到管理:思維轉變是關鍵
- Web開發技術的演變Web
- 頁面靜態化技術演進
- Web技術持續演進,英特爾助力其隨變而變Web
- OpenAI Sora 關鍵技術詳解:揭秘時空碎片 (Spacetime Patches) 技術OpenAISora
- 鄔賀銓:網路體系變革,演進式路線不再適用,顛覆性技術是關鍵
- 技術賦能機器人、應對氣候變化,這是一場開發者的對決機器人
- React和Vue中,是如何監聽變數變化的ReactVue變數
- 移動平臺的技術演變
- 前端模組化的演變過程前端
- 從鍊金術到化學--遊戲設計的演變(轉)遊戲設計
- 30 年內軟體技術的不變與變化 (轉)
- 人工智慧技術對傳統技術的演變人工智慧
- vue是如何監聽陣列變化的Vue陣列
- 小菜前端的技術棧是如何規劃和演進的前端
- 科普! API 是這麼演變而來的API
- 風變,用技術改變與世界的相處方式
- 熵簡技術談 | 私有化部署方案的演進熵
- 十年來感受的前端技術變化前端
- 變異測試是測試驅動開發(TDD)的演變
- iOS之移動中變化的cell(cell逐漸變大效果)iOS
- 隱私計算真的是一項變革性技術麼?
- 20年行業變革與技術演進,當下CDN如何為政企數字化轉型加速?行業
- Windows平臺記憶體防護與繞過技術的進化演變系列之(一)記憶體攻防發展概述Windows記憶體
- 五年技術進化論(二):有用的創新是怎樣的
- 使用final關鍵字修飾一個變數時,是引用不能變,還是引用的物件不能變?變數物件
- 用圖機器學習探索 A 股個股相關性變化機器學習
- 我們需要知道的、關於技術變化方面的五種思想
- 小程式:技術標準與生態的演變
- JavaScript是如何工作的:使用MutationObserver跟蹤DOM的變化JavaScriptServer
- OA系統的“四化”演變過程
- 【ACM數論】和式變換技術,也許是最好的講解之一ACM
- 雲端計算技術帶動行業變化行業
- 什麼是虛擬化技術,為什麼要虛擬化技術?薦
- 類變數的初始化時機總是處於例項變數的初始化時機之前!變數