Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DQN

oshokawa
August 05, 2015
1k

 DQN

MLP勉強会 LT

oshokawa

August 05, 2015
Tweet

Transcript

  1. DDQQNNってなんぞ? 5 DDeeeepp QQ -- NNeettwwoorrkk DDeeeepp DDeeeepp LLeeaarrnniinnggの「DDeeeepp」 QQ

    QQ--LLeeaarrnniinnggの「QQ」 NNeettwwoorrkk NNeeuurraall NNeettwwoorrkkの「NNeettwwoorrkk」
  2. 強化学習:QQ--LLeeaarrnniinngg 10 Q(s, a) s a ↵ r :価値関数 :状態

    :行動 :学習率 :報酬 :割引率 下の更新式で「状態」と「行動」の「良さ」を学習
  3. 強化学習:QQ--LLeeaarrnniinngg 12 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100

    00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 報酬 普通の場所: 00 ゴール:++1100 壁: --1100
  4. 00 00 00 00 00 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 13 価値関数 ((各マス目につき上下左右各行動に存在)) [[例]] Q (2, 3), " Q (2, 3), # Q (2, 3), Q (2, 3), !
  5. 00 00 00 00 00 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 14 画像:: hhttttpp::////ppssnneewwss..jjpp//ccaatt//pp//33444400//
  6. 00 00 00 00 00 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 15
  7. 00 00 00 00 00 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 16
  8. 00 00 00 00 00 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 17
  9. 00 00 00 00 00 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 18 ゴール((++1100))についた! ↓ 「一個前の状態」 での 「上に進む」 っていう行動はいいんじゃね?
  10. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 19
  11. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 20
  12. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 21 オワタ\((^^oo^^))/ ↓ 「一個前の状態」 での 「右に進む」 はヤバくね?
  13. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 22
  14. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 23
  15. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 24
  16. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 25
  17. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 26 今の状態良さげ ↓ 「一個前の状態」 での 「上に進む」 はいいんじゃね?
  18. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 ++44..55 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 27
  19. 00 00 00 00 ++55 00 00 00 00 00

    00 00 00 00 00 00 ++44..55 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 28 ゴール((++1100))についた! ↓ 「一個前の状態」 での 「上に進む」 はやっぱいいんじゃね?
  20. 00 00 00 00 ++77..55 00 00 00 00 00

    00 00 00 00 00 00 ++44..55 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 29
  21. 00 00 00 00 ++77..55 00 00 00 00 00

    00 00 00 00 00 00 ++44..55 00 00 00 00 00 --55 00 --1100 --1100 --1100 ++1100 --1100 --1100 00 --1100 00 --1100 --1100 00 00 00 --1100 --1100 --1100 00 --1100 --1100 --1100 --1100 --1100 --1100 --1100 強化学習:QQ--LLeeaarrnniinngg 30 こんなかんじで 「あらゆる状態」の「あらゆる行動」 における価値関数を 更新、記憶しておく
  22. ってなわけで 33 Q(s, a; ✓) ⇡ Q⇤(s, a) と 価値関数を関数近似して、ニューラルネットで学習しちゃう

    s a s0 ・・・ ・・・            を重みとする ネットワーク   ✓ ・・・ ・・・ Q(s, a; ✓i) yi yi = E s⇠E ⇥ r + max a0 Q ( s0, a0 ; ✓i 1) |s, a ⇤ ※ 変数詳細は論文[[11]]参照
  23. まとめるとこんな感じ[[11]] 35 -- ggrreeeeddyyで行動 を選択 ✏ at 行動 を実行して、報酬 、次状態

    を観測 at rt st+1 rreeppllaayy mmeemmoorryy 状態遷移      をrreeppllaayy mmeemmoorryyに記憶 (st, at, rt, st+1) 価値関数を学習 次のエピソード 状態の初期化
  24. まとめるとこんな感じ[[11]] 36 -- ggrreeeeddyyで行動 を選択 ✏ at 行動 を実行して、報酬 、次状態

    を観測 at rt st+1 rreeppllaayy mmeemmoorryy 状態遷移      をrreeppllaayy mmeemmoorryyに記憶 (st, at, rt, st+1) 価値関数を学習 次のエピソード 状態の初期化 ここがDDeeeepp!!
  25. で、論文では •  AAttaarrii22660000の学習フレームワーク((AALLEE:: [[66]])) •  ラスト44フレームの221100**116600のゲーム画面を –  8844**8844に縮小 –  RRGGBB→ggrraayy--ssccaall

    に変換(( )) •  ネットワークの構成は –  入�力層:8844**8844**44 –  隠れ層:サイズ88**88のフィルタ1166個((ssttrriiddee 44)) –  隠れ層:サイズ44**44のフィルタ3322個((ssttrriiddee 22)) –  隠れ層:225566個のffuullll--ccoonnnneecctteedd RReeLLUUユニット –  出力層:アクション数分の行動価値関数の値((44〜1188ユニット)) •  その他 –  各種パラメータは論文を参照してくれ •  一言 –  ニューラルネットのインプットに「行動」が入�ってない! –  44フレームのゲーム画像だけから全行動の価値関数を推定してる! 37 (st)
  26. まとめるよ •  複雑な問題での強化学習は大変 •  価値関数をDDeeeepp LLeeaarrnniinngg((CCNNNN))で学習 •  すると、すげー性能がでたぞ •  でも

    – 行動とか報酬が明確に定義できない問題設定 も現実的には多い希ガス – とはいえ、面白い技術なので、ゲーム以外で の活用を考えてみたい 39
  27. 参考文献 40 [[11]] VV.. MMnniihh eett aall.. PPllaayyiinngg AAttaarrii wwiitthh

    DDeeeepp RReeiinnffoorrcceemmeenntt LLeeaarrnniinngg.. NNIIPPSS 22001133.. [[22]] MM.. RRiieeddmmiilllleerr.. NNeeuurraall FFiitttteedd QQ IItteerraattiioonn – FFiirrsstt EExxppeerriieenncceess wwiitthh aa DDaattaa EEffffiicciieenntt NNeeuurraall RReeiinnffoorrcceemmeenntt LLeeaarrnniinngg MMeetthhoodd.. EECCMMLL 22000055.. [[33]] LL--JJ.. LLiinn.. SSeellff--IImmpprroovviinngg RReeaaccttiivvee AAggeennttss BBaasseedd OOnn RReeiinnffoorrcceemmeenntt LLeeaarrnniinngg,, PPllaannnniinngg aanndd TTeeaacchhiinngg.. MMaacchhiinnee LLeeaarrnniinngg,, 88,, 229933----332211.. 11999922.. [[44]] LL--JJ.. LLiinn.. RReeiinnffoorrcceemmeenntt LLeeaarrnniinngg ffoorr RRoobboottss UUssiinngg NNeeuurraall NNeettwwoorrkkss.. 11999933.. [[55]] MM.. GG.. BBeelllleemmaarree eett aall.. TThhee AArrccaaddee LLeeaarrnniinngg EEnnvviirroonnmmeenntt:: AAnn EEvvaalluuaattiioonn PPllaattffoorrmm ffoorr GGeenneerraall AAggeennttss.. JJoouurrnnaall ooff AArrttiiffiicciiaall IInntteelllliiggeennccee RReesseeaarrcchh 4477,, 225533—227799,, 22001133.. [[66]] UUggoo--NNaammaaさんのブログ((QQiiiittaa)) hhttttpp::////qqiiiittaa..ccoomm//UUggoo--NNaammaa//iitteemmss//0088cc66aa55ff66aa557711333355997722dd55