目錄:
- 強(qiáng)化學(xué)習(xí)問題
- 強(qiáng)化學(xué)習(xí)的組成
- 智能體的組成
- 強(qiáng)化學(xué)習(xí)分類
- 強(qiáng)化學(xué)習(xí)一些重要概念
1. 強(qiáng)化學(xué)習(xí)問題
- 面向智能體的學(xué)習(xí)——通過一個(gè)環(huán)境進(jìn)行交互來實(shí)現(xiàn)目標(biāo)舟误。所有的學(xué)習(xí)樣本來自于和環(huán)境的交互
- 通過是錯(cuò)和優(yōu)化進(jìn)行學(xué)習(xí)——用試錯(cuò)后的獎勵(lì)(或懲罰)進(jìn)行學(xué)習(xí)携冤。智能體并不知道怎么做最好
1.1 強(qiáng)化學(xué)習(xí)與其他機(jī)器學(xué)習(xí)的關(guān)系
監(jiān)督學(xué)習(xí)(supervised learning): 有即時(shí)標(biāo)簽的學(xué)習(xí)(分類灌曙、回歸等)
非監(jiān)督學(xué)習(xí)(unsupervised learning):無標(biāo)簽學(xué)習(xí)(聚類問題)
強(qiáng)化學(xué)習(xí):有延時(shí)獎勵(lì)的學(xué)習(xí)問題,介于監(jiān)督與非監(jiān)督之間
PS:監(jiān)督學(xué)習(xí)本質(zhì)上也可以認(rèn)為是強(qiáng)化學(xué)習(xí)的一種特殊形式(無延遲場景)
舉個(gè)例子奸攻,給了一些人臉圖片
- 監(jiān)督學(xué)習(xí):同時(shí),給標(biāo)簽(人名),然后通過數(shù)據(jù)學(xué)習(xí)這些人臉是誰的臉
- 要求帶標(biāo)簽的數(shù)據(jù)静稻,比較昂貴
- 標(biāo)注數(shù)據(jù)也是一門學(xué)問
- 非監(jiān)督學(xué)習(xí):沒有標(biāo)簽,直接觀察人臉去判斷哪些臉屬于同一個(gè)人
- 無標(biāo)簽數(shù)據(jù)的數(shù)量非常大匈辱,容易獲得
- 強(qiáng)化學(xué)習(xí):沒有標(biāo)簽信號振湾,只有獎勵(lì)信號。
- 即時(shí)獎勵(lì):如果分錯(cuò)了亡脸,只告訴你錯(cuò)了
- 延遲獎勵(lì):等所有的分類工作完成后押搪,告訴你總分如何
1.2 強(qiáng)化學(xué)習(xí)的直觀特性
- 沒有監(jiān)督信號(告訴你該怎么做),只有獎勵(lì)信號(只說對錯(cuò))(具體 vs 抽象)
- 獎勵(lì)信號大都是延遲的浅碾,不是瞬時(shí)的
- 問題是一個(gè)優(yōu)化問題
- 數(shù)據(jù)具有時(shí)間相關(guān)性大州,不滿足獨(dú)立同部分(iid)假設(shè)
- 智能體的動作是可以影響它之后的數(shù)據(jù)
比如學(xué)走迷宮,智能體一直開左邊的門垂谢。通過開左邊的門數(shù)據(jù)學(xué)出來的東西是永遠(yuǎn)不知道右邊有什么厦画,就是有些東西你不去嘗試,就永遠(yuǎn)不知道什么樣的滥朱。所以怎么去做動作根暑,怎么去做決策去改變你未來所看到的數(shù)據(jù)分布 讓智能體更好地學(xué)習(xí)也是一門學(xué)問力试。
強(qiáng)化學(xué)習(xí)是把數(shù)據(jù)收集也納入學(xué)習(xí)的范疇。智能體怎么去和環(huán)境交互獲得想要的數(shù)據(jù)驅(qū)動我的學(xué)習(xí)算法去學(xué)得更好购裙。
1.3 和賭博機(jī)問題的關(guān)系
- 賭博機(jī)(bandit)問題:單步優(yōu)化問題懂版,且沒有輸入狀態(tài)。每一個(gè)時(shí)刻都有獎勵(lì)躏率,每次決策跟后續(xù)狀態(tài)沒有關(guān)系躯畴。(例如:搖臂機(jī),擲骰子)
-
上下文賭博機(jī)(contextual bandit)問題:在賭博機(jī)問題上增加了狀態(tài)輸入薇芝,所作出的決策是跟狀態(tài)相關(guān)的蓬抄。
2. 強(qiáng)化學(xué)習(xí)組成
在強(qiáng)化學(xué)習(xí)中有五個(gè)核心組成部分,它們分別是:環(huán)境(Environment)夯到、智能體(Agent)嚷缭、狀態(tài)(State)、動作(Action)和獎勵(lì)(Reward)耍贾。在某一時(shí)間節(jié)點(diǎn) t
:
- 智能體在從環(huán)境中感知其所處的狀態(tài) St
- 智能體根據(jù)某些準(zhǔn)則選擇動作 At
- 環(huán)境根據(jù)智能體選擇的動作阅爽,向智能體反饋獎勵(lì) Rt+1
2.1 智能體與環(huán)境
- 智能體是指強(qiáng)化學(xué)習(xí)需要優(yōu)化的部分,是我們能夠精確控制的部分
- 環(huán)境是我們不能直接控制的部分
2.2 獎勵(lì)
- 獎勵(lì)(reward)是強(qiáng)化學(xué)習(xí)的核心荐开,與解決的問題相關(guān)付翁,區(qū)別于其他機(jī)器學(xué)習(xí)的標(biāo)志特征。
- 獎勵(lì)的特點(diǎn)
- 獎勵(lì)Rt是一個(gè)標(biāo)量反饋
- 它衡量了智能體在時(shí)間t上做的有多好
- 智能體的目標(biāo)就是最大化累計(jì)獎勵(lì)
獎勵(lì)假設(shè)
強(qiáng)化學(xué)習(xí)的目標(biāo)就是最大化期望累計(jì)獎勵(lì)
如果一個(gè)問題不滿足獎勵(lì)假設(shè)晃听,那么就不能用強(qiáng)化學(xué)習(xí)去解決
獎勵(lì)不一定要求一定要有正有負(fù)百侧,只要存在相對大小就可以了
- 長期獎勵(lì)
- 每一個(gè)動作都可能有一個(gè)長期的結(jié)果
- 獎勵(lì)可能是延遲的
- 有時(shí)我們需要犧牲一些短期獎勵(lì)來獲得更多的長期獎勵(lì)
- 獎勵(lì)值與回報(bào)值
當(dāng)智能體在時(shí)間t做出動作A_t時(shí),會在未來收到獎勵(lì)序列Rt,Rt+1,Rt+2,...能扒。我們的目的是使累計(jì)獎勵(lì)最大佣渴。一種通用的累計(jì)獎勵(lì)的定義方式是將這些獎勵(lì)值進(jìn)行加權(quán)求和:
我們把上面的標(biāo)量Gt稱為回報(bào)值(Return)〕醢撸回報(bào)值衡量了動作At對未來結(jié)果的影響辛润,強(qiáng)化學(xué)習(xí)的目的即變成了在每個(gè)時(shí)刻,使未來的期望回報(bào)值最大
其中wt表示不同時(shí)間的加權(quán)系數(shù)
- 無衰減回報(bào)值(undiscounted return)越平,
我們將所有時(shí)刻的獎勵(lì)看成一樣重要的 - 衰減回報(bào)值(discounted return)频蛔,(γ為衰減系數(shù))
- γ = 0時(shí), 退化成賭博機(jī)問題
- γ = 1時(shí)秦叛, 變成無衰減回報(bào)值
- γ ∈ (0,1)時(shí)晦溪, γ值衡量了我們隊(duì)未來獎勵(lì)的關(guān)注度。γ越大挣跋,表示我們越關(guān)注長期獎勵(lì)三圆;γ越小,表示我們越關(guān)注短期獎勵(lì)
2.3 歷史和狀態(tài)
歷史(history)是一個(gè)觀測、動作和獎勵(lì)的序列(智能體在時(shí)間t以前所有的交互變量)
根據(jù)歷史:
- 智能體選擇動作
- 環(huán)境產(chǎn)生新的觀測和獎勵(lì)
狀態(tài)是歷史的一種表達(dá)舟肉,根據(jù)狀態(tài)我們可以判斷接下來發(fā)生什么
本質(zhì)上修噪,狀態(tài)是歷史的一個(gè)函數(shù)
舉個(gè)例子
下棋時(shí),面對殘局路媚,其實(shí)可以直接接著下黄琼,無需關(guān)心之前是怎么下的。此時(shí)狀態(tài)
玩打磚塊游戲時(shí)整慎,要提前知道小球的移動速度和移動方向脏款,此時(shí)前幾幀的觀測被認(rèn)為是狀態(tài)St = Ot-2. Ot-1, Ot
玩CS時(shí), 可能整個(gè)歷史都被認(rèn)為是狀態(tài)
-
環(huán)境狀態(tài)
環(huán)境狀態(tài)是環(huán)境的內(nèi)部表達(dá), 所有能夠影響環(huán)境產(chǎn)生新的觀測/獎勵(lì)的數(shù)據(jù)都被認(rèn)為是環(huán)境狀態(tài)的一部分裤园。
環(huán)境狀態(tài)一般是智能體觀察不到的
即使環(huán)境狀態(tài) 撤师,一般也包含了不相關(guān)的信息 -
智能體狀態(tài)
智能體狀態(tài)是智能體的內(nèi)部表達(dá), 所有能夠影響智能體做出下一個(gè)動作的數(shù)據(jù)都被認(rèn)為是智能體狀態(tài)的一部分。
強(qiáng)化學(xué)習(xí)使用的狀態(tài)就是智能體狀態(tài)拧揽。
智能體狀態(tài)可能是歷史的任何函數(shù)
機(jī)器人控制
- 環(huán)境狀態(tài):所有機(jī)械零件的參數(shù)剃盾、地面摩擦系數(shù)等
- 智能體狀態(tài): 傳感器所獲得的數(shù)據(jù)
3D游戲 - 環(huán)境狀態(tài):所有的游戲參數(shù)以及對手信息
- 智能體狀態(tài):玩家所能看到的觀測
對于智能體來說,環(huán)境狀態(tài)是未知的淤袜,智能體狀態(tài)是已知的痒谴。
智能體通過智能體狀態(tài)來做出相應(yīng)的動作.
全觀測
- 智能體能夠直接觀測到環(huán)境狀態(tài)
- 或者說智能體狀態(tài)等價(jià)于環(huán)境狀態(tài)(不是相等,只是等價(jià))
- 這是強(qiáng)化學(xué)習(xí)的主要研究問題——馬爾科夫決策過程
部分觀測
- 智能體不直接觀測到環(huán)境狀態(tài)
- 智能體狀態(tài)≠環(huán)境狀態(tài)
- 部分觀測下得馬爾科夫決策問題
2.4 動作
動作是智能體主動和環(huán)境交互的媒介铡羡,必須對環(huán)境起到一定的控制作用(尤其是對獎勵(lì))
要點(diǎn):
* 動作要能改變未來所能獲得的獎勵(lì)
* 獎勵(lì)的設(shè)置能被動作改變
如果上述兩點(diǎn)不滿足闰歪,那么就無法解這個(gè)強(qiáng)化學(xué)習(xí)問題
3. 智能體的組成
3.1 策略(Policy)
策略是智能體的核心,我們最終目的就是找到一個(gè)最優(yōu)策略蓖墅。通過策略可以描述智能體的行為。
直觀上描述:告訴智能體在什么狀態(tài)下應(yīng)該做什么事
分兩大類:
- 確定性策略
- 隨機(jī)蹙額略
3.2 值函數(shù)(Value Function)
值函數(shù)是對回報(bào)值的預(yù)測(期望)临扮,主要用來評價(jià)不同狀態(tài)的好壞和指導(dǎo)動作的選擇
3.3 模型(Model)
這里的模型指智能體所擁有的對環(huán)境的預(yù)測模型论矾,主要包含兩部分:
- P:預(yù)測下一個(gè)狀態(tài)是什么
- R:預(yù)測下一個(gè)獎勵(lì)是什么
將環(huán)境看成是一個(gè)黑盒子,只關(guān)心輸入輸出
4.強(qiáng)化學(xué)習(xí)的分類
- 按環(huán)境分類
- 全觀測
- 部分觀測
- 按智能體的成分分類
- 基于值函數(shù):學(xué)習(xí)值函數(shù)
- 基于策略:學(xué)習(xí)策略
- Actor Critic: 同時(shí)學(xué)習(xí)值函數(shù)和策略
- 按有無模型分類
- 無模型強(qiáng)化學(xué)習(xí)
- 基于模型的強(qiáng)化學(xué)習(xí)
- 按使用的手段分類
- 傳統(tǒng)強(qiáng)化學(xué)習(xí)
- 深度強(qiáng)化學(xué)習(xí)
5.強(qiáng)化學(xué)習(xí)的關(guān)鍵概念
5.1 學(xué)習(xí)與規(guī)劃
對于序列決策問題有兩個(gè)基本問題:
強(qiáng)化學(xué)習(xí)
- 環(huán)境未知
- 智能體與環(huán)境進(jìn)行交互
- 智能體會不斷地改善自己的策略
規(guī)劃(Planning)
環(huán)境已知
智能體根據(jù)模型直接計(jì)算杆勇,不用交互
智能體會不斷的改善自己的策略
既利用了模型進(jìn)行規(guī)劃贪壳,又與環(huán)境交互進(jìn)行強(qiáng)化學(xué)習(xí),這就構(gòu)成了基于模型的強(qiáng)化學(xué)習(xí)
當(dāng)有很精確的環(huán)境模型是蚜退,可以直接用規(guī)劃的方式解
5.2 Exploration & Exploitation
Exploration:為了能夠發(fā)現(xiàn)環(huán)境的更多信息
Exploitation:為了利用當(dāng)前已知的信息來最大化回報(bào)值
5.3 Prediction & Control
Prediction:給一個(gè)策略闰靴,評價(jià)該策略的好壞,即求對應(yīng)的值函數(shù)
Control:找到最優(yōu)的策略
這兩個(gè)過程構(gòu)成了強(qiáng)化學(xué)習(xí)的思路
Reference
- Zhou, Li. “A survey on contextual multi-armed bandits.” CoRR, abs/1508.03326 (2015).
- David Silver的reinforcement learning課件