世界模型 World Models部分翻譯

本文對論文《world Models》的前半部分進行了翻譯,看過前半部分基本就了解結構了,我個人認為Schmidhuber還是一如既往地喜歡把小東西往宏大了說,當然也多虧了他起的題目,很多人對世界模型產生了濃厚的興趣。但本文的確不能說在世界模型方面有了飛躍的進步,只是將隱變量配合LSTM當作了世界模型,所以我不打算翻譯后半部分了。雖然現在大家對于時序問題還沒有太好的辦法,很多時候不得不靠LSTM,但LSTM絕對不是未來。

世界模型 World Models
David Ha, Jurgen Schmidhuber

摘要

我們研究在流行的強化學習環境中構建生成神經網絡。以監督的方式可以快速訓練我們的世界模型學會環境的壓縮空間和時間表征。將從世界模型中抽取的特征作為智能體的輸入,我們能訓練出一個非常緊湊簡單的指定任務解決策略。我們也能訓練智能體完全沉浸在自己的幻覺中基于它的世界模型做夢,并將策略遷移回實際環境中。

?1. 介紹

人類會基于其有限的感覺輸入構建關于世界的心靈模型。我們所作的決策和采取的行動都是基于這個內在模型的。系統動力學之父Jay Wright Forrester這樣描述心靈模型:環繞我們的世界景象不過是承載于我們腦中的模型而已。無人能在腦中想象整個世界,政府或國家。他只有篩選過的概念、概念間的關系和使用它們去表征真實系統(Forrester, 1971)。

為了處理每時每刻都流入我們生活的海量信息,大腦要學會抽象表征信息的空間和時間特性。由此我們可以觀察一個場景,記住一個抽象的描述(Cheang & Tsao, 2017; Quiroga et al., 2005)。各項證據表明我們在任何時刻的感知都在大腦基于內在模型對未來的預測的管控之下(Nortmann et al., 2015; Gerrit et al., 2013)。理解腦中預測模型的一種方式是,模型不一定只是預測未來,而是在給定當前運動預測未來的感受數據(Keller et al., 2012; Leinweber et al., 2017)。我們可以本能地在預測模型上進行推演,一旦發生危險時,可以快速反應(Mobbs et al., 2015),而不需要有意識地進行行動計劃。

以棒球為例。擊球手只有毫秒級的時間來決定如何揮動球棒,時間要短于它大腦接受到相關視覺信號的時間。我們之所以有這種擊打速度為100mph棒球的能力,就是因為我們可以本能地預測球將在何時到達哪里。對于專業選手來說,這一切都發生在潛意識。按照內在模型的預測肌肉可以反射性地在恰當時間和位置揮動球棒(Gerrit et al., 2013)。他們可以迅速地根據自己對未來的預測采取行動,而不需要有意識地推演未來可能的情景來制定運動計劃(Hirshon, 2013)。

許多強化學習問題(Kaelbling et al., 1996; Sutton & Barto, 1998; Wiering & van Otterlo, 2012)中,人造智能體也會受益于對過去和現在狀態的良好表征,以及擁有一個較好的未來預測模型 (Werbos, 1987; Silver, 2017),尤其是諸如RNN這樣具有通用目的的強大的預測模型(Schmidhuber, 1990a;b; 1991a;譯者注:又犯病了)。

大型RNN是高強度表達模型,可以學會數據豐富的空間和時間表征。然而很多模型無關的RL方法卻常常使用參數很少的小神經網絡。RL算法也經常面臨授信瓶頸問題,這又使得傳統RL算法難以應用大規模的模型,因而導致實踐中都采用較小的網絡,進行更快的迭代以便在訓練中獲得一個好的策略。

理想地,我們希望能有效地訓練基于大型RNN的智能體。反向傳播算法(Linnainmaa, 1970; Kelley, 1960; Werbos, 1982)可以用來有效地訓練大型神經網絡。本文中,我們訓練一個大型網絡來處理RL任務,將智能體分開成一個大型世界模型和一個小型控制器模型。我們首先訓練一個大型神經網絡以無監督的方式來學習智能體周圍環境的世界模型,然后訓練小型控制器模型利用該世界模型完成任務。小型控制器讓訓練算法更加關注于小搜索空間內的授信問題,而不會犧牲大型世界模型的規模和表達能力。我們發現智能體透過世界模型看世界,可以學到非常簡潔的策略來完成任務。

當前有大量的基于模型的強化學習研究,但本文并不是一個綜述。本文的目標是從1990-2015的一系列論文中提煉幾個關鍵概念,主要是關于基于RNN的世界模型和控制器(Schmidhuber, 1990a;b; 1991a; 1990c; 2015a)。我們也會討論一些其他的工作,都有類似的想法,即學習世界模型和訓練智能體利用該模型。

