版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第十二章 深度強(qiáng)化學(xué)習(xí)機(jī)器學(xué)習(xí)與
python
實踐機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 1
/
47第十二章
深度強(qiáng)化學(xué)習(xí)深度強(qiáng)化學(xué)習(xí)深度強(qiáng)化學(xué)習(xí)
=
深度學(xué)習(xí)
+
強(qiáng)化學(xué)習(xí)在強(qiáng)化學(xué)習(xí)中引入深度神經(jīng)網(wǎng)絡(luò)取得了巨大成功深度強(qiáng)化學(xué)習(xí)是人工智能的代表性方法David
Silver
提出人工智能
=
強(qiáng)化學(xué)習(xí)
+
深度學(xué)習(xí)。深度
Q
網(wǎng)絡(luò)
DQN、AlphaGo機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 2
/
47第十二章
深度強(qiáng)化學(xué)習(xí)目錄基于值函數(shù)的強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)3策略梯度和
Actor-Critic
方法4學(xué)習(xí)、推演和搜索機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 3
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí)目錄基于值函數(shù)的強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)3策略梯度和
Actor-Critic
方法4學(xué)習(xí)、推演和搜索機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 4
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)的基礎(chǔ)概念強(qiáng)化學(xué)習(xí)的基礎(chǔ)概念涉及決策和環(huán)境交互影響的問題代理(Agent):依據(jù)環(huán)境狀態(tài)做出決策的主體(決策函數(shù))。在時刻
t,代理觀察到環(huán)境狀態(tài)
st,并執(zhí)行動作
at。在
t
+
1,代理收到該動作的回報
rt+1,觀測到
st+1,并執(zhí)行
at+1。如此下去,直到這個過程以某種方式結(jié)束。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 5
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí) 強(qiáng)化學(xué)習(xí)的基礎(chǔ)概念強(qiáng)化學(xué)習(xí)的基礎(chǔ)概念強(qiáng)化學(xué)習(xí)是近似求解馬爾科夫決策過程MDP
的算法集。MDP
是一個五元組
(S,
A,
P,
R,
γ):S
是狀態(tài)集,st
∈
S;A
是動作集,at
∈
A;P
是轉(zhuǎn)移概率函數(shù)矩陣a(4)
R
是回報函數(shù),R
=
E(rs t+1
t t|s=s,a=
a);(5)
γ
∈
[0,
1]
是折現(xiàn)因子,
下一時刻單位回報在當(dāng)前的價值。目標(biāo):尋求決策函數(shù)π(a|s),使執(zhí)行該策略的期望累計回報最大?π=argmax
Eπ∞∑k=0確定性策略:?s,
?
a′,
s.t.
π(a′|s)
=
1,記為
a′
=
π′(s)。kγ
rt+k+1( ).機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 6/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí) 值函數(shù)和Bellman
方程值函數(shù)值函數(shù):給定某個策略
π
下,未來累積折現(xiàn)回報的期望狀態(tài)值函數(shù)
vπ
(s):vπ
(s)
=
Eπ
(Rt|st
=
s)動作狀態(tài)值函數(shù)
qπ
(s,
a):qπ
(s,
a)
=
Eπ
(Rt|st
=
s,
at
=
a)∞∑kR
= γ
rt t+k+1
t+1=
r +
γRt+1,
是時刻
t
開始的總回報。k=0值函數(shù)分解:vπ
(s)
=
Eπ
(rt+1
+
γvπ
(st+1)|st
=
s)qπ
(s,
a)
=
Eπ
(rt+1
+
γqπ
(st+1,
at+1)|st
=
s,
at
=
a)機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 7
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)和Bellman
方程基于值函數(shù)的強(qiáng)化學(xué)習(xí)值函數(shù)的
Bellman
方程條件概率展開
vπ
(s),qπ
(s,
a)π∑v
(s)
=
Pa∈At(a=
at|s=
sπ t
t)E(R|s=
st,a=
a)∑= π(aπ|s)q(a,
s)a∈Aqπ
(s,
a)
=
Eπ
(rt+1|st
=
s,
at
=
a)
+
γEπ
(Rt+1|st
=
s,
at
=
a)∑s′∈S=
R
+
γ
Ps ssπa a ′′v(s
)上述兩式相互帶入,狀態(tài)值函數(shù)的Bellman
方程π∑v
(s)
=
π(aa∈A[as∑|s)
R
+
γ
Ps′∈Sassπ′′v(s
)]動作
-狀態(tài)值函數(shù)的
Bellman
方程aπ s∑q
(s,
a)
=
R
+
γ
Pass∑s′∈S a′∈Aπ′
′ ′
′′
( π(a|s)q(a,s
))機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 8
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí) 值函數(shù)和Bellman
方程值函數(shù)的
Bellman
最優(yōu)方程a最優(yōu)值函數(shù):v?(s)
=
max
vπ
(s),
q?(s,
a)
=
max
qπ
(s,
a)π π如果已知
q?(s,
a),有最優(yōu)值函數(shù),v?(s)
=
max
q?(s,
a)滿足?q(s,
aas∑)
=
R
+
γ
Ps′∈Sssa ?
′′v(s
)上述兩式相互帶入,狀態(tài)值函數(shù)的Bellman
最優(yōu)方程:a? as∑v(s)
=
max
R
+
γ
Ps′∈Sssa ?
′′v(s
)[ ]動作
-狀態(tài)值函數(shù)的
Bellman
最優(yōu)方程:s∑q
(s,
a)
=
R
+
γ
P? a assa′?′
′′(maxq(a,s
))s′∈S機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 9/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí) 策略迭代和值迭代策略迭代和值迭代a轉(zhuǎn)移概率和回報函數(shù)已知或者存在估計的情形下,求解
MDP。目標(biāo):找到最優(yōu)決策函數(shù)
π?,達(dá)到期望累積折現(xiàn)回報最大,即值函數(shù)最優(yōu)。求解
MDP
時,使用確定性貪婪決策函數(shù),π′(a′|s)
=
1,a′
=
arg
max
qπ
(s,
a)。π′(s)
=
arg
max
qπ
(s,
a)a可以證明,對任意的
π
和狀態(tài)
s,vπ′
≥
vπ
。在策略迭代算法中,需要對策略評估和策略改進(jìn)這兩個步驟進(jìn)行迭代,直到算法收斂。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 10
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略迭代和值迭代基于值函數(shù)的強(qiáng)化學(xué)習(xí)策略迭代和值迭代策略迭代:初始化策略
π0,vπ
(s)02.
策略迭代
t
=
0,
1,
2,
·
·
·a.
策略評估:?
迭代
k
=
1,
2,
·
·
·?∑k+1 tv (s)
= π
(a|sa∈A[as)R+
γ∑s′∈Sss
ka ′P′v(s
)]?
收斂得到
vπt
(s)at+1 πtb.
策略改進(jìn):π (s)=argmaxq
(s,aaas∑s′∈Sssπta ′)=argmaxR
+
γ P′v(s
)值迭代:每次策略評估只迭代一次,可以寫成t+1a[as∑v (s)
=
max
R
+
γ
Ps′∈Sssta ′′v(s
)]策略評估迭代可以通過狀態(tài)值函數(shù)的Bellman
方程來實現(xiàn)。值迭代算法可以通過狀態(tài)值函數(shù)的Bellman
最優(yōu)方程得到。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 11
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí) 基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)模型已知:動態(tài)規(guī)劃?
如,策略迭代和值迭代算法?
vπ
(s)
和
qπ
(s,
a)
可以互相導(dǎo)出,因此可以聚焦在
vπ
(s)?
分為策略評估和策略改進(jìn)兩個部分。確定性貪婪決策函數(shù)模型未知:基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)?
如,蒙特卡洛方法、時序差分
(TD):SARSA,Q
學(xué)習(xí)?
更關(guān)注
qπ
(s,
a)
的預(yù)測(因只能直接從
qπ
(s,
a)
中求出策略)?
策略改進(jìn)引入
??
貪婪決策函數(shù),
使策略有機(jī)會探索所有動作π′(a|s)
={1
?
?
+
?/|A|如果
a
=
arg
maxa′
qπ
(s,
a′)否則?/|A|滿足
vπ′
≥
vπp,其中
π
是改進(jìn)前的一個
??貪婪決策函數(shù)。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 12
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí) 基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)蒙特卡洛方法利用抽樣軌跡中回報的均值來估計值函數(shù)First
Visit
蒙特卡洛控制初始化策略
π0,q(s,
a);初始化回報列表
R(s,
a)
為
|S|
×
|A|
空列表2.
策略迭代
t
=
0,
1,
2,
·
·
·策略評估:以策略
πt抽樣,得到一段軌跡
s1,
a1,
r2,
s2,
a2,
r3,
·
·
·
,
sT記錄軌跡中每一個首次出現(xiàn)的動作狀態(tài)對
(s,
a)
之后的累積(折現(xiàn))回報
R?t(s,
a),并附到
R(s,
a)
對應(yīng)位置列表之后計算
q(s,
a),即
R(s,
a)
對應(yīng)位置列表元素的均值策略改進(jìn):??貪婪策略改進(jìn)
q(s,
a),得到
πt+1漸進(jìn)式的蒙特卡洛控制更新
q(s,
a)
的時,使用q(s,
a)
←
q(s,
a)
+
η[R?t(s,
a)
?
q(s,
a)]其中
η
為一很小正數(shù),式子成立因為均值性質(zhì):tμ
=1tt∑i=1ti tx
= (x+
(t?1)μt?11
1t t?1)=μt?1+t(x
?
μ )機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 13
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí) 基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)時序差分方法蒙特卡洛:執(zhí)行策略得到一段軌跡之后,才能獲得
R?t(s,
a),從而更新一次q(s,
a)時序差分(TD):考慮到qπ
(s,
a)
=
Eπ
(rt+1
+
γqπ
(st+1,
at+1)|st
=
s,
at
=
a)用
rt+1
+
γq(st+1,
at+1)
替換
R?t(s,
a),每一步更新一次
q(s,
a)*
TD(n)
使用計算
n
步
TD
目標(biāo)的指數(shù)加權(quán)平均作為
TD
目標(biāo)?
一步
TD
目標(biāo):rt+1
+
γq(st+1,
at+1)?
兩步
TD
目標(biāo):rt+1
+
γrt+2
+
γ2q(st+2,
at+2)?
類似可得
k
步
TD
目標(biāo)結(jié)合一般策略評估
-策略改進(jìn)框架,可以得到時序差分算法。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 14
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí)基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)時序差分方法TD(1)
算法?
初始化
q(s,
a),環(huán)境狀態(tài)
s0?
策略迭代
t
=
0,
1,
2,
·
·
·基于
q(s,
a)
的
??貪婪的策略,在狀態(tài)
st
下選擇動作
at執(zhí)行動作
at,進(jìn)入狀態(tài)
st+1,并得到回報
rt+1根據(jù)某個策略,在狀態(tài)
st+1
下選擇動作
at+1使用一步
TD
方法,更新
q(st,
at)SARSA
強(qiáng)化學(xué)習(xí)流程第
3
步根據(jù)??貪婪的
πt
策略選擇動作,同策略
TDq(st,
at)
←
q(st,
at)
+
η[rt+1
+
γq(st+1,
at+1)
?
q(st,
at)]Q
學(xué)習(xí)流程第
3
步基于
q(st,
a)
的普通貪婪策略,異策略
TDat t t t t+1
t+1q(s,a)←q(s,a)
+
η[r +γ
max
q(s ,
at t)
?
q(s
,
a
)]機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 15
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí)基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)方法比較蒙特卡洛方法
vs
時序差分方法?
蒙特卡洛方法?
需要得到一段軌跡之后才能實施一次更新?
值函數(shù)估計無偏差的但方差較大?
沒有利用馬爾科夫性質(zhì),非馬爾科夫的環(huán)境下可能有好的表現(xiàn)?
時序差分?
每一步都更新值函數(shù),不需要等到馬爾科夫決策過程結(jié)束?
時序差分的值函數(shù)估計方差較小但存在偏差?
時序差分利用了馬爾科夫性質(zhì)?
n
較大時,n
步時序差分方法趨向于蒙特卡洛方法。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 16
/
47第十二章
深度強(qiáng)化學(xué)習(xí)基于值函數(shù)的強(qiáng)化學(xué)習(xí)基于值函數(shù)的無模型強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)方法比較動態(tài)規(guī)劃(值迭代,策略迭代):?
基于模型的方法,沒有使用抽樣。無模型強(qiáng)化學(xué)習(xí)(蒙特卡洛方法和時序差分方法):?
無模型方法,都使用了抽樣來評估策略,估計值函數(shù)。強(qiáng)化學(xué)習(xí)的
Bootstraping(不是
bootstrap):在估計值函數(shù)的時候,使用到了值函數(shù)在后續(xù)狀態(tài)的估計值。動態(tài)規(guī)劃和時序差分使用了
Bootstraping,蒙特卡洛方法沒有。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 17
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)目錄基于值函數(shù)的強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)3策略梯度和
Actor-Critic
方法4學(xué)習(xí)、推演和搜索機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 18
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)值函數(shù)近似離散狀態(tài)空間和離散動作空間:之前介紹的強(qiáng)化學(xué)習(xí)方法狀態(tài)空間
st
∈
S
連續(xù)(動作空間仍然離散):值函數(shù)近似考慮
qπ
(s,
a)
的一個近似
?q(s,
a,
θ),?1 |A|對于線性近似,θ
=
(θ
,
·
·
·
,
θ ),?q(s,
aTa,
θ)
=
θ
s。=?
對于神經(jīng)網(wǎng)絡(luò)近似,θ
代表神經(jīng)網(wǎng)絡(luò)的參數(shù)機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 19
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q網(wǎng)絡(luò)
值函數(shù)的近似值函數(shù)的近似qπ
(s,
a)
未知,參數(shù)
θ
的
TD
更新:θ
←
θ
+
η[rt+1
+
γ?q(st+1,
at+1,
θ)
?
?q(s,
a,
θ)]?θ?q(s,
a,
θ)值函數(shù)近似的
TD(1)的強(qiáng)化學(xué)習(xí)?
初始化
θ,環(huán)境狀態(tài)
s0?
策略迭代
t
=
0,
1,
2,
·
·
·基于?q(s,
a,
θ)
的
??
貪婪策略,在狀態(tài)
st
下選擇動作
at執(zhí)行動作
at,進(jìn)入狀態(tài)
st+1,并得到回報
rt+1根據(jù)某個策略,在狀態(tài)
st+1
下選擇動作
at+1使用值函數(shù)近似的
TD
方法,更新參數(shù)
θθ
←
θ
+
η[rt+1
+
γ?q(st+1,
at+1,
θ)
?
?q(st,
at,
θ)]?θ?q(st,
at,
θ)線性近似:3.
策略選擇動作不同有
LSTD-SARSA
和
LSTD-Q
算法非線性近似:深度
Q
網(wǎng)絡(luò)機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 20
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò) 深度
Q
網(wǎng)絡(luò)
DQN深度
Q
網(wǎng)絡(luò)
DQN值函數(shù)的非線性近似在時序差分強(qiáng)化學(xué)習(xí)中直接引入神經(jīng)網(wǎng)絡(luò)近似會導(dǎo)致參數(shù)發(fā)散或震蕩DQN
論文給出不收斂的原因輸入數(shù)據(jù)不是獨立同分布的,可能具有高度序列相關(guān)性神經(jīng)網(wǎng)絡(luò)近似的值函數(shù)
?q(s,
a,
θ)
不穩(wěn)定將導(dǎo)致基于
?q(s,
a,
θ)
的貪婪策略不穩(wěn)定,不利于生成好的
TD
目標(biāo)用于網(wǎng)絡(luò)訓(xùn)練。某次回報的(絕對)值過大會導(dǎo)致梯度下降訓(xùn)練不穩(wěn)定。改進(jìn)方法引入經(jīng)驗回放引入目標(biāo)網(wǎng)絡(luò)限制
TD
誤差在
[-1,1]
區(qū)間:即目標(biāo)損失使用
Huber
Loss,將
[-1,1]
區(qū)間之外的平方損失替換為絕對值損失。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 21
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)深度
Q
網(wǎng)絡(luò)
DQN經(jīng)驗回放目的:減弱數(shù)據(jù)關(guān)聯(lián)性,獲得相對獨立的訓(xùn)練數(shù)據(jù)。方法:將數(shù)據(jù)元組
et
=
(st,
at,
rt+1,
st+1)存到一定大小的回放容器中策略評估步驟更新
?q(s,
a,
θ)
中的參數(shù)
θ
時,隨機(jī)選取記憶容器中的小批量(mini-batch)數(shù)據(jù)估計動作狀態(tài)
-值函數(shù),并更新網(wǎng)絡(luò)參數(shù)。實施經(jīng)驗回放更新后,代理將根據(jù)
??
貪婪策略選擇一個動作并進(jìn)入下一個狀態(tài),獲得下一個回報。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 22
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò) 深度
Q
網(wǎng)絡(luò)
DQN目標(biāo)網(wǎng)絡(luò)a目的:使訓(xùn)練更加穩(wěn)健,防止
θ
頻繁更新導(dǎo)致
TD
目標(biāo)值不穩(wěn)定而引發(fā)的網(wǎng)絡(luò)發(fā)散或震蕩。方法:建立兩個結(jié)構(gòu)一樣但參數(shù)可能不同的神經(jīng)網(wǎng)絡(luò):?
在線網(wǎng)絡(luò)
?q(s,
a,
θ):θ
不斷更新,用
??
貪婪策略來產(chǎn)生軌跡,并存入回放容器。?
目標(biāo)網(wǎng)絡(luò)
?q(s,
a,
θ?):θ?
定期更新。產(chǎn)生
Q
學(xué)習(xí)的
TD
目標(biāo)值
rt+1
+
γ
max
?q(st+1,
a,
θ?)。?
例如,每隔
N
步,將
θ?
設(shè)為
θ。DQN
的
TD
誤差t+1ar +
γ
max
?t+1q(s ,
a?t t,
θ
)
?
?q(s
,
a,
θ)其中,(st,
at,
rt+1,
st+1)
由回放容器中隨機(jī)抽樣產(chǎn)生。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 23
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò) 深度
Q
網(wǎng)絡(luò)
DQNDQN
算法a初始化
θ,環(huán)境狀態(tài)
s0,θ?
←
θ,θ?
的更新周期
N(2)
策略迭代
t
=
0,
1,
2,
·
·
·基于
?q(s,
a,
θ)
的
??貪婪策略,在狀態(tài)
st
下選擇動作
at執(zhí)行動作
at,進(jìn)入狀態(tài)
st+1,并得到回報
rt+1將數(shù)據(jù)元組
et
=
(st,
at,
rt+1,
st+1)存儲到回放容器
D從回放容器中隨機(jī)
mini-batch
抽樣,例如得到一個樣本ek
=
(sk,
ak,
rk+1,
sk+1)使用值函數(shù)近似的
TD
方法,更新參數(shù)
θ。記ak+1
=
max
?q(sk+1,
a,
θ?)θ←θ+η[rk+1+γ?q(sk+1,ak+1,θ?)??q(sk,ak,θ)]?θ?q(sk,ak,θ)其中,rk+1
+
γ?q(sk+1,
ak+1,
θ?)
?
?q(sk,
ak,
θ)
的值在
[-1,1]
區(qū)間之外會被設(shè)為邊界值
1
或
-1。6.
每間隔
N
步(t
被
N
整除),θ?
←
θ在多局制(episode)環(huán)境下,在每局開始的時候重新初始化環(huán)境狀態(tài),并把動作
-狀態(tài)值函數(shù)在每局結(jié)束狀態(tài)的值設(shè)為
0。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 24
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò) 深度
Q
網(wǎng)絡(luò)
DQNDQN
的拓展aDouble
Q
學(xué)習(xí)DQN
算法第
5
步
at+1
的計算修改為
ak+1
=
max
?q(sk+1,
a,
θ)。解決
Q
學(xué)習(xí)中的
q
值估計偏高的問題。Prioritized
Replay修改了經(jīng)驗回放中的隨機(jī)抽樣,使得更重要的樣本(TD
誤差大)被回放的頻率更大。Dueling
Architecture把
q
值函數(shù)分解為狀態(tài)值函數(shù)和優(yōu)勢函數(shù)之和,πθq(s,a,θ)=v
(s,
θ)
+
A(s,
a,
θ),并使用底層共享的網(wǎng)絡(luò)結(jié)構(gòu)分別估計再加起來。以上三種處理方法對
DQN
都有顯著的改進(jìn),這些方法也可以組合起來使用,得到更好的效果。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 25
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò) 深度
Q
網(wǎng)絡(luò)
DQNDQN
智能交易機(jī)器人目標(biāo)和背景?
使用結(jié)合
Prioritized
Replay
的
Double
DQN
方法。?
機(jī)器人根據(jù)輸入的技術(shù)指標(biāo)來綜合分析,并輸出持倉決策。?
狀態(tài)集
st:一個
16
×
1
的向量,表示輸入的
16
個技術(shù)指標(biāo)。動作集:(?1,
0,
1),表示賣空一手,無持倉和持有一手?;貓螅河沙謧}和下一刻的價格變化決定。?
訓(xùn)練結(jié)束后,得到
q
函數(shù)網(wǎng)絡(luò)
q(s,
a),表示在技術(shù)指標(biāo)
s
和持倉
a條件下的未來累計折現(xiàn)期望收益。根據(jù)最高的期望收益對應(yīng)的動作來決定持倉。解決方案和程序?
滬深
300
指數(shù)
2015
年
1
月
5
號到
7
月
14
號的數(shù)據(jù)設(shè)為訓(xùn)練數(shù)據(jù)7
月
15
號到
12
月
7
號的數(shù)據(jù)為檢驗數(shù)據(jù),折現(xiàn)因子設(shè)為
0.95。?
本例中的交易機(jī)器人可以解釋為一個關(guān)注中長期的期望收益,可以在類似從
2015
年
1
月
5
號到
7
月
14
號的市場環(huán)境中取得較好收益的智能交易機(jī)器人。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 26
/
47第十二章
深度強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò) 深度
Q
網(wǎng)絡(luò)
DQNDQN
智能交易機(jī)器人樣本內(nèi)收益非常高,樣本外測試也取得了正收益。(a) (b)“AI股評家”?
以
持有策略為例,動作集固定為
1,一直持有,其他設(shè)置不變,輸出為持有策略的期望收益
qπ
(s,
a
=
1)。是對持有策略進(jìn)行策略評估,不包含策略改進(jìn)的步驟。類似于有監(jiān)督學(xué)習(xí)模型,但在設(shè)置響應(yīng)變量上較有監(jiān)督學(xué)習(xí)更為靈活。?
股評家也可以對
各種固定的策略,例如
2
均線策略,進(jìn)行策略評估,這點通過有監(jiān)督學(xué)習(xí)是較難實現(xiàn)的。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 27
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法目錄基于值函數(shù)的強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)3策略梯度和
Actor-Critic
方法4學(xué)習(xí)、推演和搜索機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 28
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法策略梯度和Actor-Critic
方法基于值函數(shù)方法如
SARSA,Q
學(xué)習(xí)值函數(shù)方法通過估計動作
-值函數(shù),間接地獲得了策略,這類方法難以應(yīng)用到連續(xù)的動作空間的情形,以及最優(yōu)策略是隨機(jī)策略的情形?;诓呗缘模址Q為策略梯度(Policy
Gradient,PG)方法。通常具有更好的收斂性,在
高維度和連續(xù)動作空間更有效,可以用來學(xué)習(xí)
隨機(jī)策略。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 29
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法
策略梯度定理策略梯度建模用值函數(shù)近似
直接對策略進(jìn)行建模,即優(yōu)化
π(a|s,
θ),記為
πθ
。常見例子:∑a′soft
max
策略:π(a|s,
θ)
=
exp(h(s,
a,
θ))/
exp(h′(s,
a
,
θ))高斯策略:π(a|s,
θ)
=
?(a|μ(s,
θ),
σ(s,
θ))其中
σ(s,
θ)
=
exp(g(s,
θ)),h(s,
a,
θ),μ(s,
θ)
和
g(s,
θ)
可以是線性函數(shù)也可以是復(fù)雜的深度神經(jīng)網(wǎng)絡(luò)。目標(biāo):求解
θ,使得在策略
πθ下最大化
J(θ)
=
vπ
(s0)θθ?=argmax
J(θ)θ上式可以通過
梯度算法
進(jìn)行迭代求解θ(l+1)=θ(l)+
η?θJ(θ)η
是學(xué)習(xí)率,?θ
J(θ)
是
J(θ)
的梯度。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 30
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法
策略梯度定理策略梯度定理策略梯度定理是求解策略
?θ
J(θ)
的基礎(chǔ)Sutton
等
(2000)
證明
策略梯度具有如下形式?θ
J(θ)
=
∫
dπθ
(s)
∫
qπθ
(s,
a)?θπ(a|s,
θ)dads利用
?θπ(a|s,
θ)
=
π(a|s,
θ)?θ
log
π(a|s,
θ),策略梯度可以進(jìn)一步寫為?θ
J(θ)
=
Es~dπθ
,a~π
[qπθ
(s,
a)?θ
log
π(a|s,
θ)]可以通過抽樣來估計策略梯度,進(jìn)而使用隨機(jī)梯度算法來更新參數(shù)。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 31
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法
策略梯度定理REINFORCE
算法使用折扣累積回報
Gt
來估計
qπ
(s,
a),是一種蒙特卡洛算法。θREINFOECE
算法:初始化策略
πθ多局制(episode)環(huán)境下,迭代
k
=
0,
1,
2,
·
·
·根據(jù)策略
πθ
,抽樣得到第
k
局狀態(tài)
-動作
-
回報的軌跡2.2
s0,
a0,
r1,
s1,
a1,
r2,
·
·
·
,
rT迭代
t
=
0,
1,
2,
·
·
·T∑j=t+1b.θ←θ+ηGt?θlogπ(at|st,
θ)j?t?1a.
計算
G
=
γ
rt j機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 32
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法
策略梯度定理帶基準(zhǔn)的
REINFOECE
算法t多局制環(huán)境下,每局有終止?fàn)顟B(tài),故
G
與∑∞k=0γkrt+k+1
不同。?
參數(shù)更新時加上動態(tài)權(quán)重
γt,即
θ
←
θ
+
ηγtGt?θ
log
π(at|st,
θ)。直接使用
REINFOECE
算法會導(dǎo)致較大的估計方差。?
將
Gt
減去一個與動作無關(guān)的基準(zhǔn)
b(s)。例如,b(s)
=
?vπ
(s,
w)。θ帶基準(zhǔn)的
REINFOECE算法:1.
初始化策略
πθ
,值函數(shù)
?vπ
(s,
w),η1
>
0,
η2
>
0θ多局制(episode)環(huán)境下,迭代
k
=
0,
1,
2,
·
·
·根據(jù)策略
πθ
,抽樣得到第
k
局狀態(tài)
-動作
-
回報的軌跡s0,
a0,
r1,
s1,
a1,
r2,
·
·
·
,
rT2.2迭代
t
=
0,
1,
2,
·
·
·ta.計算G
=∑Tj=t+1γj?t?1rjb.δt=Gt??vπθ(st,
w)c.w←w+η1δt?w?vπθ(st,
w)t2 t
θ t
td.θ←θ+ηγδ?logπ(a|s,
θ)機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 33
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法
策略梯度定理強(qiáng)化學(xué)習(xí)和有監(jiān)督學(xué)習(xí)的對比聯(lián)系:令
L(θ)
=
?J(θ),并最小化
L(θ),則與有監(jiān)督學(xué)習(xí)目標(biāo)一致。假設(shè)樣本
(at,
st),
t
=
1,
·
·
·
,
T
已知,變?yōu)橐粋€標(biāo)準(zhǔn)的有監(jiān)督學(xué)習(xí)T∑t
t? logπ(a|s,
θ)t=1?
s
~
解釋變量
X?
a
~
響應(yīng)變量或標(biāo)簽
Y?
log
π(at|st,
θ)
~
單個樣本的損失函數(shù)區(qū)別:?
有監(jiān)督學(xué)習(xí)的標(biāo)簽
Y
默認(rèn)正確,強(qiáng)化學(xué)習(xí)的
“標(biāo)簽
a”
不一定?
有監(jiān)督學(xué)習(xí)的樣本分布是確定的,強(qiáng)化學(xué)習(xí)的訓(xùn)練樣本分布在策略收斂前不斷變化?
強(qiáng)化學(xué)習(xí)中,樣本
(at,
st)
需要通過代理和環(huán)境的交互來獲取。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 34
/
47第十二章
深度強(qiáng)化學(xué)習(xí)Actor-Critic
算法策略梯度和
Actor-Critic
方法Actor-Critic
算法Actor-Critic
算法是基于策略梯度定理的梯度方法Critic:函數(shù)近似的
q,?q(s,
a,
w),用來估計策略梯度中的
qθ
(s,
a)Actor:參數(shù)化的策略
π(a|s,
θ),其參數(shù)更新方向依賴于
Critic
的值標(biāo)準(zhǔn)的
Actor-Critic
算法使用
TD
的方式估計動作
-狀態(tài)值函數(shù)
qπ
(s,
a)θ在每一步都能更新
Actor
和
Critic的參數(shù),并使用最新的策略進(jìn)行抽樣。對比:帶基準(zhǔn)的REINFOECE
算法沒有使用
bootstraping(即
TD)機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 35
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法 Actor-Critic
算法Actor-Critic
算法與
REINFORCE
算法類似,在
Actor-Critic
算法直接使用動作
-狀態(tài)值函數(shù)πθq(s,
a)
的參數(shù)近似會導(dǎo)致估計方差較大。定義優(yōu)勢函數(shù)Aπ
(s,
a)
=
q
(s,
a)
?
vπθ
(s),并基于優(yōu)勢函數(shù)的策略梯度θ πθ來實現(xiàn)
Actor-Critic
算法。?θ
J(θ)
=
Es~dπθ
,a~π
[Aπθ
(s,
a)?θ
log
π(a|s,
θ)]狀態(tài)值函數(shù)的一步
TD
誤差
δt
=
rt+1
+
γvπθ
(st+1)
?
vπθ
(st)
滿足Eπθ
(δt|st,
at)
=
qπθ
(st,
at)
?
vπθ
(st)
=
Aπθ
(st,
at)使用值函數(shù)近似的一步
TD
誤差來替代上式的期望
δt,作為優(yōu)勢函數(shù)的無偏估計。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 36
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法 Actor-Critic
算法Actor-Critic
算法初始化策略
πθ
,值函數(shù)
?vπ
(s,
w),η1
>
0,
η2
>
0θ多局制(episode)環(huán)境下,迭代
k
=
0,
1,
2,
·
·
·?
初始化第
k
局狀態(tài)
s0?
迭代
t
=
0,
1,
2,
·
·
·根據(jù)策略
π(·|st,
θ)
選擇動作
at執(zhí)行動作
at,進(jìn)入狀態(tài)
st+1,并得到回報
rt+1計算一步
TD
誤差
δ?t
=
rt+1+
γ?vπθ
(st+1,
w)
?
?vπθ
(st,
w)w←w+η1δ?t?w?vπθ(st,
w)t?2 t
θ t
t5.θ←θ+ηγδ?logπ(a|s,
θ)機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 37
/
47第十二章
深度強(qiáng)化學(xué)習(xí)策略梯度和
Actor-Critic
方法 Actor-Critic
算法Actor-Critic
算法TRPO?
近似求解更新前后兩個策略下的值函數(shù)的差,并加入更新前后兩個策略
KL
距離的約束等技巧?
保證參數(shù)更新的時候目標(biāo)函數(shù)
J(θ)
不減小A3C?
異步方法應(yīng)用到策略梯度?
處理一大類連續(xù)動作空間問題時表現(xiàn)十分優(yōu)異DDPG?
引入了
DQN
的關(guān)鍵處理方法,即經(jīng)驗回放和目標(biāo)網(wǎng)絡(luò)技術(shù)?
可以處理高維連續(xù)狀態(tài)空間和連續(xù)動作空間的情形D4PG?
DDPG+
折現(xiàn)回報的分布建模
+
分布式計算?
從折現(xiàn)回報分布的視角來研究強(qiáng)化學(xué)習(xí),而不是僅僅關(guān)注回報的期望或均值
(基于值函數(shù)的方法)?
超越了
A3C,是深度強(qiáng)化學(xué)習(xí)最出色的方法之一機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 38
/
47第十二章
深度強(qiáng)化學(xué)習(xí)學(xué)習(xí)、推演和搜索目錄基于值函數(shù)的強(qiáng)化學(xué)習(xí)值函數(shù)近似和深度
Q
網(wǎng)絡(luò)3策略梯度和
Actor-Critic
方法4學(xué)習(xí)、推演和搜索機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 39
/
47第十二章
深度強(qiáng)化學(xué)習(xí)學(xué)習(xí)、推演和搜索 “記憶式”
學(xué)習(xí)“記憶式”
學(xué)習(xí)有監(jiān)督學(xué)習(xí)對模型
Y
=
f(X,
θ)
+
?
進(jìn)行建模估計
f,如
K
鄰近法。是一種低級的通過簡單
“記憶”
來學(xué)習(xí)的方法。深度學(xué)習(xí)引入多層神經(jīng)網(wǎng)絡(luò)來提取數(shù)據(jù)特征,抽象能力,一種更高級的學(xué)習(xí)(記憶)方式。強(qiáng)化學(xué)習(xí)通過不斷與環(huán)境的交互改進(jìn)決策函數(shù)
π(a|s)?;谥岛瘮?shù)的無模型學(xué)習(xí):表格式記憶。DQN:把表格式記憶學(xué)習(xí)替換成基于神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方法。機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 40
/
47第十二章
深度強(qiáng)化學(xué)習(xí)學(xué)習(xí)、推演和搜索 推演和搜索推演和搜索推演(即規(guī)劃
Planning)在沒有與環(huán)境交互的情形下改進(jìn)決策函數(shù)。強(qiáng)化學(xué)習(xí)特有,比起記憶式學(xué)習(xí)更接近人類的思考和決策方式。?
有模型時,例子包括策略迭代和值迭代算法。?
無模型時,代理在學(xué)習(xí)過程的某個時刻,暫時停止與環(huán)境的交互,在此期間通過某種方式來改進(jìn)決策函數(shù)。改進(jìn)決策函數(shù)的方法?
對環(huán)境和回報函數(shù)建模,利用模型抽樣生成的樣本去學(xué)習(xí),然后更新策略,例如
Dyna
算法,VIN
等?
通過對未來軌跡的搜索來進(jìn)行規(guī)劃深度強(qiáng)化學(xué)習(xí):高級學(xué)習(xí)
+
抽象
+
環(huán)境交互
+
推演機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 41
/
47第十二章
深度強(qiáng)化學(xué)習(xí)學(xué)習(xí)、推演和搜索推演和搜索推演和搜索搜索當(dāng)前狀態(tài)下對未來動作狀態(tài)軌跡的探索,用來尋找最優(yōu)決策。搜索可用來推演,在一些環(huán)境下
(如下棋)
比其他規(guī)劃算法更高效一般使用樹的結(jié)構(gòu)來表示環(huán)境狀態(tài)的轉(zhuǎn)換。包括?
全寬度搜索?
基于抽樣的搜索?
基于模擬的搜索(包括蒙特卡洛模擬搜索)機(jī)器學(xué)習(xí)與
python
實踐
()人民郵電出版社 42
/
47第十二章
深度強(qiáng)化學(xué)習(xí)學(xué)習(xí)、推演和搜索 蒙特卡洛樹搜索蒙特卡洛樹搜索
MCTS一種重要的搜索算法,在棋類游戲中取
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度內(nèi)陸水路貨物運輸代理合同樣本
- 二零二五年度廣告?zhèn)髅叫袠I(yè)設(shè)計人員派遣合同范本2篇
- 二零二五年度土地征收與補(bǔ)償安置合同模板
- 2025年度上市公司人事勞動合同模板2篇
- 2025年度個人旅游線路設(shè)計服務(wù)合同4篇
- 二零二五年度電梯鋼結(jié)構(gòu)高空作業(yè)安全防護(hù)承包合同2篇
- 2025版智慧苗圃基地規(guī)劃設(shè)計施工一體化合同4篇
- 二零二五版內(nèi)墻批灰與智能家居照明系統(tǒng)合同4篇
- 課題申報參考:面向破損兵馬俑修復(fù)的碎片多尺度全局T o k e n掩碼學(xué)習(xí)分類研究
- 2025年度商鋪租賃合同(含租賃物安全責(zé)任)
- 吉林省吉林市普通中學(xué)2024-2025學(xué)年高三上學(xué)期二模試題 生物 含答案
- 《電影之創(chuàng)戰(zhàn)紀(jì)》課件
- 社區(qū)醫(yī)療抗菌藥物分級管理方案
- 開題報告-鑄牢中華民族共同體意識的學(xué)校教育研究
- 《醫(yī)院標(biāo)識牌規(guī)劃設(shè)計方案》
- 公司2025年會暨員工團(tuán)隊頒獎盛典攜手同行共創(chuàng)未來模板
- 新滬科版八年級物理第三章光的世界各個章節(jié)測試試題(含答案)
- 夜市運營投標(biāo)方案(技術(shù)方案)
- 電接點 水位計工作原理及故障處理
- 國家職業(yè)大典
- 2024版房產(chǎn)代持協(xié)議書樣本
評論
0/150
提交評論