国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運營 > 8.1.模型是什么?

8.1.模型是什么?

時間:2023-04-21 06:57:01 | 來源:網(wǎng)站運營

時間:2023-04-21 06:57:01 來源:網(wǎng)站運營

8.1.模型是什么?:Model-Based RL,顧名思義即“基于模型的強化學習”;Model-Free RL,即“無模型的強化學習”,二者的核心差別就在于有沒有Model。因此,Model究竟是什么便是MBRL中第一個,也是最重要的一個問題。在本章中,我們首先要說明模型是什么,其次要說明模型能用來做什么。然后,我們便可以基本理解MBRL的思想。因此,本節(jié)在本章之中格外重要。

在機器學習、深度學習領域,“模型”的概念非常廣。當我們面對一個貓狗分類的監(jiān)督學習問題時,我們完全可以說自己訓練了一個CNN的模型。如此看來,在MFRL中,我們也要訓練用來表示價值或策略的神經(jīng)網(wǎng)絡,也能稱得上是一個“模型”,那么,這怎么能叫做“無模型的算法”呢?

必須要強調(diào),MBRL中的“模型”指的是為環(huán)境,也就是我們要求解的MDP本身進行建模。我們說過,MDP可以由六元組(S,A,P,R,γ,Done)定義。當我們說“為環(huán)境建?!钡臅r候,主要指的是“狀態(tài)轉(zhuǎn)移關系”P以及“獎勵函數(shù)”R。在2020年ICML大會上關于MBRL綜述中,給出了如下的說明:

顯然,根據(jù)MDP的具體性質(zhì),環(huán)境轉(zhuǎn)移關系是否隨機、是否時齊,動作和狀態(tài)分別是連續(xù)的還是離散的,我們分別可以定義出不同的模型形式。

1、各種模型及其基本用法

比如,當S和A都是離散變量(即總數(shù)有限的名義變量)時,我們可以將真實轉(zhuǎn)移關系$P_{s,s’}^a$定義為一個|S|×|A|×|S|大小的表格(因此我們也將其稱之為Tabular MDP),將真實的獎勵函數(shù)$R_{s,a}$定義為一個|S|×|A|的表格。按強化學習的設定,我們不知道真實的表格。我們?yōu)榄h(huán)境建模 P_{s,s'}^a 也是一個表格的形式。若我們和真實環(huán)境交互、得到了許多環(huán)境轉(zhuǎn)移數(shù)據(jù)(s, a, s’)時,我們便可以按如下方法估計這個轉(zhuǎn)移關系表格:

用真實數(shù)據(jù)估計Tabular MDP模型
在上圖中,我們用符號M(s’|s, a)代表在狀態(tài)s采取動作a下一個狀態(tài)轉(zhuǎn)移到s’的概率(即前文中習慣的Pss’),hat代表這是我們用數(shù)據(jù)估計出來的;C[s, a, s’]代表我們獲得數(shù)據(jù)中(s,a,s’)的Count,即計數(shù);Sum[s,a]代表我們在s狀態(tài)采取a所有數(shù)據(jù)中獲得獎勵R的總和。我們顯然可以看出,這個基于計數(shù)與平均值的算法是一個對真實環(huán)境的極大似然估計,并且它是無偏估計。換言之,當我們可以產(chǎn)生充分多數(shù)據(jù)的時候,則我們估計的 /hat{M}/hat{R} 可以收斂于真實的M與P。

又比如,當狀態(tài)與動作都是連續(xù)變量,且環(huán)境是一個確定性的環(huán)境時,我們可以定義真實轉(zhuǎn)移關系是一個S×A→S的函數(shù),用一個線性模型/神經(jīng)網(wǎng)絡去擬合它。與一般用線性回歸/神經(jīng)網(wǎng)絡解決監(jiān)督學習中的回歸問題類似,我們可以從環(huán)境中收集大量(s,a,s’)數(shù)據(jù),以均方誤差(s’ – k1s-k2a-b)^2或(s’ – f(s,a))^2為損失函數(shù)擬合線性模型/訓練神經(jīng)網(wǎng)絡??梢韵胂螅斘覀儾蓸映浞侄鄶?shù)據(jù)、訓練了充分多次之后,線性模型(k1s+k2a+b)/神經(jīng)網(wǎng)絡f(s,a)便可以很好地擬合出環(huán)境轉(zhuǎn)移關系,對給定的(s,a)很好地預測出s’。

關于到底選擇線性模型還是神經(jīng)網(wǎng)絡來擬合動作與狀態(tài)都是連續(xù)的MDP,我們可以進行一個簡單的辨析:顯然,神經(jīng)網(wǎng)絡的擬合能力更強、能夠擬合更復雜的現(xiàn)實環(huán)境,但是,神經(jīng)網(wǎng)絡是一個黑盒模型。當我們訓練好神經(jīng)網(wǎng)絡之后,基本只能由輸入(s,a)獲得輸出s’,而很難利用訓練好的參數(shù)w。我們將這種使用模型的方式稱為“黑盒模型”;相反,線性模型的擬合能力較差,在較復雜的MDP上會有較大的誤差。但它是一個可解釋的“白盒模型”。當我們有了線性模型的系數(shù)之后,我們可以高效地利用它求解最優(yōu)策略(例如我們在第四章介紹過的LQR控制器中,最優(yōu)策略即ut = Kt xt,其中K是由線性環(huán)境的系數(shù)表示出來的)。我們將這種使用模型的方式稱為“白盒模型”。

還比如說,當狀態(tài)與動作都是連續(xù)變量,且環(huán)境具有隨機性的時候,我們可以用一個高斯過程GP去擬合它。對于給定的當前狀態(tài)與動作,GP模型可以輸出一個多維正態(tài)分布,作為下一個狀態(tài)的預測。由于GP模型中我們可以擬合出詳細的概率表達式,所以它當然可以作為“白盒模型”使用。在經(jīng)典的MBRL算法PILCO(Probabilistic Inference for Learning COntrol )中,我們就采用GP為環(huán)境建模,以此輔助價值函數(shù)的擬合以及策略提升。

