在高層次的直覺中,馬爾可夫決策過程(MDP)是一種對(duì)機(jī)器學(xué)習(xí)非常有用的數(shù)學(xué)模型,具體來說就是強(qiáng)化學(xué)習(xí)。該模型允許機(jī)器和agent確定特定環(huán)境中的理想行為,從而最大限度地提高模型在環(huán)境中實(shí)現(xiàn)特定狀態(tài)甚至多個(gè)狀態(tài)的能力。這個(gè)目標(biāo)是由我們稱為策略的東西決定的,策略應(yīng)用于依賴于環(huán)境的agent的操作,MDP試圖優(yōu)化為實(shí)現(xiàn)這樣的解決方案所采取的步驟。這種優(yōu)化是通過獎(jiǎng)勵(lì)反饋系統(tǒng)完成的,在這個(gè)系統(tǒng)中,不同的行為根據(jù)這些行為將導(dǎo)致的預(yù)測(cè)狀態(tài)進(jìn)行加權(quán)。 分解 要了解MDP,我們首先應(yīng)該看一下流程的獨(dú)特組成部分。它包含:
MDP的圖像概述 理解模型: 從上圖中可以看出,我們有T(S,a,S')?P(S'| S,a)。 該模型通常被稱為轉(zhuǎn)換模型。T代表了我們行為的概念化。我們從一些狀態(tài)S開始,我們采取行動(dòng)A,我們的agent發(fā)現(xiàn)自己處于一個(gè)新狀態(tài)S'。 接下來,我們定義P,或者我們通過在前一種狀態(tài)中采取行動(dòng)而達(dá)到新狀態(tài)的概率。 Markov性質(zhì): P[St+1 | a, S0, ….. , St]= P[St+1 |a, St] 上面的公式是馬爾科夫性質(zhì)狀態(tài)的定義。我們?cè)賮矸纸庖幌隆?/p> St+1可以被解釋為未來的狀態(tài),[ S1,...,S t ]表示狀態(tài)歷史中存在的所有相關(guān)信息的歷史。當(dāng)然,a仍然代表著正在采取的行為。但是,新狀態(tài)僅取決于之前的狀態(tài)。 給定馬爾可夫狀態(tài),定義轉(zhuǎn)移概率。 鑒于我們的agent處于某種狀態(tài)s,對(duì)于每一個(gè)存在的狀態(tài),都有一種到達(dá)第一種狀態(tài)的概率,另一種到達(dá)第二種狀態(tài)的概率,依此類推。這是轉(zhuǎn)換概率。 我們可以采用這些概率并將它們輸入狀態(tài)矩陣!讓我們定義一個(gè)帶有3種狀態(tài)天氣問題的例子。規(guī)則如下:
使用這個(gè)假的環(huán)境信息,我們可以像這樣構(gòu)造一個(gè)狀態(tài)矩陣: 其中,矩陣的第一行表示在給定雨天的情況下,未來幾天天氣的概率。第二行表示正常日子的概率,第三行表示雪天的概率。這種轉(zhuǎn)換概率矩陣稱為轉(zhuǎn)換矩陣。 現(xiàn)在,讓我們從我們的矩陣中嘗試一個(gè)模型真正的問題從矩陣p2(ij) i表示當(dāng)前狀態(tài),j表示未來狀態(tài)。 我們想知道今天下雨的可能性是多少,從現(xiàn)在開始兩天后下雪的可能性是多少?假設(shè)在下雨,我們可能的狀態(tài)是什么? 唯一的限制是不能連續(xù)兩天過得很好。從現(xiàn)在到那時(shí)的所有其他狀態(tài)都是可能的。所以明天可能會(huì)下雨,第二天可能會(huì)下雪,明天可能會(huì)很好,第二天可能會(huì)下雪,明天可能會(huì)下雪,第二天也可能會(huì)下雪。 以等式形式: P2(Rain?Snow2) = P(RainRain)*P(RainSnow) + P(RainNormal)*P(NormalSnow) + P(RainSnow)*P(SnowSnow) 現(xiàn)在我意識(shí)到這看起來很痛苦,但是你可能已經(jīng)意識(shí)到這本質(zhì)上是向量和矩陣的數(shù)學(xué)。我們?nèi)〉谝恍泻偷谌凶鳇c(diǎn)積。 可視化使生活更輕松 讓我們假設(shè)我們希望預(yù)測(cè)給定6天時(shí)間周期的P,或者6個(gè)狀態(tài)轉(zhuǎn)變。我們還沒有定義一個(gè)初始狀態(tài),我們只是希望在給定初始概率的情況下,求出過渡時(shí)期狀態(tài)的概率。這被稱為正則馬爾可夫鏈。如你所見,我們繼續(xù)使用向量數(shù)學(xué)通過點(diǎn)積來計(jì)算每個(gè)狀態(tài)的概率。 但我們?nèi)绾未_定初始起始狀態(tài)?它將如何影響我們的概率計(jì)算或如何創(chuàng)建馬爾可夫鏈: 我們可以將其定義為:u ^(n)= uP ^(n) 其中u是表示狀態(tài)初始分布的向量,P是馬爾可夫鏈的轉(zhuǎn)換矩陣。 我們知道我們有三種狀態(tài),我們把它帶入.u3=uP3 我們來解第三天的概率。我們制作一個(gè)1x3向量來表示初始分布,并采用點(diǎn)積來求出給定隨機(jī)初始狀態(tài)的第三天每種狀態(tài)的可能性。 如何找到這么多狀態(tài)的最佳解決方案以獲得理想的結(jié)果?這就是我想用強(qiáng)化學(xué)習(xí)來做的。 為了理解如何計(jì)算狀態(tài)和操作的優(yōu)化,我們需要給它們賦值。為了理解價(jià)值,我們需要定義一個(gè)策略,為了定義一個(gè)策略,我們需要了解獎(jiǎng)勵(lì)和回報(bào)。 獎(jiǎng)勵(lì)和回報(bào)價(jià)值 強(qiáng)化agent尋求最大化未來獎(jiǎng)勵(lì)的總和。他們希望預(yù)測(cè)獲得最大獎(jiǎng)勵(lì)的行為。這稱為return,我們可以像這樣建模,r表示獎(jiǎng)勵(lì),R表示返回,下標(biāo)t表示時(shí)間步長,在我們的例子中是狀態(tài)轉(zhuǎn)換。 現(xiàn)在,正如你所看到的,這個(gè)等式允許趨于無窮大,但處理許多問題是沒有意義的。我們希望獎(jiǎng)勵(lì)的總和結(jié)束。我們稱任務(wù)結(jié)束劇集。想象一下大富翁棋盤游戲,一開始給所有人分配相同的價(jià)值,然后給出一系列可能的狀態(tài)和行為,這一集最終以贏家結(jié)束。一個(gè)新內(nèi)容可以從創(chuàng)建游戲的新實(shí)例開始。 處理回報(bào)價(jià)值的更常用方法是稱為未來累積折扣獎(jiǎng)勵(lì)的方法 其中,獎(jiǎng)勵(lì)前的折扣表示0到1之間的值。這種方法的好處是,現(xiàn)在對(duì)無限回報(bào)有了更好的模型,而且它更重視更直接的回報(bào)。這個(gè)模型現(xiàn)在關(guān)心的是更早的回報(bào),而不是未來的回報(bào)。我們可以自己加權(quán)。我們選擇的折扣越小,越強(qiáng)調(diào)早期獎(jiǎng)勵(lì)。正如您可能想象的那樣,1的折扣變成了我們?cè)瓉淼莫?jiǎng)勵(lì)方程,0的折扣創(chuàng)建了一個(gè)只關(guān)心第一個(gè)獎(jiǎng)勵(lì)的模型。這在某種意義上是有用的,因?yàn)閍gent將會(huì)在特定的時(shí)刻學(xué)習(xí)絕對(duì)最好的事情,但它將缺乏對(duì)自己未來的洞察力。 更多關(guān)于政策 π(s,a)是我們的政策函數(shù)。它描述了一種行為方式。它采用當(dāng)前狀態(tài)和agent操作,并返回在該狀態(tài)下執(zhí)行該操作的概率。有點(diǎn)像我們上面演示的那樣。 如果你考慮這意味著什么,那么在給定所有行為的情況下,所有狀態(tài)的集合必須等于1的概率。 我們的政策應(yīng)描述如何在每個(gè)狀態(tài)采取行動(dòng)。 以Josh Greaves創(chuàng)建的這個(gè)策略為例 正如你所看到的,當(dāng)我們吃飽時(shí),我們會(huì)得到獎(jiǎng)勵(lì),當(dāng)我們饑餓就吃飯時(shí),我們會(huì)得到獎(jiǎng)勵(lì),并且我們因?yàn)槌燥柖怀詵|西而獲得獎(jiǎng)勵(lì)。如果饑餓而不吃飯是,我們會(huì)受到極大的懲罰,并且在吃飽時(shí)吃飯會(huì)受到懲罰。很容易看出,在這個(gè)非常簡單的例子中,最優(yōu)策略是在饑餓時(shí)吃東西。 價(jià)值函數(shù): 強(qiáng)化學(xué)習(xí)中的兩種價(jià)值函數(shù)是狀態(tài)價(jià)值函數(shù)V(s)和行為價(jià)值函數(shù)Q(s, a)。 狀態(tài)值函數(shù)解釋給定特定策略的狀態(tài)的值。當(dāng)我們從初始狀態(tài)s開始并在我們的策略規(guī)則中行動(dòng)時(shí),它是對(duì)回報(bào)的計(jì)算。 操作值函數(shù)返回在遵循指定策略時(shí)在給定狀態(tài)下執(zhí)行操作的值。 現(xiàn)在,考慮到在選擇操作時(shí),環(huán)境是返回下一個(gè)狀態(tài)的,我們必須記住,如果我們的策略發(fā)生變化,值函數(shù)也會(huì)發(fā)生變化。我們希望看到這些函數(shù)有一個(gè)給定的返回值,然而,在到達(dá)某個(gè)狀態(tài)時(shí)可能會(huì)有大量的隨機(jī)性,并且轉(zhuǎn)換函數(shù)也會(huì)影響我們的狀態(tài)。我們不可能有100%的可能性。 |
|