深入淺出強(qiáng)化學(xué)習(xí)原理入門
第2章 馬爾可夫決策過程
- 馬爾可夫性蔼紧, 當(dāng)前系統(tǒng)的下一個(gè)狀態(tài)僅與當(dāng)前狀態(tài)有關(guān)仙辟,而與以往狀態(tài)無關(guān)
- 馬爾可夫過程,以一定的概率在有限狀態(tài)下轉(zhuǎn)換撑教,吃飯睡覺打豆豆。偷遗。墩瞳。
- 馬爾可夫決策過程,馬爾可夫決策過程(S,A,P,R,\gamma)氏豌,S是有限狀態(tài)集合喉酌,A是有限動(dòng)作集合,P為狀態(tài)轉(zhuǎn)移泵喘,R是回報(bào)函數(shù)泪电,\gamma是折扣因子纪铺,馬爾可夫決策過程與馬爾可夫過程不同的是它的動(dòng)作是帶轉(zhuǎn)移概率的
- 強(qiáng)化學(xué)習(xí)的目標(biāo)是在給定的馬爾可夫決策過程中尋找最優(yōu)策略相速,這個(gè)策略指的是狀態(tài)到動(dòng)作的映射,在q-learning中鲜锚,這個(gè)策略就是q表突诬,第一維是狀態(tài),第二維是動(dòng)作
- 策略芜繁,所謂策略是指狀態(tài)到動(dòng)作的映射旺隙,在q-learning中指的是從一個(gè)狀態(tài)轉(zhuǎn)移到下一個(gè)狀態(tài)到概率
- 狀態(tài)值函數(shù)V,智能體在狀態(tài)s時(shí)采用策略\pi采取一系列連續(xù)動(dòng)作得到的累積回報(bào)的期望骏令,詳細(xì)一點(diǎn)就是智能體處于狀態(tài)s蔬捷,采用策略pi后所有一系列動(dòng)作得到的回報(bào)累積,這里之所以要加期望榔袋,是因?yàn)橛行┎呗圆扇〉膭?dòng)作是概率周拐,比如書中的例子一個(gè)人在某個(gè)狀態(tài)睡覺打游戲是有一定概率大,都有可能發(fā)生—挖坑摘昌,書中圖2.4圓圈中的狀態(tài)值函數(shù)是怎么計(jì)算出來的速妖?
- 狀態(tài)行為值函數(shù)Q,智能體在狀態(tài)s時(shí)采取一步動(dòng)作后進(jìn)入下一個(gè)狀態(tài)得到的狀態(tài)值函數(shù)
- 挖坑—什么是貝爾曼方程聪黎?
第3章 基于模型的動(dòng)態(tài)規(guī)劃方法
理解公式v_{k+1}(s) = \sum_{a\in A}\pi(a|s)(R_sa+\gamma\sum_{s\in S}P_{ss
}v_k(s`))就行
強(qiáng)化學(xué)習(xí)中主要使用值函數(shù)進(jìn)行策略評(píng)估和策略改善罕容,即訓(xùn)練與推理。上面的公式就是值函數(shù)迭代的公式(高斯塞德爾迭代法)稿饰,從圖3.7理解锦秒,當(dāng)前狀態(tài)的值函數(shù)等于采取所有動(dòng)作得到的回報(bào)并加上所到達(dá)狀態(tài)的值函數(shù)的期望,具體計(jì)算方法見圖3.7下面的那個(gè)計(jì)算例子喉镰。
利用值函數(shù)進(jìn)行推理采用貪婪策略旅择,即從當(dāng)前狀態(tài)出發(fā),把所有可以采取的動(dòng)作都做一遍侣姆,哪個(gè)回報(bào)大就采用哪個(gè)動(dòng)作
第4章 基于蒙特卡羅的強(qiáng)化學(xué)習(xí)方法
- 蒙特卡羅積分生真,求某個(gè)函數(shù)在某個(gè)區(qū)間的定積分沉噩,將函數(shù)先乘以某個(gè)分布已知的函數(shù)\pi(x),然后在這個(gè)已知的分布上采樣,最后求和的均值柱蟀。
- 原理川蒙,和動(dòng)態(tài)規(guī)劃的一樣,有衡量在某個(gè)狀態(tài)s采取一些列動(dòng)作獲得回報(bào)和的狀態(tài)值函數(shù)V长已,有Q函數(shù)畜眨,不同的是動(dòng)態(tài)規(guī)劃的值函數(shù)是迭代出來的,蒙特卡洛方法的V函數(shù)是采樣然后計(jì)算出來的
- 同策略术瓮,產(chǎn)生數(shù)據(jù)的策略和要評(píng)估改善的策略是同一個(gè)策略康聂,即訓(xùn)練的時(shí)候在狀態(tài)s采取的動(dòng)作和在推理的時(shí)候在狀態(tài)s采取的動(dòng)作是否一致,dqn中就是異策略胞四,訓(xùn)練的時(shí)候?yàn)榱吮M可能走過所有的狀態(tài)恬汁,狀態(tài)到動(dòng)作映射會(huì)覆蓋所有的狀態(tài),但是推理的時(shí)候只會(huì)選取最有的策略
第5章 基于時(shí)間差分的強(qiáng)化學(xué)習(xí)方法
TD方法:V(S_t)<-V(S_t)+\alpha(R_{t+1}+\gamma V(S_{t+1})-V(S_t))
值函數(shù)等于上一步的值函數(shù)的一個(gè)比例加上當(dāng)前動(dòng)作后的reward和下一個(gè)狀態(tài)的值函數(shù)
- 時(shí)序差分方法辜伟,蒙特卡羅方法蕊连,動(dòng)態(tài)規(guī)劃方法的區(qū)別與聯(lián)系,動(dòng)態(tài)規(guī)劃方法用空間換時(shí)間游昼,把每個(gè)動(dòng)作后的Q表都記錄下來甘苍,在求某個(gè)狀態(tài)的值函數(shù)時(shí),在采取了某個(gè)動(dòng)作走到下一個(gè)狀態(tài)時(shí)烘豌,下一個(gè)狀態(tài)的Q值已經(jīng)記錄下來了载庭,由上一次記錄并存儲(chǔ)下來,舉例見書中圖3.7廊佩,這個(gè)方法需要知道狀態(tài)的轉(zhuǎn)移概率囚聚,在每個(gè)狀態(tài),采取哪個(gè)動(dòng)作的概率都是需要已知标锄,這個(gè)現(xiàn)實(shí)中是 不好弄的顽铸;蒙特卡羅可以解決動(dòng)態(tài)規(guī)劃需要狀態(tài)轉(zhuǎn)移矩陣的問題,它從隨機(jī)初始狀態(tài)開始料皇,通過多次實(shí)驗(yàn)谓松,統(tǒng)計(jì)從狀態(tài)s到最終狀態(tài)得到的獎(jiǎng)勵(lì),缺點(diǎn)是效率低践剂,每次都需要等到實(shí)驗(yàn)做完鬼譬,且需要多次實(shí)驗(yàn);時(shí)間差分結(jié)合了兩者優(yōu)勢(shì)逊脯,用Q表存儲(chǔ)記錄每次實(shí)驗(yàn)后的狀態(tài)值函數(shù)优质,但是像蒙特卡洛方法一樣不停的與周圍環(huán)境交互得到新數(shù)據(jù),不要先驗(yàn)概率
TD(\lambda):TD方法使用了下一個(gè)狀態(tài)的值函數(shù),TD(\lambda)使用多個(gè)
動(dòng)態(tài)規(guī)劃巩螃,蒙特卡洛演怎,時(shí)間差分的對(duì)比
蒙特卡洛:Q(s,a)\leftarrow Q(s,a) + \alpha(G_t - Q(s,a))
在狀態(tài)s處的狀態(tài)行為值函數(shù)為狀態(tài)行為值函數(shù)+隨機(jī)試驗(yàn)到狀態(tài)s時(shí)的累積回報(bào)(挖坑,Q不是不記憶的嗎避乏?)
時(shí)間差分:Q(s,a)\leftarrow Q(s,a)+\alpha(r + \gamma Q(s,a
)- Q(s,a))
時(shí)間差分用空間換時(shí)間颤枪,用一張Q表記錄以前做過的試驗(yàn),更新的時(shí)候通過走一步進(jìn)入狀態(tài)s`淑际,并加上以前記錄的狀態(tài)s·共同得到狀態(tài)s處的狀態(tài)行為值函數(shù),
第6章 基于值函數(shù)逼近的強(qiáng)化學(xué)習(xí)方法
基于值函數(shù)逼近理論扇住,在Q-learning春缕,時(shí)間差分,蒙特卡洛等方法中艘蹋,使用Q表記錄在什么樣的狀態(tài)采取什么動(dòng)作會(huì)得到什么回報(bào)值锄贼,基于值函數(shù)逼近的就是使用參數(shù)\theta表示值函數(shù),輸入狀態(tài)和動(dòng)作女阀,得到回報(bào)的值函數(shù)
-
dqn宅荤, Q(s,a)\leftarrow Q(s,a)+\alpha(r + \gamma Q(s
,a
)- Q(s,a))\theta_{t+1}=\theta + \alpha[r + \gamma max_{a`}Q(s`,a`;\theta)- Q(s,a;\theta)] \Delta (Q(s,a;\theta))
計(jì)算TD目標(biāo)網(wǎng)絡(luò)的參數(shù)r + \gamma max_{a}Q(s
,a`;\theta)的參數(shù)為\theta-,而計(jì)算值函數(shù)的網(wǎng)絡(luò)參數(shù)為\theta浸策,一條數(shù)據(jù)包括當(dāng)前狀態(tài)s_1冯键,采取動(dòng)作a,立即回報(bào)r庸汗,下一個(gè)動(dòng)作s_2惫确,取出數(shù)據(jù)訓(xùn)練時(shí),\theta每一步都更新蚯舱,\theta-每隔一定步數(shù)才更新改化;計(jì)算的方法為用貪婪策略在某些狀態(tài)選取動(dòng)作,存儲(chǔ)一下數(shù)據(jù)枉昏,然后采樣通過上式子更新參數(shù)\theta陈肛,目標(biāo)網(wǎng)絡(luò)參數(shù)只計(jì)算,等到若干步以后兄裂,才將Q函數(shù)的\theta更新到目標(biāo)函數(shù)的Q函數(shù)中
第7章 基于策略梯度的強(qiáng)化學(xué)習(xí)方法
直接搜索策略
第8章 基于置信域策略優(yōu)化的強(qiáng)化學(xué)習(xí)方法
- TRPO Trust Region Policy Optimization基于置信域策略優(yōu)化
- \eta(\tilde\pi)=\eta(\pi) + E_{s_0,a_0…\tilde\pi}[\sum_{t=0}{\infty}\gammatA_{\pi}(s_t,a_t)]句旱,為了搜索好的策略,即關(guān)于的策略函數(shù)每前進(jìn)一步晰奖,回報(bào)函數(shù)都會(huì)比以前的好前翎,需要更好的\theta的步長,或者把回報(bào)函數(shù)更改為舊回報(bào)函數(shù)加上一項(xiàng)不小于0的新值畅涂,以保證遞增港华,A_{\pi}(s,a)=Q_{\pi}(s,a)-V_{\pi}(s)
- 信息論,H(P,Q)=-\int P(x)logQ(x){\rm d}x,交叉熵常用來作為機(jī)器學(xué)習(xí)的損失函數(shù)午衰,真是樣本分布是P(x)立宜,模型概率分布是Q(x)冒萄,兩者相等時(shí)最小
- 優(yōu)化方法,最速下降法橙数,就是朝著導(dǎo)數(shù)方向前進(jìn)尊流,應(yīng)該就是梯度下降法;牛頓法灯帮,使用二階導(dǎo)數(shù)性質(zhì)的梯度下降法崖技,x_{k+1}=x_k + d_k, G_kd_k=g_k,g_k是一階導(dǎo)數(shù)钟哥,G_k是二階導(dǎo)數(shù)迎献,反正就是迭代更新參數(shù)x
第9章 基于確定性策略搜索的強(qiáng)化學(xué)習(xí)方法
隨機(jī)策略指在狀態(tài)s確定時(shí),智能體采取的動(dòng)作不一定是一樣的腻贰,但是確定性策略則不一樣吁恍,在狀態(tài)s一定是,它所采取的動(dòng)作一定是一樣的播演。
- Actor-Critic- Algorithm冀瓦,行動(dòng)與評(píng)估策略,行動(dòng)策略是隨機(jī)的以保證可以探索環(huán)境写烤,評(píng)估策略是確定性的
- ddpg翼闽,r_t+\gamma Qw(s_{t+1},u_{\theta}(s_{t+1})-Qw(s_t, a_t)),行動(dòng)策略網(wǎng)絡(luò)是u,參數(shù)為\theta,評(píng)估網(wǎng)絡(luò)Q洲炊,參數(shù)是w肄程,訓(xùn)練的時(shí)候采用貪婪策略探索環(huán)境,使用確定性策略更新Q选浑,評(píng)估的時(shí)候使用Q函數(shù)
- DQN和DDPG的區(qū)別蓝厌,DQN時(shí)離散的,DDPG時(shí)連續(xù)的古徒;DQN只有一個(gè)網(wǎng)絡(luò)拓提,DDPG有兩個(gè)網(wǎng)絡(luò);
第10章 基于引導(dǎo)策略搜索的強(qiáng)化學(xué)習(xí)方法
無模型時(shí)隧膘,智能體通過向環(huán)境試錯(cuò)得到策略網(wǎng)絡(luò)代态,gps算法先通過控制相從數(shù)據(jù)中獲取好的數(shù)據(jù),監(jiān)督相從控制相產(chǎn)生的數(shù)據(jù)學(xué)習(xí)模型疹吃;之所以要這么干的原因是有些網(wǎng)路有成千上萬個(gè)參數(shù)蹦疑,用常見的環(huán)境試錯(cuò),無法從環(huán)境中學(xué)習(xí)到好的策略
第11章 逆向強(qiáng)化學(xué)習(xí)
通常強(qiáng)化學(xué)習(xí)的回報(bào)函數(shù)都是人為經(jīng)驗(yàn)給出的萨驶,但是這個(gè)是很主觀的歉摧,逆向強(qiáng)化學(xué)習(xí)就是為了解決如何學(xué)習(xí)強(qiáng)化學(xué)習(xí)回報(bào)而來的。
- 學(xué)徒學(xué)習(xí)方法,智能體從專家示例中學(xué)習(xí)回報(bào)函數(shù)
- 最大邊際規(guī)劃方法叁温,先建模D={(x_i,A_i,p_i,F_i,y_i,L_i)}從左到右依次為狀態(tài)空間再悼,動(dòng)作空間,狀態(tài)轉(zhuǎn)移概率膝但,回報(bào)函數(shù)的特征向量冲九,專家軌跡,策略損失函數(shù)跟束,學(xué)習(xí)者要照一個(gè)特征到回報(bào)的現(xiàn)行映射