PILCO算法用高斯過程為環(huán)境建模
事實上,我們對模型的使用方式不但與模型形式(表格型、線性函數(shù)、神經(jīng)網(wǎng)絡)也和模型是否可解釋(黑盒模型、白盒模型)有緊密的關系:

首先,MBRL中我們可以用模型來進行Decision-Time Planning。一般而言,能用來實時決策的模型大多是可解釋的“白盒模型”,比如局部線性模型等;但是,這是與用價值函數(shù)或用策略決策完全不同的、獨屬于MBRL的一種決策方式,與MFRL相差甚遠,所以我們會將其專門留在下一個章節(jié)中。

本章中,我們所講的算法都像是在MFRL的基礎上額外增加一個模型。模型的用法主要可以分為“黑盒模型”與“白盒模型”。其中“黑盒模型”即用來增加數(shù)據(jù)、提升數(shù)據(jù)效率,“白盒模型”則可以直接利用其表達式系數(shù),求導等等;本章涉及的內(nèi)容中,無論是“黑盒模型”還是“白盒模型”,其形式都很像是在MFRL算法中將某個使用真實數(shù)據(jù)的步驟給替換為使用模型產(chǎn)生的模擬數(shù)據(jù)或是直接使用模型表達式的值。因為其與MFRL的思想銜接比較緊密、比較容易理解,所以我們將在8.2模型是使用方式中首先講到這部分內(nèi)容。

總得來說,模型的使用方式基本可以分為如下三類:實時規(guī)劃(全新的決策方式)、黑盒模型、白盒模型:

MBRL中模型作用的主要分類
上圖是來自于2022年一篇MBRL的綜述文章《A SURVEY ON MODEL-BASED REINFORCEMENT LEARNING》。其中列舉的“模型作用”除了我們說的三類還包括Value-aware Modeling Learning(簡稱為VAML)。其含義是,前面所說的方法都是先用數(shù)據(jù)擬合一個模型,再替換現(xiàn)有MFRL算法中的步驟,而VAML則將模型的學習與算法目標結合得更緊密。比方說,如果模型是用來給價值函數(shù)傳遞梯度的,則模型的學習過程中也可以反過來考慮價值函數(shù)的梯度,這就是Value-aware Modeling Learning的意思。筆者認為,這仍然是將模型當成“黑盒模型”或“白盒模型”使用,屬于一種模型的學習方式,而非模型的使用方式。因此我們將其放在8.3模型的學習方式中講。

讓我們總結一下本小結的內(nèi)容:

首先,MBRL中的“模型”指的是擬合環(huán)境本身的模型,主要就是擬合狀態(tài)-動作轉(zhuǎn)移函數(shù)f(s,a)或Pss’^a以及獎勵函數(shù)R(s,a)。

其次,因為模型是為MDP環(huán)境建模,所以模型的分類方式與MDP的分類方式是高度重合的。比如MDP中狀態(tài)與動作是連續(xù)變量還是分類變量,是否具有隨機性,是否是時齊的,這都會直接決定我們選用何種形式的模型;當然,與簡單為MDP定性不同,我們還要選擇出具體的模型。

最后,由于模型有具體的形式,所以我們可以根據(jù)其形式是否簡單、是否具有可解釋性將其分為“黑盒模型”或“白盒模型”。這種定性與我們能夠如何使用它是息息相關的。

2、更多形式的模型及變體

在大部分經(jīng)典的MBRL算法中,我們都是為環(huán)境轉(zhuǎn)移關系P與獎勵函數(shù)R建模。但是除此以外,近年MBRL中還發(fā)展出許多其他的建模方式,其建模的對象并不是MDP定義中直接有的P與R,并且就理論而言它往往可以由MDP中其他部分算出來,顯得有些“多此一舉”。但是,實踐證明這些建模方式對于算法的性能產(chǎn)生重要的提升。

比如,多步預測模型(multi-step model)。

根據(jù)MDP的馬氏性,我們只需要為一步轉(zhuǎn)移關系建?!绻覀円A測多步建模關系,則我們只需要把上一步的輸出再次作為輸入,獲得下一步的輸出,以此類推,便可以獲得多步的預測(按馬氏性定義,多步的情況本來就是由概率式串聯(lián)而得)。但是,模型與真實環(huán)境總是有所誤差。在預測多步時,如果將有誤差的一步預測值再次輸入模型,可能會得到誤差更大的兩步誤差。在多步過程中,這些誤差會相互串聯(lián),最后導致巨大的誤差。

為此,論文《Combating the compounding-error problem with a multi-step model》提出了多步模型。它以當前狀態(tài)st與接下來多步動作(at, at+1, at+2,…)為輸出,目標是預測未來多步的狀態(tài)(st+1, st+2, st+3, …)。一般的一步模型擬合環(huán)境時采用類似于監(jiān)督學習的損失函數(shù),而多步模型則針對多步的特點設計了特殊的損失函數(shù);在進行多步預測的時候,它也不會只以自身輸出的一步預測為輸入,而是會綜合更多信息以規(guī)避各步誤差串聯(lián)導致的巨大誤差。雖然它好像是沒有利用MDP的馬氏性,但實踐證明其多步預測的誤差往往更小。

比如,軌跡數(shù)據(jù)的生成模型。

