8.1 Ha 與 Schmidhuber 的世界模型(2018)與 model-based 路線#
一、歷史背景:智慧體的兩難#
生成模型(第 6、7 章)學的是「畫出世界」,但智慧還有更根本的需求:在環境中行動。一個機器人或遊戲智慧體面對的核心難題是強化學習的老大難——樣本效率:
- model-free RL(DQN、PPO、A3C):直接學「狀態→動作」策略,不建模環境。每個任務需要數百萬至數十億步真實交互(Atari 需數天的模擬;真實機器人不可能這樣撞世界);
- 人類學開車只需十幾小時——因為人腦在腦內模擬:預測「如果我這樣打方向盤,車會怎麼走」,在想象中排練,而非用肉身試錯。
這就是 model-based RL 的動機:先學一個環境動力學模型 \(p(s_{t+1} \mid s_t, a_t)\) ,再利用它——或用它生成「想象」資料訓練策略,或在模型上做規劃(MPC/樹搜尋)。理論上優雅,實踐上曾經屢屢失敗,原因是複合誤差(compounding error):模型每步的小誤差在長程模擬中指數放大,想象 100 步後的世界面目全非。早期的 model-based RL(1990 年代的 Dyna、2016 年的 PILCO 等高斯過程方法)只在小規模低維任務上可行。
2018 年,David Ha 與 Jürgen Schmidhuber 發表《World Models》(NIPS 2018 workshop 版本為 2018.3),給出了一個優雅的答案:讓智慧體在自己的「夢」中學習——用三個分工的網路構建一個可想象的緊湊世界,並證明策略可以在純想象的環境中訓練還能遷移回真實環境。
二、三網路架構:V、M、C#
2.1 架構總覽#
論文以 VizDoom(射擊遊戲)與 CarRacing 為實驗台,架構由三個模塊組成,命名刻意對應認知科學(Brooks 的 subsumption 架構與認知神經科學的視覺皮層-海馬體-前額葉分工):
flowchart LR
subgraph V[視覺 V]
A[像素觀測 x_t] --> B[VAE 編碼器]
B --> C[潛向量 z_t<br/>壓縮的視覺表示]
end
subgraph M[記憶 M]
C --> D[MDN-RNN<br/>預測下一時刻]
D --> E[h_t 隱狀態 + P z_t+1|z_t,a_t,h_t]
end
subgraph C[控制器 C]
F[h_t 與 z_t 串接] --> G[線性層<br/>輸出動作 a_t]
end
C -->|a_t 送入環境與 M| M(1)V(Vision):VAE 編碼器
把高維像素 \(x_t\) (如 64×64×3)壓縮成低維潛向量 \(z_t\) (如 32 維)。這正是 6.1 節 VAE 的直接應用——V 模塊只學「當前看到了什麼」的緊湊表示,不管時間。
(2)M(Memory):MDN-RNN
一個混合密度網路 RNN,學環境動力學:
未來是多模態的(前方可能有敵人也可能沒有),所以輸出不是單一高斯而是混合高斯(MDN)。M 模塊承擔「記憶與預測」:整合歷史、預測未來觀測的機率分佈。
(3)C(Controller):線性策略
一個小小的線性層(CarRacing 任務只有約 1000 個參數)。策略刻意保持極簡,把全部學習壓力放在 V 與 M 的表示上——這是論文的核心設計哲學:好表示 + 簡策略 > 差表示 + 大策略。
2.2 在夢中訓練#
最著名的實驗:完全在 M 的想象中訓練策略。流程:先在真實環境收集軌跡訓練 V 與 M;然後斷開環境,從 M 內部採樣( \(z_{t+1} \sim P(z_{t+1}\mid z_t,a_t,h_t)\) )構成「夢境」,在夢境中用進化策略(CMA-ES)訓練 C;最後把 C 直接放回真實環境。結果:在 VizDoom 的「取藥避怪」任務中,純夢境訓練的策略直接遷移成功。這是「腦內排練」可行性的首次清晰演示。
2.3 世界模型的「幻覺」妙用#
一個精妙的發現:在夢境訓練中,M 對「未來」的預測是可以被策略利用的幻覺。VizDoom 實驗中故意讓 M 帶有隱藏變數(潛在溫度參數),策略學會在夢境中找到「利用模型不確定性」的行為——包括設法讓 M 的預測偏向我方(如「趴下時敵人變得不可見」)。這是 model-based RL 中模型偏差(model bias)問題的生動案例:策略會過度擬合模型的缺陷,而不是真實世界的規律。對策包括縮短想象步長、在真實與想象間交替訓練、以及讓模型保持不確定性估計。
三、model-based 路線的技術譜系#
《World Models》之後,model-based RL 在三條支線上成熟:
(1)Dreamer 系列(2019-2023, Hafner 等人)
把 Ha-Schmidhuber 的思想工程化:RSSM(遞迴狀態空間模型,確定隱狀態 + 隨機潛變數)學動力學,在隱空間想象 rollout,用 actor-critic 直接在想象軌跡上訓練策略。Dreamer v1→v2→v3 逐步證明:單一超參的 model-based 智慧體可以在 150+ 任務(Atari、物理控制、CS:GO)上與最強 model-free 打平甚至更強,且樣本效率高數十倍。DayDreamer(2022)在真實機器人上四小時學會行走——model-based 路線「樣本效率」承諾的兌現。
(2)MuZero(2019, DeepMind)
另一條路:不預測完整觀測(不畫圖像),只學三個抽象頭——表示 \(h\) 、動力學 \(g\) (預測隱狀態與獎勵)、預測 \(f\) (策略與價值),在隱空間做蒙特卡洛樹搜尋規劃。MuZero 在 Atari 與圍棋/西洋棋/將棋上同時達到超人水準。其洞察深刻:「值得預測的」不是像素而是價值相關的抽象——這是 JEPA 思想(8.2 節)在 RL 中的先聲。
(3)與生成模型的合流
2024 年後,世界模型與影片生成合流:Genie(2024,從無標註影片學「動作可控的隱空間世界模型」)、Genie 2、GameNGen 與 Oasis(用擴散模型「活現」整個遊戲)、以及互動式影片生成。DiT 規模化(7.1 節)使「把整個遊戲引擎學進生成模型」從構想變成產品。
四、世界模型的認知科學基礎#
《World Models》論文開篇就援引認知科學:人類心智模型(mental model)的概念——大腦對外部世界建立模擬器,感知只是「用模擬器預測感官輸入」,決策在模擬器中評估。Craik(1943)「大腦持有世界的小規模模型」、Helmholtz 的知覺即無意識推斷、以及現代預測編碼(predictive coding:大腦層層預測感官輸入、只傳播預測誤差)——這些思想給了「預測即智慧」路線以神經科學的合法性。世界模型範式因此不只是工程技巧,而是一個關於智慧本質的假說:理解 = 內建一個可運行的世界模擬器。
五、本節重點#
- model-based RL 的動機是樣本效率:在想象中排練,取代真實試錯;其歷史障礙是長程模擬的複合誤差。
- 《World Models》(2018)三模塊:V(VAE 潛表示)+ M(MDN-RNN 動力學)+ C(極簡線性策略);純夢境訓練的策略可遷移回真實環境。
- 策略會過度擬合世界模型的缺陷(模型偏差/幻覺利用)——「在模型中訓練」必須管理模型的不可靠性。
- 後續兩條主線:Dreamer 系列(隱空間想象 + actor-critic,真機器人四小時學走路)與 MuZero(不預測像素、只學價值相關抽象——JEPA 的先聲)。
- 2024 年後世界模型與影片生成合流(Genie、GameNGen),DiT 規模化使「學出遊戲引擎」成為產品;「理解 = 內建模擬器」是範式的哲學核心。
六、思考問題#
- C 模組刻意極簡,把學習壓力放在表示上。這對「表示學習 vs 策略學習哪個是智慧瓶頸」有何啟示?
- 複合誤差與大模型的幻覺有何共同結構?「每步小誤差的長程放大」是否也描述了語言模型的多步推理失敗?
- MuZero 不學像素、只學價值相關抽象。若要造一個「開放世界」的世界模型(無明確任務),該如何決定「什麼值得預測」?
- 預測編碼說大腦只傳播預測誤差。現代影片生成模型逐像素預測一切,這在「資訊效率」上與大腦差在哪裡?JEPA 會是答案嗎(見 8.2 節)?