本文提出一個簡單的框架,實驗性地展示這些論文中的一些關鍵概念,同時針對不同RL環境應用這些概念提出了一些建議。我們在“學會思考:結合RL控制器和RNN世界模型的算法信息理論”一文中描述我們的方法論和實驗時也應用了類似的術語和符號。

2 智能體模型

受認知系統啟發,我們提出了一個簡單的模型。模型中,智能體擁有一個視覺感受器組件,可以看到一小部分表征編碼,還有一個記憶組件基于歷史信息預測未來的編碼,最后還有一個決策組件只基于視覺和記憶組件創建的表征做出動作選擇。

2.1 VAE模型 (模型V)

每個時間步上環境提供的觀察數據都是非常高維的。通常是一幅2維圖像,屬于視頻序列的一部分。模型V的角色是學會輸入幀的抽象壓縮表征。我們使用一個簡單的變分自編碼器(Kingma & Welling, 2013; Rezende et al., 2014)作為我們的模型V,將每幅圖像都轉成一個很小的隱變量向量z。

2.2 MDN-RNN模型(模型M)

模型V的作用是壓縮每一幀的輸入,但我們還需要壓縮跨越時間的所有幀輸入。所以模型M的目的是預測未來。模型M是預測模型V的隱變量z未來的輸出。由于現實環境的諸多復雜隨機性,我們訓練RNN的輸出為一個概率密度函數p(z),而不是z的確定預測。

我們的方法中,p(z)逼近于一個混合高斯分布,RNN被訓練成在給定當前和過去信息的情況下,輸出下一幀隱變量\(z_{t+1}\)的概率分布。特別低,RNN建模了\(P(z_{t+1}|a_t,z_t,h_t)\),其中\(a_t\)為時刻t采取的動作,\(h_t\)為時刻上RNN的隱藏狀態。采樣時,我們調整一個溫度參數\(\tau\)來控制模型不確定性,諸如(Ha & Eck, 2017)中做的,我們發現調整\(\tau\)對于后面訓練控制器非常有用。這個方法可以看作是結合了RNN(MDN-RNN)(Graves, 2013; Ha, 2017a)的混合密度網絡(Mixture Density Network, Bishop, 1994),被應用在序列生成問題,比如生成手寫體(Graves, 2013)和簡筆畫(Ha & Eck, 2017)。

2.3. 控制器模型(模型C)

控制器模型負責在一看到環境時就要決定采取什么樣的動作才能最大化智能體的預期收益。實驗中,我們故意讓模型C盡量的小,并和V、M分離開訓練,這樣可以把智能體的復雜性都放到世界模型中(模型V和模型M)。

模型C就是一個簡單的一層線性模型,將\(z_t\)和\(h_t\)映射成每個時間步的動作:

\(
a_t=W_c[z_th_t]+b_c (1)
\)

該線性模型,\(W_c\)和\(b_c\)分別是權重矩陣和偏移向量,將串聯到一起的\([z_th_t]\)映射成動作向量\(a_t\)。

2.4 將模型V, M和C放在一起

下面這個流程圖說明了模型V、M和C是如何與環境交互的。

下面是我們智能體模型在openAI Gym(Brockman et al., 2016)環境下的偽代碼:

在給定的控制器C上運行這個函數會在一輪次后返回一個累計獎勵值。控制器C的最小化設計帶來了極大的現實好處。深度學習的優勢是可以高效地訓練大型復雜模型,而我們只需要定義一個精心設計的可微分損失函數。模型V和M的設計都使其可以在現在GPU加速器上借助反向傳播算法進行高效訓練,所以我們希望將模型的大部分復雜性包括大部分模型參數留在V和M中。線性模型C的參數數量則是相對而言是非常小的。這種選擇令我們可以探索更多C的訓練方式——比如,使用進化策略(evolution strategies, ES, Rechenberg, 1973; Schwefel, 1977)來解決更多面臨授信困難的富有挑戰性的RL任務。

為了優化C的參數,我們選擇了協方差矩陣適應進化策略(Covariance Matrix Adaptation Evolution Strategy, CMA-ES; Hansen, 2016; Hansen & Ostermeier, 2001)作為優化算法,原因是這個算法對高達幾千個參數的解空間效果很好。參數的進化是在單臺多CPU的機器上并行執行多輪環境rollout(輪次)。對于模型、訓練過程和環境的更多特定信息,可以參見附錄部分。

3. 賽車實驗

【翻譯略】

4. VizDoom實驗

【翻譯略】

5. 迭代訓練過程

【翻譯略】

6. 相關工作

【翻譯略】

7. 討論

【翻譯略】

 

网上买快乐飞艇是合法的吗