在強化學習的定義中,環(huán)境指的是可以不斷交互產(chǎn)生數(shù)據(jù)的。即它維護一個當前狀態(tài)s,而當你輸入一個動作時a,它改變自身狀態(tài)并輸出(s’, r, Done)以及一些額外信息info。但是,倘若我們對于模型的使用方式是“黑盒模型”,即只是需要用它來以更低的成本產(chǎn)生更多的數(shù)據(jù),那事實上我們不需要真正可以交互的模型,只需要模型能為我們產(chǎn)生可以利用的訓練數(shù)據(jù)即可。我們一般將這種“模型”稱為“模擬器”(即simulator)。打個簡單的比方:“環(huán)境”是一個游戲,一般MBRL中的模型是近似這個游戲建立的,是一個模擬的游戲,你可以交互地操作、玩樂;而simulator則是一個游戲數(shù)據(jù)的生成器。你只能用它生成一段又一段的游戲視頻,就像是看游戲主播的演示來學習技術,卻不能真正動手體驗這個游戲。對于“黑盒模型”來說,這種方式更加簡單直接,因此其生成的多步軌跡數(shù)據(jù)也更加準確。

當然我們也要注意,不同策略的軌跡分布應該是不同的。一般的simulator要接受策略作為輸入,再輸出該策略與環(huán)境共同決定的模擬數(shù)據(jù)。因此我們要根據(jù)算法是on-policy還是off-policy來確定simulator的定義與用法。

比如,適用于復雜高維問題的模型。

在更復雜的MDP(比如以視頻圖像作為輸出的游戲)中,我們往往還要定義“觀測”(Observation)的概念,以與具有完全信息、信息密度高、符合馬氏性的狀態(tài)State相區(qū)別,并將問題定義為POMDP(Partial Observed MDP)。為此,我們要定義出觀測與狀態(tài)之間的映射關系(表示學習Representation Learning,或是狀態(tài)關于觀察的后驗概率模型,等等)。在以圖像為輸入的問題中,這類定義非常常見,幾乎是解決問題的必由之路。由于這部分內(nèi)容重要且復雜,所以我們將其放在8.4關于World Model的章節(jié)。在講World Model之前,我們不會涉及到“觀察”的概念,僅僅討論“狀態(tài)”。

比如,逆向模型。

在MDP中,“正向”的邏輯順序是,若我們當前處于狀態(tài)s、采取動作a,則會(以一定概率分布)進入下一個動作s’。因此,一般的前向模型(forward model)接受s與a為輸出,預測s’的分布。但是,我們也可以采用后向模型(backward model),即給定s’與a,推測我們要從哪個s采取a,才會到達給定的s’;又或是給定s與s’,推測當我們處于s時候要采取何種a才能實現(xiàn)要轉(zhuǎn)移到s’的目的。(有時人們會在不同地方用Backward Model或Inverse Model分別表示不同的含義,容易引發(fā)混淆。我們強調(diào)還是要注意具體定義)。

可以想見,如果我們采用Decision-Time Planning的決策方式時,這些模型可以直接用來輔助決策(比如,當我們處于全新的狀態(tài)S0,且我們的目標是到達S*時,可以用后向模型或逆向模型來推測我們中間要經(jīng)過哪些狀態(tài)、為此應該采取哪些動作),發(fā)揮巨大的作用。即使我們采用一般Background決策方式,這些模型也能更好地輔助策略的訓練。

這方面有關論文包括《Forward-backward reinforcement learning》、《Recall traces: Backtracking models for efficient reinforcement learning》與《Bidirectional model-based policy optimization》等等。此外,在經(jīng)典的world model中,研究者也提及訓練逆向模型有助于更好地從“觀察”中提取出真正的“狀態(tài)”、學習出更好的低維表示。

總得來說,以上介紹的這些例子中,我們并不是嚴格地學習出MDP定義中的P與R,但它們也是與其息息相關的表達式(往往可以與其相互導出)。我們?yōu)檫@些部分建立了模型,并用以輔佐算法。

看到這里,有的讀者或許會感覺有些糊涂——我們在8.1.1中說,模型就是為MDP的環(huán)境,主要就是為P與R建模。而在本節(jié)中,我們又說模型不一定是為這兩個部分建模,也可以為其他部分建模、發(fā)揮其他的作用。在許多經(jīng)典的MFRL算法中,我們同樣需要建立幾個含義不同的網(wǎng)絡,共同訓練并發(fā)揮作用(比如DDPG要同時訓練四個網(wǎng)絡)。那么,MBRL中“模型”的嚴格定義究竟是什么,它與MFRL的嚴格分界到底在哪里呢?

事實上,由于MBRL還在快速地發(fā)展變化之中,所以目前很難為“模型”給出一個最終的、無歧義的、嚴格的、排他的“官方”定義。我們只能通過辨析如下一些容易產(chǎn)生混淆的特點,加深讀者對于“模型”的理解。

3、模型的一些特點

為了更好地讓讀者理解MBRL中“模型”的意義,我們強調(diào)如下幾點:

首先,模型不是環(huán)境本身。

所謂“模型”指的是為環(huán)境建模,但它并不是環(huán)境本身。即使算法“模型”的作用僅僅是以“黑盒模型”的形式增加更多數(shù)據(jù),它也必須是和環(huán)境有區(qū)別的。

打個比方:我們要用強化學習算法訓練一個能夠無人駕駛的Agent。我們可以在現(xiàn)實世界中準備幾臺無人車,用其傳感器收集到的圖像數(shù)據(jù)作為狀態(tài),將其現(xiàn)實中的駕駛操作定義為動作,則這樣我們便得到了一個可以交互訓練的環(huán)境。但是,這樣會導致無法接受的數(shù)據(jù)成本——在訓練的前期,Agent輸出的操作近乎于“亂開車”,或許我們每獲取一百條數(shù)據(jù)就會導致一臺汽車因碰撞而報廢,而深度學習往往需要數(shù)以百萬計的訓練數(shù)據(jù),這絕對是不合算的。因此,人們會在電腦中建立一個復雜的仿真環(huán)境,就像我們在電腦玩的賽車游戲一般可以交互操作(且比一般的賽車游戲更加精密、以貼合現(xiàn)實中的復雜情況)。使用了仿真環(huán)境之后,我們產(chǎn)生數(shù)據(jù)的成本往往只和電腦的計算成本有關,和數(shù)據(jù)具體內(nèi)容(車輛碰撞、報廢)無關,這無疑大大地節(jié)省了成本,讓我們用純粹強化學習訓練自動駕駛成為可能。

