マインドマップ
強化学習の歴史 流れ
価値関数に基づくアプリーち
方策を最適化するアプローチ
DQN
Dueling Q Network
Q学習
デメリットは?
DQN誕生
DQNはどんなもの?
ネットワークについて
入力層は状態空間の次元数。
カートポールなら、 カートの位置、速度、棒の角度、角速度の4次元なので、入力層のニューロン数は4つです。
出力層のニューロンの数は行動の選択肢数です。
CartPoleの場合は右か左にCartを押すので、出力層は2つのニューロンになります。
目的関数は?
、r(t)+γ・max[Q(s_{t+1},a_{t+1})]
が、現状でもっとも正しそうなものとなります。
よって、現状のQネットワークの出力Q(s_t, 右に押す)が、
r(t)+γ・max[Q(s_{t+1},a_{t+1})]
の値に近くなるように、ネットワークの重みを学習してあげます。
Q関数をNNで近似する +4つの工夫
DQNをさらに工夫する
DDQN (DuobleDQN)
TRPO
A3C ( Asynchronous Advantage Actor-Critic )
DQNの次の世代的存在であるため、DQNからの変化幅が大きく、理解するのがなかなか難しいです。
Value-based(従来のDQN、Q学習) + policy-basedの組み合わせ。 アルファ碁ゼロもそうらしい
1. Advantage
通常のQ関数
Q(s,a) → r(t) + γ・max[Q(s_,a)]
通常のQ学習の場合は、Q関数が、逆ドミノ的に決まっていく。
CartPoleの場合は、t=200もしくは倒れたときが終端(終了)となるので、終端のsの場合、次の状態s_がないため、 Q(s,a) → r(t) とQ関数が再帰的でなく確定します。
この手法のQ関数
Q(s,a) → r(t) + γ・r(t+1) + (γ^2)・max[Q(s_,a)]
どんな注意ポイントがある?
途中の行動a(t+1)を決めるときに、完成途中のQ関数を使用するので、そこが間違っていたら、その先もどんどん間違うことになります。
そのため、どんどん先のAdvantageを使えば良いというわけでもなく、少し先くらいまでのAdvantageを使うのがバランスが良いです。
従来のQ関数の更新を「1ステップ先でなく、2ステップ以上先まで動かして、更新しよう」という考え方です。
2. Actor-Critic
3. Asynchronous
ネットワーク
A3C+TRPOの改良
PPO
脳みその並列処理
会話中、脳みそのどこが動いている?
言語中枢
ブローカー中枢
言葉を発する機能
言語工場
運動性の言語野
ウェルニッケ中枢
聞いて理解するための場所。感覚性の言語野を使う
耳から来て、聴神経をと聴覚中枢にたどり着き、ここに来る