線性代數(shù)的基本原理如何支持深度強(qiáng)化學(xué)習(xí)?答案是解決了馬爾可夫決策過(guò)程時(shí)的迭代更新。 強(qiáng)化學(xué)習(xí)(RL)是一系列用于迭代性學(xué)習(xí)任務(wù)的智能方法。由于計(jì)算機(jī)科學(xué)是一個(gè)計(jì)算領(lǐng)域,這種學(xué)習(xí)發(fā)生在狀態(tài)向量、動(dòng)作等以及轉(zhuǎn)移矩陣上。狀態(tài)和向量可以采用不同的形式。當(dāng)我們考慮通過(guò)某個(gè)線性系統(tǒng)傳遞一個(gè)向量變量,并得到一個(gè)類似的輸出時(shí),應(yīng)該想到特征值。 本文將指導(dǎo)你理解在RL環(huán)境中解決任務(wù)的迭代方法(收斂到最優(yōu)策略)。這個(gè)基礎(chǔ)將反映一個(gè)系統(tǒng)的特征向量和特征值。 回顧馬爾科夫決策過(guò)程馬爾可夫決策過(guò)程(MDPs)是支持強(qiáng)化學(xué)習(xí)(RL)的隨機(jī)模型。如果你熟悉,你可以跳過(guò)這一部分。 定義
重要的屬性MDP有兩個(gè)重要的屬性,狀態(tài)的 「值」 和隨機(jī)節(jié)點(diǎn)的 「q值」 。
這兩個(gè)值通過(guò)通過(guò)相互遞歸和Bellman更新相關(guān)聯(lián)。 Bellman 更新Richard E. Bellman是一位數(shù)學(xué)家,奠定了現(xiàn)代控制和優(yōu)化理論的基礎(chǔ)。通過(guò)recursive one-step方程、Bellman更新方程,可以有效地求解大型優(yōu)化問(wèn)題。通過(guò)遞歸Bellman更新,可以用動(dòng)態(tài)規(guī)劃建立優(yōu)化或控制問(wèn)題,這是一個(gè)創(chuàng)建更小、更易于計(jì)算處理的問(wèn)題的過(guò)程。這個(gè)過(guò)程遞歸地從終點(diǎn)開(kāi)始。
在強(qiáng)化學(xué)習(xí)中,我們使用Bellman更新過(guò)程來(lái)求解狀態(tài)-動(dòng)作空間的最優(yōu)值和q值。這是從一個(gè)從給定的位置最終形成的預(yù)期未來(lái)獎(jiǎng)勵(lì)總和。 在這里,我們可以看到的所有公式。符號(hào)(*)表示最優(yōu)的。公式有最佳動(dòng)作決定的狀態(tài)值,和一個(gè)q狀態(tài)。求和平衡了訪問(wèn)T(s,a,s')中的任何狀態(tài)轉(zhuǎn)移的概率和任何轉(zhuǎn)移R(s,a,s')的獎(jiǎng)勵(lì),從而為狀態(tài)操作空間的值創(chuàng)建一個(gè)全局映射。 這里的關(guān)鍵點(diǎn)是我們用矩陣(R, T)乘以向量(V,U)來(lái)迭代地求出。這些值將從任何初始狀態(tài)收斂,因?yàn)橐粋€(gè)狀態(tài)的值是由它們的近鄰s決定的(馬爾科夫)。 與強(qiáng)化學(xué)習(xí)的關(guān)系以上這都是強(qiáng)化學(xué)習(xí)的內(nèi)容,我斷言理解算法所基于的假設(shè)和模型將比僅僅復(fù)制OpenAI中的python教程為你提供更好的基礎(chǔ)。我指導(dǎo)過(guò)很多學(xué)生在RL工作,那些做得更多的人總是那些知道正在發(fā)生什么,然后知道如何應(yīng)用它的人。 也就是說(shuō),這離在線q-learning只有一步之遙,在在線q-learning中,我們用T和R的樣本來(lái)進(jìn)行Bellman更新,而不是顯式地在方程中使用它們。Q-learning是在2015年解決Atari游戲等問(wèn)題的著名算法。 線性代數(shù)特征值回想一下,系統(tǒng)A的一個(gè)特征值-特征向量對(duì)(λ,u)是一個(gè)標(biāo)量和向量,公式如下 特征值和特征向量的好處在于,每個(gè)向量都可以寫(xiě)成其他特征向量的組合。然后,在離散系統(tǒng)中特征向量控制從無(wú)論什么初始狀態(tài)的演化,因?yàn)槿魏纬跏枷蛄靠梢越M合成特征向量的線性組合。 隨機(jī)矩陣和馬爾可夫鏈MDPs與馬爾科夫鏈非常接近,但在結(jié)構(gòu)上與馬爾科夫鏈并不相同。馬爾可夫鏈?zhǔn)怯赊D(zhuǎn)移矩陣P決定的。概率矩陣的作用類似于對(duì)動(dòng)作求和的轉(zhuǎn)移矩陣T(s,a,s')。在馬爾可夫鏈中,下一個(gè)狀態(tài)由: 這個(gè)矩陣P有一些特殊的值,你可以看到,這是一個(gè)特征值等于1的特征值方程。為了得到一個(gè)特征值等于1的矩陣,所有的列之和必須等于1。 我們現(xiàn)在在RL中尋找的是,我們的解的演化如何與概率分布的收斂相關(guān)?我們通過(guò)為V 和Q 制定線性算子(矩陣)的迭代運(yùn)算符B。我們使用的值和q值的向量而不是特征向量,他們會(huì)收斂于特征向量,所以可以看出特征向量實(shí)際控制了整個(gè)系統(tǒng)。 B,像一個(gè)線性變換的特征向量,特征值λ= 1。 任何初值分布都收斂于特征空間的形狀。這個(gè)例子并沒(méi)有顯示Bellman更新的確切特征值,但是當(dāng)這些值遞歸更新時(shí),圖片顯示了空間的形狀是如何演變的。一開(kāi)始,這些值是完全未知的,但是隨著學(xué)習(xí)的出現(xiàn),這些已知的值會(huì)逐漸收斂,以與系統(tǒng)完全匹配。 Bellman更新到目前為止,我們知道如果我們可以用更簡(jiǎn)單的形式表示Bellman更新,那么將會(huì)出現(xiàn)一個(gè)方便的結(jié)構(gòu)。我們?nèi)绾螌的更新表示為一個(gè)簡(jiǎn)單的更新方程?我們從一個(gè)q迭代方程開(kāi)始。 MDP的Q-迭代. 要實(shí)現(xiàn)這種轉(zhuǎn)變,需要幾個(gè)小步驟。 這樣就將我們的系統(tǒng)移向一個(gè)線性算子(矩陣) i)讓我們把一些術(shù)語(yǔ)重新表述為一般形式更新的前半部分,R和T的總和,是一個(gè)明確的獎(jiǎng)勵(lì)數(shù)字;我們稱之為R(s),接下來(lái),我們將轉(zhuǎn)換的總和轉(zhuǎn)換為一個(gè)概率矩陣(和一個(gè)馬爾可夫矩陣匹配,非常方便)。此外,這將導(dǎo)致下一步,U的生成。 ii)讓我們把它變成一個(gè)向量方程。我們最感興趣的是MDP的U是如何繼續(xù)演進(jìn)的。U隱含著值或q值。我們可以簡(jiǎn)單地把Q改寫(xiě)成U,而不需要做太多改變,但這意味著我們假設(shè)的策略是固定的。 重要的是要記住,即使對(duì)于一個(gè)多維的物理系統(tǒng)——如果我們將所有測(cè)量到的狀態(tài)疊加成一個(gè)長(zhǎng)數(shù)組,狀態(tài)的U也是一個(gè)向量。一個(gè)固定的策略不會(huì)改變收斂性,它只是意味著我們必須重新訪問(wèn)它來(lái)學(xué)習(xí)如何迭代地獲得一個(gè)策略。 iii)假設(shè)策略是固定的如果你假設(shè)一個(gè)固定的策略,那么a的最大值就消失了。最大化算符明顯是非線性的,但是在線性代數(shù)中有一些形式是特征向量加上一個(gè)額外的向量(廣義特征向量)。 上面的這個(gè)等式是關(guān)于U的Bellman更新的一般形式。我們想要一個(gè)線性算子B,然后我們可以看到這是一個(gè)特征值演化方程。它看起來(lái)有點(diǎn)不同,但這是我們最終想要的形式,減去幾個(gè)線性代數(shù)斷言,所以我們有了Bellman更新。 ? 在計(jì)算上,我們可以得到我們想要的特征向量,因?yàn)樵谶@個(gè)過(guò)程中所做的假設(shè),所以在分析上這樣做是有挑戰(zhàn)性的, ? 結(jié)尾線性算子向你展示了某些離散的線性系統(tǒng)是如何推導(dǎo)的——而我們?cè)趶?qiáng)化學(xué)習(xí)中使用的環(huán)境就是遵循這種結(jié)構(gòu)。 我們收集的數(shù)據(jù)的特征值和特征向量可以表示一個(gè)RL問(wèn)題的潛在值空間。 變量替換、線性變換、在線q-learning(而不是這里的q-iteration)中的擬合,以及更多的細(xì)節(jié)將在以后的文章中討論。 作者 | Nathan Lambert |
|
來(lái)自: taotao_2016 > 《代數(shù)》