在這種情況下,如果我們僅僅用MFRL的算法(比如PPO或DDPG)與仿真環(huán)境交互,產(chǎn)生數(shù)據(jù)并訓練網(wǎng)絡,則這仍然只能稱作MFRL算法。我們不能因為我們模擬現(xiàn)實中的環(huán)境建立了仿真環(huán)境,就把“仿真環(huán)境”當成“模型”而把我們的算法定義為MBRL算法。因為在整個算法的過程中,我們都只是與仿真環(huán)境交互,而沒有考慮任何“真實環(huán)境”有關的信息。本質(zhì)上,我們實際上訓練的并不是一個在真實環(huán)境中自動駕駛的Agent,而是一個仿真環(huán)境上的Agent(類似于游戲AI)。當仿真環(huán)境與真實環(huán)境完全一樣時,Agent在現(xiàn)實中也能有好的表現(xiàn);對于現(xiàn)實中存在卻被仿真環(huán)境遺漏的情況,自然不能指望Agent拿出好的應對。因此,仿真環(huán)境就是MFRL中的“環(huán)境”而非MBRL的“模型”。

其次,環(huán)境也不是模型本身。

這句話聽起來與前一句話很像,只是將順序調(diào)轉(zhuǎn)了,似乎是一句“廢話”。不過,正如上一句話是為了強調(diào)MBRL(黑盒模型)與MFRL不同,我們這里的這句話其實是為了強調(diào)MBRL(白盒模型)與最優(yōu)控制算法是不同的。

我們在最早時候說過,最優(yōu)控制問題的定義是求解環(huán)境表達式已知MDP的最優(yōu)策略,而強化學習的定義是求解環(huán)境未知的MDP的最優(yōu)策略。在強化學習中,我們又可以根據(jù)是否為環(huán)境建模分為MBRL與MFRL兩大類。因此,最優(yōu)控制(完全已知環(huán)境表達式)、MBRL(對未知環(huán)境建模)、MFRL(不對未知環(huán)境建模)應該是完全不同的三類算法。

但是,在許多傳統(tǒng)的控制問題中,人們也是事先不知道環(huán)境的。此時,人們采用的傳統(tǒng)方法一般分為兩個步驟,其一是通過與環(huán)境交互產(chǎn)生大量數(shù)據(jù)、以此擬合出環(huán)境表達式(根據(jù)環(huán)境性質(zhì)可能為表格或線性函數(shù)),其二則是用最優(yōu)控制算法(動態(tài)規(guī)劃或LQR)在該表達式上求解最優(yōu)策略……我們也會將這種方法稱為“最優(yōu)控制”。那么,許多讀者肯定會有疑問——既然“最優(yōu)控制”中也存在未知環(huán)境、用數(shù)據(jù)擬合環(huán)境的情況,它和MBRL有什么不同呢?

在這里,我們詳細地辨析一下最優(yōu)控制與MBRL的區(qū)別:在最優(yōu)控制中,設原本我們想求解的真實環(huán)境是(P,R),我們用數(shù)據(jù)擬合出來的是(P’,R’)表達式,那么,我們用最優(yōu)控制算法求解出來的其實是(P’,R’)上最優(yōu)的策略。倘若我們擬合效果較差,即(P’, R’)與(P, R)相差太多,則最優(yōu)策略在真實環(huán)境上效果不佳;反之,若(P’, R’)與(P, R)比較接近,則最優(yōu)策略能夠在真實環(huán)境中取得較好的表現(xiàn)。但無論如何,我們算法事實上是在求解已知表達式的環(huán)境(P’, R’)上的最佳策略,與原本的(P, R)并無直接關系;在MBRL中,我們的目標始終是要求解真實環(huán)境(P, R)上的最優(yōu)策略。為了使得這個求解的過程更加高效,我們或許會擬合出(P’, R’)以輔助這個過程。但無論如何,我們算法的目標始終是求解(P, R)上的最優(yōu)策略。模型(P’, R’)僅僅用來加速或輔助我們的算法,而非算法本身的目標。

有的讀者可能還是不解:(P’, R’)不也是用真實環(huán)境(P, R)產(chǎn)生的數(shù)據(jù)擬合出來的么?我們希望將(P’, R’)擬合得更好,這不就是為了能讓解出的最優(yōu)策略在(P, R)上表現(xiàn)得盡量好么?怎么能說最優(yōu)控制算法的目標和MBRL不同呢?

我們不妨再用算法的動態(tài)過程來辨析一下二者的區(qū)別:

在最優(yōu)控制中,或許環(huán)境表達式(P’, R’)是問題給定的,或許是我們與真實環(huán)境(P, R)交互產(chǎn)生的數(shù)據(jù)擬合出來的。但無論如何,從某一個時刻起,我們便會認定(P’, R’)是完全已知的“真實”環(huán)境。我們不會再修改(P’, R’)的表達式,一切算法也以固定的(P’, R’)表達式為前提展開。這是一個“先產(chǎn)生數(shù)據(jù)擬合環(huán)境,再假定其表達式完全已知并求解最優(yōu)策略”的過程(或只有后半部分)。因為從某個時刻起我們認為環(huán)境表達式完全已知,所以這被歸為最優(yōu)控制的范疇。

