重温强化学习之深度强化学习
1、簡(jiǎn)介
? ? ? ? ? ? ??
? ? ? ? ? ? ? ?輸入特征和真實(shí)特征相距比較遠(yuǎn),加一個(gè)深度學(xué)習(xí)提取源的特征
2、基于值函數(shù)的深度強(qiáng)化學(xué)習(xí)
意義:不用函數(shù)近似無法解決大規(guī)模的問題,用函數(shù)近似訓(xùn)練不穩(wěn)定,首次證明了能夠通過原始像素解決游戲問題,并且對(duì)所有游戲通用
主要論文:
Playing Atari with Deep Reinforcement Learning?(2013)
Human-level control through deep reinforcement learning(2015)
關(guān)鍵技術(shù):
? ? ? ? ? ? ?Q-learning? + DNN
? ? ? ? ? ? ?Experience Replay
? ? ? ? ? ? ?Target Network
DQN算法:
? ? ? ? ? ? ?
DQN主要分為兩個(gè)部分:一部分是交互,一部分是學(xué)習(xí)
DQN主要貢獻(xiàn)是:1、經(jīng)驗(yàn)回放(解決數(shù)據(jù)相關(guān)性問題)? 2、構(gòu)建target-Network(減小誤差)
之前存在的問題是數(shù)據(jù)之間存在相關(guān)性,例如游戲畫面,前一秒的畫面和下一秒的畫面之間存在的關(guān)系,所以為了解決這種情況通過采樣的方式把當(dāng)前狀態(tài)、動(dòng)作、獎(jiǎng)勵(lì)和下一個(gè)狀態(tài)存入到經(jīng)驗(yàn)池當(dāng)中(對(duì)應(yīng)上面圖片Store transition(....) in D)
這里注意一下,因?yàn)槟愦嫒霐?shù)據(jù)(數(shù)據(jù)的策略)和下一次從這里面抽樣用的策略不是一個(gè)策略,所以是異策略,這也是不選用sarsa 算法而是Q-learning算法的原因
從上述算法可以看出更新參數(shù)之后,每隔C步之后,重新把Q網(wǎng)絡(luò)復(fù)制新的Q網(wǎng)絡(luò)
?
針對(duì)DQN的改進(jìn)1:Double DQN:
主要論文:Deep Reinforcement Learning with Double Q-learning(2016)
地址連接:https://arxiv.org/pdf/1509.06461v3.pdf
之前存在的問題是:Q-learning中存在過估計(jì):
? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
理解例子:
? ? ? ? ?對(duì)于狀態(tài)s下,如果對(duì)于所有的a,真實(shí)的q(s,a)均為0,但是估計(jì)值由于不精確,會(huì)導(dǎo)致有些大于0,有些小于0.對(duì)估計(jì)值取最大,會(huì)引入一個(gè)正向的偏差
? ? ? ? ? ? ? ? ? ? ????
主要針對(duì)DQN對(duì)y進(jìn)行變化:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
針對(duì)DQN的改進(jìn)2:Dueling?DQN
主要優(yōu)勢(shì):對(duì)于很多狀態(tài)并不需要估計(jì)每個(gè)動(dòng)作的值,增加了V函數(shù)的學(xué)習(xí)機(jī)會(huì),V函數(shù)的泛化性能好,當(dāng)有新動(dòng)作加入時(shí),并不需要重新學(xué)習(xí),減少了Q函數(shù)由于狀態(tài)和動(dòng)作維度差導(dǎo)致的噪聲和突變
? ? ? ? ? ? ? ? ? ? ? ??
主要論文:Dueling Network Architectures for Deep Reinforcement Learning(2016)
地址連接:https://arxiv.org/abs/1511.06581
? ? ? ? ? ? ? ? ? ? ? ? ?
針對(duì)DQN的改進(jìn)3:Prioritized Experience Replay
? ? ? ? ? ? ? ? ? ? ? ? ? ??
主要改進(jìn):針對(duì)DQN來說,DQN一個(gè)重要的改進(jìn)就是Experience Replay,訓(xùn)練時(shí)從經(jīng)驗(yàn)池均勻采樣,所以針對(duì)這部分改進(jìn):Prioritized Experience Replay就是維護(hù)一個(gè)帶優(yōu)先級(jí)的Experience Replay,具體有如下幾方面:
? ? ? 不同的經(jīng)驗(yàn)的權(quán)重不同;用TD誤差去衡量權(quán)重;需要使用sum-tree以及 binary heap data structure去實(shí)現(xiàn);新的transition的TD誤差會(huì)被設(shè)置為最大;類似DP中的優(yōu)先清理;Experience Replay使得更新不受限于實(shí)際經(jīng)驗(yàn)的順序,Prioritized Experience Replay 使得更新不受限于實(shí)際經(jīng)驗(yàn)的頻率
主要論文:Prioritized Experience Replay
具體使用時(shí)存在一些問題:TD誤差對(duì)噪聲敏感;TD誤差小的Transition長(zhǎng)時(shí)間不更新;過多關(guān)注TD誤差大的transition丟失樣本多樣性;使用某種分布采樣經(jīng)驗(yàn),會(huì)引入誤差
解決辦法:
1、兩種變體:
? ? ? ? ? ?
? ? ? ? ? ?或
? ? ? ? ??
2、加入重要性采樣來消除誤差
?
Prioritized Experience Replay算法
? ? ? ? ? ? ? ? ? ? ? ? ? ??
結(jié)構(gòu)圖:
Rainbow:
論文:Rainbow: Combining Improvements in Deep Reinforcement Learning
結(jié)合DQN及多種DQN變體:
? ? ? ?具體參考論文,論文中實(shí)驗(yàn)結(jié)果截圖如下所示:
? ? ? ? ? ? ? ? ? ??
3、基于策略的深度強(qiáng)化學(xué)習(xí)
策略梯度框架
? ? ? 1)、DPG:
? ? ? ? ? ?主要論文:Deterministic Policy Gradient Algorithms(2014)
? ? ? ? ? ?將策略梯度定理用到了高維和連續(xù)動(dòng)作
? ? ? ? ? ? 常規(guī)的策略梯度方法無法用到高維和連續(xù)動(dòng)作空間
? ? ? ? ? ? ? ? ? ?連續(xù)動(dòng)作無法使用概率分布輸出的形式
? ? ? ? ? ? ? ? ? ?高維動(dòng)作空間中采樣費(fèi)時(shí)
? ? ? ? ? ? ? ? ? ?隨機(jī)策略梯度是通過采樣的方式估算策略梯度,需要在狀態(tài)空間和動(dòng)作空間內(nèi)采樣
? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ??
? ? ? ? ?直接采用確定性策略輸出:a = pi(s)
? ? ? ? ?實(shí)現(xiàn)的過程中出現(xiàn)幾個(gè)問題:
? ? ? ? 1)確定性策略情況下如何求策略梯度?
? ? ? ? 2)如何探索?
? ? ? ? ?DPG證明確定性策略梯度定理的存在,并且和Q函數(shù)梯度建立關(guān)系:
? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? 只需要對(duì)狀態(tài)S進(jìn)行積分,使用off-policy的方式探索并更新(需要重要性采樣)
? 2)DDPG
? ? 主要論文:Continuous Control with Deep Reinforcement Learning (2016)
? ? 結(jié)合DQN和DPG,使用DQN兩種技術(shù):Experience Replay 和 Target Network,利用隨機(jī)過程產(chǎn)生探索性動(dòng)作
? ? ? ? ? ? ? ? ? ? ? ? ?
DDPG算法:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
? 3) A3C
主要論文:Asynchronous Methods for Deep Reinforcement Learning(2016)
Online的算法和DNN結(jié)合后不穩(wěn)定(樣本關(guān)聯(lián)性),通過創(chuàng)建多個(gè)agent在多個(gè)環(huán)境執(zhí)行異步學(xué)習(xí)構(gòu)建batch:來自不同環(huán)境的樣本無相關(guān)性,不依賴于GPU和大型分布式系統(tǒng),不同線程使用了不同的探索策略,增加探索量?
A3C算法:
? ?4)A2C
? ? ? 改異步為同步,能更好的利用GPU,在batch_size較大時(shí)效果好
? ? ??? ? ?
框架結(jié)構(gòu)圖:
? ? ?? ?
?
總結(jié)
以上是生活随笔為你收集整理的重温强化学习之深度强化学习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 重温强化学习之策略梯度算法
- 下一篇: 模型评估(笔记)