introduction to double deep q-learning
TRANSCRIPT
ディープラーニングの最新動向 強化学習とのコラボ編② DDQN
2016/6/24 株式会社ウェブファーマー
大政 孝充
今回取り上げるのはこれ
[1]H. V. Hasselt, et al. “Deep Reinforcement Learning with Double Q-learning” arXiv:1509.06461, 2015. と、そのもとになってる論文 [2]H. V. Hasselt. “Double Q-learning” Advances in NIPS, 23:2613-26212015. DQNを改良し、ゲームでさらなる高得点を叩き出した!
もともとのDQNはこれ
[3]V. Mnih, K. Kavukcuoglu, D. Silver, A. Graves I. Antonoglou, D. Wierstra, M. Riedmiller. “Playing Atari with Deep Reinforcement Learning” arXiv:1312.5602, 2013. もしくは [4]V. Mnih, et al. “Human-level control through deep reinforcement learning” nature, 2015.
DQNの解説は
DQNの解説に関しては、[3]塚原裕史氏「論文紹介 Playing Atari with Deep Reinforcement Learning」 http://www.slideshare.net/htsukahara/paper-intoduction-playing-atari-with-deep-reinforcement-learning や[4]藤田康博氏「Playing Atari with Deep Reinforcement Learning」 http://www.slideshare.net/mooopan/ss-30336609 あるいは[5]私の「ディープラーニングの最新動向 強化学習とのコラボ編① DQN」 http://www.slideshare.net/ssuser07aa33/introduction-to-deep-q-learning などを参考にして下さい
今回はここだけ解説
①DQNの何が問題か ②DQNをどう改良してDDQNとしたか
①DQNの何が問題か ②DQNをどう改良してDDQNとしたか
まず①番
DQN(2013ヴァージョン)のアルゴリズム
[3] より
DQN(2013ヴァージョン)のアルゴリズム
[3] より
actionを選択するための モデル( )とactionを評価するためのモデル( )が同じ
θ
θ
actionを過大評価 してしまう
詳細は[2]参照
DQN(natureヴァージョン)のアルゴリズム
[4] より
DQN(natureヴァージョン)のアルゴリズム
[4] より
はたまに(C steps) に更新される Q∧
Q
DQN(natureヴァージョン)のアルゴリズム
[1] より
の各action value算出として、たまに更新されてる を使用する
φ j+1
Q∧
DQN(natureヴァージョン)のアルゴリズム
[1] より
よって行動を選択するためのaction value( )と行動を評価するためのaction value( )は微妙に違う
Q∧
Q
actionの過大評価は若干削減された?
もっと削減するには・・・ DDQN!
次に②番
①DQNの何が問題か ②DQNをどう改良してDDQNとしたか
DDQNだとここを変更する
[4] より
rj +γQ∧
φ j+1, argmaxa '
Q φ j+1,a ';θ( );θ −⎛⎝⎜
⎞⎠⎟
こうする
これを
まず に を入力して出た action value の中で最大となる を選択する 次に に を入力するして出た action value のうち、 に対応するものを選択する
に を入力して出た各 action value の中で最大のものを採用 rj +γmaxa ' Q
∧
φ j+1,a ';θ−( )
actionの評価を変更する
rj +γQ∧
φ j+1, argmaxa '
Q φ j+1,a ';θ( );θ −⎛⎝⎜
⎞⎠⎟
φ j+1
Q∧
θ −
φ j+1 Q
φ j+1
a '
a '
Q∧
θ
θ −
過大評価はかなり削減される!?
終わり