編輯:編輯部
【新智元導讀】LeCun的世界模型終于來了,可謂是衆望所歸。既然大模型已經學會了了解世界、像人一樣推理,是不是AGI也不遠了?
長久以來,LeCun理想中的AI,一直是通往人類水準的AI,為此他提出了「世界模型」的構想。
而最近,LeCun在公開演講中,再次批評了GPT大模型:根據機率生成自回歸的大模型,根本無法破除幻覺難題。甚至直接發出斷言:GPT模型活不過5年。
今天,LeCun終于離自己的夢想又近了一步!
Meta震撼釋出了一個「類人」的人工智能模型 I-JEPA,它可以比現有模型更準确地分析和完成缺失的圖像。
論文位址:https://arxiv.org/abs/2301.08243
劃重點:I-JEPA填充缺失片段時,用的就是有關世界的背景知識!而不是像其他模型那樣,僅僅通過檢視附近的像素。
距離提出「世界模型」概念一年多,眼看着LeCun就要實作自己的星辰大海了。
今天,訓練代碼和模型已經開源。論文将于下周在CVPR 2023發表。
LeCun的世界模型來了
即使是如今最先進的AI系統,也始終無法突破一些關鍵限制。
為了突破這層桎梏,Meta的首席AI科學家Yann LeCun提出了一種新的架構。
他的願景是,創造出一個機器,讓它能夠學習世界如何運作的内部模型,這樣它就可以更快速地學習,為完成複雜任務做出計劃,并且随時應對不熟悉的新情況。
今天Meta推出的圖像聯合嵌入預測架構I-JEPA模型,是史上第一個基于LeCun世界模型願景關鍵部分的AI模型。
I-JEPA就是通過建立外部世界的内部模型來學習。在補全圖像的過程中,它比較的是圖像的抽象表征,而不是比較像素本身。
在多個計算機視覺任務上,I-JEPA都表現出了強大的性能,并且比其他廣泛使用的CV模型計算效率高得多。
ImageNet線性評估:I-JEPA方法在預訓練期間不使用任何視覺資料增強來學習語義圖像表征,使用的計算量比其他方法更少
I-JEPA學習的表示形式可以用于許多不同的應用,而無需進行大量的微調。
比如,研究者在72小時内使用16個A100 GPU,就訓練出了一個632M參數的視覺Transformer模型。
在ImageNet上的low-shot分類任務上,它達到了SOTA,每個類降低到12個标記示例。
而其他方法通常需要2到10倍的GPU小時,并且使用相同數量的資料進行訓練時,錯誤率也更高。
通過自監督學習擷取常識
通常,人類隻要通過被動觀察,就能學習到有關世界的大量背景知識。
根據推測,似乎這種常識資訊正是實作智能行為的關鍵,比如擷取新概念、基礎和計劃的有效樣本。
将概念學習模組化為學習一個線性讀數
Meta在I-JEPA(以及更普遍的聯合嵌入預測架構JEPA模型)上的工作,正是基于這樣一個事實。
研究者嘗試的是,設計出一種學習算法,捕捉關于世界的常識背景知識,然後将其編碼為算法可以通路的數字表征。
為了達到足夠的效率,系統必須以自監督的方式學習這些表征——也就是說,直接從圖像或聲音等未标記的資料中學習,而不是從手動組合的标記資料集中學習。
在更高的層級上,JEPA旨在根據同一輸入(圖像或文本)的其他部分的表征,來預測輸入的部分表征。
因為它不涉及将圖像的多個視圖/增強的表征折疊到一個點上,是以JEPA有很大希望能夠避免在廣泛使用的方法(即基于不變性的預訓練)中出現的偏見和問題。
聯合嵌入方法可以避免表征崩潰
同時,通過在高度抽象的水準上預測表征,而不是直接預測像素值,JEPA有望能夠直接學習有用的表征,同時避免生成方法的局限性,正是基于這個原因,最近才産生了如此多令人興奮的大語言模型。
相比之下,一般的生成式模型是通過移除或扭曲輸入模型的部分内容來學習的。
例如,抹去照片的一部分,或者隐藏文本段落中的某些字,然後試着預測被破壞或丢失的像素或單詞。
但這種方法的一個顯著缺點是,盡管世界本身是不可預測的,模型卻試圖填補每一塊缺失的資訊。
因而,這種方法可能會犯人永遠不會犯的錯誤,因為它們會過于關注不相幹的細節,而不是捕捉更進階的可預測的概念。
一個衆所周知的例子就是,生成式模型很難生成正确的人手。
在自監督學習的通用架構中,系統會學習捕捉不同輸入之間的關系。
它的目标是,将高能量配置設定給不相容的輸入,将低能量配置設定給相容的輸入。
自監督學習的常見架構
這三種架構的差別是——
(a) 聯合嵌入(不變)架構會學習為相容的輸入x、y輸出相似的嵌入,為不相容的輸入輸出不相似的嵌入。
(b) 生成式架構會學習直接從相容的信号x重建信号y,使用以附加變量z(可能是潛變量)為條件的解碼器網絡,以促進重建。
(c) 聯合嵌入預測架構學習從相容信号x中預測信号y的嵌入,使用以附加變量z(可能是潛變量)為條件的預測網絡,來促進預測。
聯合嵌入預測架構
I-JEPA背後的原理是通過一種更類似于人類了解的抽象表征來預測缺失的資訊。
為了引導I-JEPA産生語義表征,其中一個核心設計便是多塊掩碼政策。
具體而言,團隊證明了預測包含語義資訊的大塊的重要性。這些大塊具有足夠大的規模,可以涵蓋重要的語義特征。
這種政策的優勢在于,它能夠減少不必要的細節,并提供更高層次的語義了解。
通過關注大塊的語義資訊,模型可以更好地抓住圖像或文本中的重要概念,進而實作更強大的預測能力。
基于圖像的聯合嵌入預測架構(I-JEPA)使用單個上下文塊來預測來自同一圖像的表征
其中,上下文編碼器是一個視覺Transformer(ViT),它隻處理可見的上下文patch。
預測器是一個窄的ViT,它接收上下文編碼器的輸出,并根據目标的位置token,來預測目标塊的表征。
目标表征對應于目标編碼器的輸出,其權重在每次疊代時,通過對上下文編碼器權重的指數移動平均進行更新。
在I-JEPA中,預測器可以被視為一個原始(且受限)的世界模型,它能夠利用已知的上下文資訊來推斷未知區域的内容。
這種能力使得模型能夠對靜态圖像進行推理,進而建立一種對圖像中的空間不确定性的了解。
與僅關注像素級細節的方法不同,I-JEPA能夠預測未見區域的高層次語義資訊,進而更好地捕捉圖像的語義内容。
預測器學習模組化世界語義的過程
對于每個圖像,藍色框之外的部分被編碼并作為上下文提供給預測器。而預測器則輸出了代表藍色框内預期内容的表征。
為了了解模型捕捉的内容,團隊訓練了一個随機解碼器,将I-JEPA預測的表征映射回像素空間,進而展示了在藍色框内進行預測時模型的輸出。
顯然,預測器能夠識别出應該填充部分的語義資訊(狗頭頂部、鳥的腿、狼的腿、建築物的另一側)。
給定一幅圖像,随機采樣4個目标塊,随機采樣一個範圍尺度的上下文塊,并删除任何重疊的目标塊。這種政策下,目标塊相對語義化,上下文塊資訊量大,但很稀疏,因而處理效率高
簡而言之,I-JEPA能夠學習對象部分的進階表征,而且也不會丢棄它們在圖像中的局部位置資訊。
更高的效率,更強的性能
在預訓練上,I-JEPA的計算更加高效。
首先,它不需要應用更加計算密集的資料增強來生成多個視圖,是以不會帶來額外的開銷。
其次,其中的目标編碼器隻需對圖像的一個視圖進行處理,而上下文編碼器也隻需對上下文塊進行處理。
實驗證明,I-JEPA能夠在不使用人工視圖增強的情況下,學習到強大的現成語義表征。
此外,在ImageNet-1K線性探測和半監督評估中,I-JEPA的表現也優于像素重建和token重建方法。
在預訓練過程中,以GPU小時數為函數的基準,在ImageNet-1k上進行線性評估的性能
在語義任務上,I-JEPA與之前依賴于人工資料進行增強的預訓練方法相比,表現更加出色。
與這些方法相比,I-JEPA在低級視覺任務(如物體計數和深度預測)上實作了更好的性能。
通過使用更簡單、更靈活的歸納偏置模型,I-JEPA可以用在更廣泛的任務上。
低樣本分類準确率:對ImageNet-1k進行半監督評估,使用1%的标簽(每個類别大約有12張帶标簽的圖像)
AI向人類智能更進了一步
I-JEPA展示了架構在學習現成圖像表征方面的潛力,而且還不需通過人工制作的知識作為額外的輔助。
推進JEPA以從更豐富的模态中學習更通用的世界模型,将會是一樣特别有意義的工作。
例如,從短的上下文中,對視訊進行長程的空間和時間預測,并将這些預測基于音頻或文本提示進行條件化。
I-JEPA預測器表征的可視化:第一列包含原始圖像,第二列包含上下文圖像,綠色邊界框包含來自預測器輸出解碼的生成模型的樣本。預測器正确捕捉了位置的不确定性,以正确的姿态産生了進階對象的部分,丢棄精确的低級細節和背景資訊
團隊表示,期待着将JEPA方法擴充到其他領域,如圖像-文本配對資料和視訊資料。
未來,JEPA模型會在視訊了解等任務中可能具有令人興奮的應用。而這也将是應用和擴充自監督方法來學習世界模型的重要一步。
預訓練模型
單GPU訓練
在單GPU設定中,實作從main.py開始。
例如,要使用配置configs/in1k_vith14_ep300.yaml在本地計算機上的GPU 0、1和2上運作I-JEPA預訓練,請輸入以下指令:
python main.py \
--fname configs/in1k_vith14_ep300.yaml \
--devices cuda:0 cuda:1 cuda:2
注意:ViT-H/14配置應在16個A100 80G顯示卡上運作,有效批大小為2048,才能複現結果。
多GPU訓練
在多GPU設定中,實作從main_distributed.py開始,除了解析配置檔案外,還允許指定有關分布式訓練的詳細資訊。
對于分布式訓練,需要使用流行的開源submitit工具,并提供SLURM叢集的示例。
例如,要使用configs/in1k_vith14_ep300.yaml中指定的預訓練實驗配置在16個A100 80G顯示卡上進行預訓練,請輸入以下指令:
python main_distributed.py \
--fname configs/in1k_vith14_ep300.yaml \
--folder $path_to_save_submitit_logs \
--partition $slurm_partition \
--nodes 2 --tasks-per-node 8 \
--time 1000
網友評論
對于LeCun領銜的這項新工作,網友們紛紛表示贊賞。
真是開創性的工作,吹爆了。自回歸模型的繼任者就在這裡!
我相信,聯合嵌入架構是人工智能的未來,而不是生成式的。但我就是很好奇,為什麼我們不進一步研究多模态(如ImageBind,而不僅僅是文本-圖像對),并且用像編碼器這樣的感覺器來代替VIT編碼器?
很簡潔的工作。在我的了解中,它類似于掩蔽自動編碼器,但在潛在空間中定義時會丢失功能,而不是輸入/像素空間。不過,如果要詳細看懂,我還需要更多細節。
我的大腦隻能看懂論文的10%,但如果I-JEPA真的能建立圖3中的目标圖像,那就太神奇了,最重要的是:它和AI生成的MMORPG是相關的!
這個項目即将開源,網友也對Meta對于開源社群的貢獻表示贊賞。
參考資料:
https://ai.facebook.com/blog/yann-lecun-ai-model-i-jepa/