在MBRL中,我們目標始終是真實的未知環(huán)境(P, R)。因此,我們會源源不斷地從(P, R)中產(chǎn)生數(shù)據(jù),以使得(P’, R’)擬合得更好,但我們卻永遠不會將(P’, R’)固定下來、甚至作為我們的目標。在講DQN時我們說過,對于與最優(yōu)控制密切相關的(s,a),我們會產(chǎn)生更多有關的數(shù)據(jù)、將“重要的”Q(s,a)估計得更準確。在MBRL中道理也是一樣的——隨著算法的迭代,我們當前的策略越來越好,則我們會產(chǎn)生更多“重要的”(s,a)有關的數(shù)據(jù)。這樣一來,(P’, R’)中關于“重要的”(s,a)的關系就會擬合得更準,即與(P, R)更接近;而“不重要的”(s,a)有關的關系則會和(P’, R’)有較大的偏差。通俗地說,(P, R)是“客觀的”,而(P’, R’)則與Q(s,a)一樣是“主觀的”、“有目的的”,并且是會動態(tài)變化的。由于在算法在任何一個時刻的目標始終是在未知的環(huán)境取得更好的表現(xiàn),所以這被歸為強化學習的范疇。

如何讓模型估計的(P’, R’)具有“主觀性”呢?我們還是以表格型MDP為例。在上面的圖8.1-1中,我們以數(shù)據(jù)(s,a,s’)的計數(shù)估計轉(zhuǎn)移表格的方式是極大似然估計,并且是無偏估計。這是很“客觀”的,卻不是很符合強化學習的性質(zhì)。在MBRL中我們可以改為以這樣“主觀”的方式估計轉(zhuǎn)移表格:

R-MAX算法
與8.1-4中直接采用極大似然估計相比,上述R-MAX算法對于環(huán)境的估計似乎并不那么“好”(將數(shù)據(jù)不足的獎勵函數(shù)設定為最大值顯然不符合無偏性)。但是,MBRL的目的不是最準確地估計出未知環(huán)境的表達式,而是要找到在未知環(huán)境上的最優(yōu)策略。若采用上述的R-MAX算法,在MBRL迭代的過程中我們會先傾向于探索還沒有探索過的部分(因為模型顯示這些地方獎勵較大),對(P,R)有一個初步的估計。隨后,我們會傾向于產(chǎn)生獎勵更高的,“更重要”的數(shù)據(jù),對(P,R)中我們更感興趣的部分估計得更精準。所以說,R-MAX方法很好地串聯(lián)了“為環(huán)境建模模型”與“探索-利用”。這個例子也進一步說明了,最優(yōu)控制的“先擬合再求解”與MBRL的“一邊擬合一邊求解”是不同的。

總結以上兩點:在MBRL中我們有一個真正的“環(huán)境”,也有和真實環(huán)境息息相關的“模型”。我們始終以在“真實環(huán)境”上取得最大期望獎勵為最終目標,同時我們會根據(jù)最終目標不斷調(diào)整“模型”、輔助算法。如果一個算法不是同時符合以上兩點、且任何時刻都以此為前提迭代,則不適合稱為MBRL(若只有一個黑盒則應屬于MFRL算法,若只有一個白盒則應屬于最優(yōu)控制算法)。這也正是我們說“模型不是環(huán)境”、“環(huán)境也不是模型”的意思。

最優(yōu)控制、MFRL與MBRL的區(qū)別
除了以上兩點之外,我們還要強調(diào)模型另一個重要的特點:

模型一般都包含關于環(huán)境的先驗知識。

在以上的陳述中,MBRL意味著我們必須同時有“環(huán)境”與“模型”,所以它自然會比單純的MFRL要復雜一些——比如說,若我們面對的是一個狀態(tài)與動作都是離散分類變量的MDP,狀態(tài)有100個,動作有10個。若我們采用MFRL的表格型Q-learning算法,則我們的Q(s,a)表為100*10的規(guī)格,即1000維向量。而相比之下,轉(zhuǎn)移關系 P_{s,s'}^a 則為一個100*10*100的表格,即100000維的向量。擬合后者顯然要比前者使用更多的數(shù)據(jù),否則精確度必然有量級上的差距。

我們設想一下:假如采用MFRL,我們直接用transition數(shù)據(jù)(s,a,r,s’)來估計Q(s,a);假如我們要采用MBRL,并且是將模型當成黑盒模型而使用,則我們會先用真實數(shù)據(jù)(s,a,r,s’)來估計 P_{s,s'}^a 模型Model,再用模型產(chǎn)生的“假數(shù)據(jù)”以及環(huán)境產(chǎn)生的“真數(shù)據(jù)”來估計Q(s,a)。問題是,若真實數(shù)據(jù)(s,a,r,s’)數(shù)量不足,則Model估計得更不準確。此時用Model產(chǎn)生的“假數(shù)據(jù)”可能會和現(xiàn)實有較大偏差,繼而導致我們估計的Q(s,a)有很大偏差。若真實數(shù)據(jù)(s, a, r, s’)數(shù)據(jù)量很充分,則事實上我們即使不用Model也可以直接將Q(s,a)本身估計好。無論如何,由于Model的維度比Q(s,a)更高,所以先用“真數(shù)據(jù)”估計Model再用Model產(chǎn)生“假數(shù)據(jù)”這個步驟很難創(chuàng)造額外的收益。那么,我們有什么理由這樣做呢?

事實上,我們在前面說過,MFRL適用于更一般、更通用的問題。倘若我們沒有任何關于P_{s,s’}^a的先驗知識,即它可以在所有合法的情況中任意取,那么,采用MFRL往往是更好的選擇。正是因為更適用于通用的、無先驗知識的問題,MFRL領域在前些年取得了更好的發(fā)展。

但是在具體的實際問題中,我們往往有許多關于模型的具體知識。比如說,倘若我們的問題中這100個狀態(tài)代表的是棋盤游戲的狀態(tài),每次采取動作時,我們只能轉(zhuǎn)移到與其相鄰(比如棋盤上一步操作能走到)的五個狀態(tài)中。這就意味著,在100*10*100的環(huán)境轉(zhuǎn)移表格中有高達95%的網(wǎng)格值被固定為0。此時,如果采用MFRL算法,則相當于沒有利用這個額外的領域知識,難免有些“浪費”。而我們?nèi)舨捎肕BRL,且利用這一點設計表格模型的學習方式(比如,將所有不相鄰轉(zhuǎn)移的(s,s’)關于任何a的轉(zhuǎn)移概率始終設定為0,其他(s,s’)的轉(zhuǎn)移關系則初始設為1/5,且隨著計數(shù)增加采用laplace平滑法進行調(diào)整)。此時,由于利用了關于環(huán)境的先驗知識,即使我們只是訓練一個“黑盒模型”、僅僅用其增廣數(shù)據(jù),則它也很可能取得比MFRL更高的效率。

同理,無論是MFRL中的VPG、A2C、PPO或DDPG,都沒有利用任何關于環(huán)境的先驗知識。倘若環(huán)境確實沒有領域知識,在所有可能的空間內(nèi)任意取值,則這些MFRL算法往往有確實更好的表現(xiàn)。但倘若我們已知環(huán)境有一些先驗性質(zhì),則我們可以利用它更高效地建立模型。

比如,在有些環(huán)境中,我們已知狀態(tài)轉(zhuǎn)移的物理公式(一般可以寫為微分方程),只是物理公式中的幾個系數(shù)(比如質(zhì)量m、摩擦系數(shù)k,物體的具體形狀S)的具體取值未知。這時候,若我們能用產(chǎn)生的數(shù)據(jù)以及這些已知的物理公式擬合出環(huán)境模型,則效率無疑比不利用物理公式的MFRL算法,或者是用“萬能”的神經(jīng)網(wǎng)絡去擬合模型的MBRL算法效率更高。

利用環(huán)境的物理性質(zhì)建模
當然,如果真實的環(huán)境中有很明晰的、適用于全局的物理公式,且只有幾個全局的系數(shù)未知。那么,我們只要用數(shù)據(jù)估計出這些系數(shù),便可以直接寫出全局的物理公式,再在它基礎上采用最優(yōu)控制算法往往就可以了。因此,具有全局的、清晰的公式的環(huán)境往往不是MBRL最適用的場景。

與之相比,許多工程問題中我們沒有適用于全局的清晰物理公式,但我們知道它在局部滿足一些特性。比如,如果狀態(tài)是連續(xù)變化的,則我們可以假定其具有局部線性性(對于局部環(huán)境只進行一次展開)。此時,各個位置的局部線性系數(shù)可能很不同,我們可以用類似于iLQR的MBRL算法求解:

為局部線性環(huán)境建模
在具有全局物理公式的環(huán)境中,我們對各個狀態(tài)的轉(zhuǎn)移關系的模型都取決于統(tǒng)一的全局系數(shù)。所有狀態(tài)的轉(zhuǎn)移關系的精確度都完全取決于我們對于幾個全局系數(shù)估計的精確度。因此,我們擬合全局環(huán)境表達式之后直接用最優(yōu)控制算法(瓶頸取決于統(tǒng)一的擬合精確度)即可;而在沒有全局物理公式的環(huán)境中,各個狀態(tài)的局部線性模型是不同的。我們對于“重要的”狀態(tài)的線性系數(shù)應該估計得更準確,對于“不重要的”狀態(tài)有關的線性系數(shù)則不必估計得太準確。因此,我們可以交互地優(yōu)化算法、產(chǎn)生數(shù)據(jù)以估計局部模型。在迭代的過程中,我們逐漸有能力辨認“重要”的狀態(tài),并將其有關的局部模型估計得更準。這符合MBRL的特點。

在以上說的幾種之外,還有一種很常見的“先驗知識”——我們未知環(huán)境的狀態(tài)轉(zhuǎn)移關系,但已知環(huán)境中的獎勵函數(shù)表達式?;蛘哒f,獎勵函數(shù)本來就是由我們根據(jù)實際目標靈活設定出來的。此時,如果我們“假裝不知道”獎勵函數(shù)是多少,只是把環(huán)境當成一個純黑盒來看,這無疑會導致浪費。這種情況下,我們可以僅僅擬合狀態(tài)轉(zhuǎn)移關系,并附上已知的獎勵函數(shù)作為一個完整模型。在實踐中,這種情況是很常見的(參看本書的2.5)。

在上述的例子之外,現(xiàn)實環(huán)境中還有許多明確且可以被利用的“先驗知識”或者說“基本性質(zhì)”。要完全枚舉出這些性質(zhì),甚至只是為它們進行一個大體的分類都是很難的,畢竟在現(xiàn)實中存在著太多復雜而具體的情況,只能“具體問題具體分析”。這也是MBRL最大的特點之一。

當然,“模型一般包含關于環(huán)境的先驗知識”這句話并非那么絕對。下一節(jié)中,我們會詳細講述模型的使用方法。屆時我們將會看到,為環(huán)境建模還有別的好處。因此從理論上說,我們不一定非要遇到擁有先驗知識的環(huán)境才考慮MBRL。即使面對無先驗知識的環(huán)境,有時采用MBRL算法相比MFRL也會有一定的優(yōu)勢。我們在這里想說的是,現(xiàn)實中大多數(shù)問題都或多或少包含了一些領域知識,而實踐中取得成功的MBRL算法大多數(shù)都利用了先驗知識。

從另一個角度看,我們既然說“模型不是環(huán)境”、“環(huán)境也不是模型”。MBRL必須同時擁有環(huán)境與模型,而不像最優(yōu)控制或MFRL那樣只需要二者之一。采用如此復雜的結構,必定從別處有所收益。這個收益一般就是先驗知識帶來的。

4、對模型的理解

我們說過,關于MBRL中“模型”,目前尚沒有形成嚴格的定義。在上一小節(jié)講述了它的性質(zhì)與特點之后,我們不妨用一個通俗的比方理解它:

如果說“環(huán)境”是“客觀世界”、算法訓練的“策略”是“主觀行為方式”,那么,“模型”就是“主體對于世界的認識”,或者說,“世界觀”。

下面,筆者嘗試借助一些哲學概念來講述對MBRL的理解。這涉及到歷史上歐陸理性主義與英倫經(jīng)驗主義的爭論,到康德在“純粹理性批判”中對二者的統(tǒng)一,與1.3節(jié)的邏輯有一定的關聯(lián)。不熟悉的讀者不妨回顧一下1.3。

首先,“我認識到的世界”與“真實世界”是不同的。“我認識到的世界”取決于我認識世界的方式,其中往往包含了先驗知識。

這是一個非常哲學的命題,我們嘗試用通俗的語言敘述它:

在歷史上有一個哲學流派叫做“經(jīng)驗主義”,主要代表人物為英國哲學家洛克與休謨。他們的主要觀點是,人對于世界的認識都來自于感官經(jīng)驗,所以,所有不能回溯至經(jīng)驗(包括看的聽的各種感官經(jīng)驗)的東西都是錯的。

經(jīng)驗主義哲學家洛克與休謨
休謨舉了很多我們看來難免有些“詭異”的例子,比如:人們見過很多空中的東西落地的現(xiàn)象,但卻沒有人見過“空中的東西一定落地”這件事。如果我假定某個深山老林中有一塊石頭浮在空中,但卻從沒有人見過它。人們只是見過這塊石頭以外千千萬萬的物品從空中落地,便自以為歸納出了適用于萬物的規(guī)律;又比如,當你把錢放到錢包里,過一會又從錢包里把錢拿出來,那么你就一定覺得“錢一直在錢包里”。如果我假定錢其實在錢包里消失了片刻,你卻沒有看到。等到你要打開錢包取錢的時候,它又及時出現(xiàn)了……不熟悉經(jīng)驗主義哲學邏輯的讀者聽起來或許會覺得這些假想很荒謬。但你不妨仔細想想,你從邏輯上沒有辦法完全證偽他的假說的可能性。并且,如果你接受了“人們對于世界的認識僅僅來自于經(jīng)驗”,或者“所有不能被回溯至經(jīng)驗的想法都是錯的”這樣的觀點,那么,他給出的這些假說其實恰恰是很合理的。

從更廣泛的角度來看,不能被證偽的假說還有很多,比如大家更熟悉的“缸中之腦”論:有一個泡在營養(yǎng)液中大腦,所有一切對于外界的感知只是被營養(yǎng)液輸入的信號而并非真正存在。有時想到我們或許處于這種情況之中,且無法徹底反駁這種可能,難免會有種脊背發(fā)涼的感覺。

那么,我們到底該如何面對上述這些看起來很荒謬、卻又不能被證偽,大部分時候讓我們不以為意、有的時候卻又讓我們“脊背發(fā)涼”的假說呢?

歷史上,歐陸理性主義與英倫經(jīng)驗主義就人認識世界是依靠理性還是經(jīng)驗展開了漫長的爭論。后來,德國哲學家康德將二者統(tǒng)一了起來——他認為,“我認識到的世界”(現(xiàn)象)與“真實世界”(本體)是兩個不同的概念。而“我認識到的世界”是由“先驗理性”與“后天經(jīng)驗”共同形成的。

所謂的“先驗理性”包括先驗的時空范疇與因果律。要注意的是,時空與因果律未必是在“真實世界”中存在的(因為你不能否認經(jīng)驗主義哲學家提出的那些“詭異”的世界觀假說),但這卻是主體認識世界的方式。我們在獲得任何具體的感官經(jīng)驗之前,自己心中已經(jīng)先有了一個具有規(guī)律的三維空間。與世界的交互過程中,我們會將自己獲得的感官經(jīng)驗逐步填進去,得到一個“我認識到的世界”。這意味著,“我認識到的世界”之中,所有的感官經(jīng)驗都會自動被先驗的“純粹理性”組織在一起,以比較有規(guī)律的形式呈現(xiàn)于我們面前。

讓筆者嘗試用康德的認識論去解釋上述的“詭異世界觀”:

“真實世界”中有沒有可能有一塊石頭不符合萬有引力定律呢?這是有可能的。不過,在我們初中學習物理實驗用、小車砝碼推出一條物理定律的時候,便自然認為世界上所有物體都符合這個定律。老師似乎從沒有討論過萬一“這個小車砝碼符合這個定律、別的東西不符合這個定律”的情況,而就連最愛抬杠的同學也從沒有想到可以這樣抬杠。這是因為大家都會先驗地認為世界上所有物體肯定是被某種規(guī)律組織在一起的。這種先驗的因果律思維方式,加上“很多東西從空中落下”的經(jīng)驗,便在“我認識到的世界”中生成了“東西一定會從空中落下”的圖景。即使這條因果存在例外,那一定是來自于另外一條因果,并且那條因果也適用于一些具有一定特性的個體。比方說,如果有一天我們見到了“不落下”的東西,我們一定下意識會思考它“不落下”的原因,并下意識地認為如果別的物體也滿足這個原因,那么它們同樣也會“不落下”。這說明,我們先驗的思維方式就是“具體事物被因果律組織在一起”,而不存在“特定物體”這種思維方式。

我們能不能否認“錢在錢包中暫時消失又忽然出現(xiàn)”呢?從邏輯上是不能的,這確實有可能是“真實世界”的情況。但是,因為我們先驗地擁有時空觀,先驗地認為“物質(zhì)在時空中連續(xù)變化”。然后,我們又得到了“把錢放進錢包”與“把錢取出錢包”的后天感官經(jīng)驗,因此,“我認識到的世界”中將這些感官經(jīng)驗放進先驗時空范疇中,自然合成出“錢一直在錢包里”的圖景。只要“真實世界”給予我們的經(jīng)驗沒有和“我認識到的世界”出現(xiàn)太大的偏離(比如當你打開錢包后發(fā)現(xiàn)錢不見了),我們一般便不會調(diào)整或修正“我認識到的世界”。

時空是廣袤而漫長的,世界是豐富而龐雜的,我們的感官經(jīng)驗只能占據(jù)其中很小的一部分。在我們感官之外,“真實世界”仍存在著無限的可能,比如“缸中之腦”、“哲學僵尸”、“飛在宇宙中的茶壺”、“車庫里的噴火龍”,有可能不是作為時空存在、不按照因果律去運行,也有可能包括很多前沿科學暫時無法經(jīng)驗到卻客觀存在的東西。但是,由于我們認識世界的方式、固有的理性,我們會將“我認識到的世界”補全到那些感官以外的部分,比如“無人山谷中的石頭也會落地”,“我沒有打開錢包時錢一直在里面”,等等。如果沒有這種先驗理性的“補全”,我們認識世界、規(guī)劃自己行為的效率都會非常低下。

不過要注意的是,物質(zhì)始終是第一性的,正如強化學習中我們始終以環(huán)境而非模型作為目標及評判標準。當“我認識到的世界”與“真實世界”提供的經(jīng)驗沒有明顯矛盾沖突時候,我們或許會以基于“我認識到的世界”展開自己的行為。但是一旦二者發(fā)生了矛盾,我們應該調(diào)整自己對于世界的認識,而不能唯心地認為世界應該符合我的認識。否則,必將導致在現(xiàn)實中失去更多的效用。這也就是我們所說的“模型不是環(huán)境”,“MBRL不是最優(yōu)控制”的意思。

除了較為低等的生物,比如只會朝著光的方向移動的蜉蝣之外,所有高級生物腦中都會形成一套“對世界的認識”。比如人即使到了全新的工作環(huán)境中,也懂得基本的常識與規(guī)則,并會以此來指導自己的行為。因此,如果我們確實了解關于環(huán)境的一些先驗知識,用其來設定了模型的形式。然后,我們又從環(huán)境中獲取了一些數(shù)據(jù)(經(jīng)驗)用來擬合模型,那么,當我們處于環(huán)境中某些我們沒有經(jīng)驗的位置時,我們也可以從模型中估計出它的圖景。這就相當于是“我認識到的世界”能依靠先驗理性自動對“真實世界”進行補全。人們所有稍微長遠的計劃,都是建立在排除了“詭異”的世界觀假說、包含理性規(guī)則的“我認識到的世界”之上的;從另一個角度說,如果我們認識世界的方式中不包含理性(正如模型中不包含先驗知識),則我們的模型很難延拓到經(jīng)驗以外的部分。如果我們總在顧忌“錢在錢包中是否會消失又出現(xiàn)”或“山谷中的石頭會不會不符合萬有引力定律”這樣的意外情況,我們將瞻前顧后,很難學習到下意識行為以外的行為方式,不可能產(chǎn)生高級的、需要想象力與長遠規(guī)劃的行為。

綜合以上,相比于只是用感官經(jīng)驗訓練下意識條件反射的MFRL而言,借助世界觀以學習行為方式的MBRL,尤其是借助世界觀來決策的Decision-Time Planning算法更加接近人或其他高等動物的思維。

回到我們的主題。我們在1.3中說過,強化學習是模擬生命智能的行為的。如果我們將環(huán)境視為是客觀的真實世界,主體目標是“最大化效用”,策略函數(shù)是我們的行為方式;那么,“模型”就是“我們對于世界的認識”,模型的形式是“我們認識世界的方式”或“先驗理性”,環(huán)境中產(chǎn)生的數(shù)據(jù)是真實世界給我們的感官經(jīng)驗,“模型”也可以理解為我們腦海中根據(jù)先驗理性與感官經(jīng)驗所“補全”的世界。在8.1.3中列出出了許多模型的變體,它們不一定是直接對MDP定義的P或R建模,但是,它們也是一種“對客觀環(huán)境的認識”,并可以用以輔助我們的行為(但它們本身不是策略函數(shù))。所以,它們也被歸為MBRL的范疇。

當然,以上都只是一些通俗的類比,旨在幫助大家能夠了解MBRL這門還處于快速發(fā)展中的領域的一些底層思想。但是,如果要掌握這個領域,閱讀具體的算法論文、推導公式仍舊是必不可少的。最后,送大家一句話共勉:







思考題

1、 思考還有哪些可解釋的模型適合作為“白盒模型”。

2、 列舉MDP中狀態(tài)也動作是連續(xù)變化還是分類變量,環(huán)境是否具有隨機性、時齊性的各種組合,并思考每一種情況適合用何種模型?

3、 閱讀論文《Combating the compounding-error problem with a multi-step model》,了解多步模型如何定義。

4、 了解MBRL中逆向模型或反向模型的含義。

5、 思考為何R-MAX算法能更好適應MBRL?

6、 理解MFRL、MBRL與最優(yōu)控制的區(qū)別;

7、 為什么說有全局物理公式的環(huán)境更適用于最優(yōu)控制算法,而只有局部線性性的環(huán)境更適用于MBRL算法?

8、 理解8.4中所說“本體”與“環(huán)境”、“現(xiàn)象”與“模型”,我們的先驗理性與模型的先驗知識的類比;

9、 在MBRL中,模型的形式,即環(huán)境的先驗知識,是我們設定的;那么,在“真實世界”中,我們認識世界的“先驗理性”又是誰設計的呢?



關鍵詞:模型

74
73
25
news

版權所有? 億企邦 1997-2025 保留一切法律許可權利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關閉