3-3-2-6 DQN

DQN(Deep Q-Network)は、Q学習にディープラーニングを組み合わせた手法です。
これまでのQ学習では、
・状態が少ない
・表でQ値を書ける
そんな小さな世界しか扱えませんでした。
でも現実は、画面のピクセル、センサー情報、複雑な環境……と、とても表には収まりません。
そこでDQNでは、Q値をニューラルネットワークで近似する、という大胆な発想を取り入れます。

画面を見て、状況を理解して、次の一手を決める。
これによって強化学習は、ゲームやロボットのような複雑な環境にも踏み込めるようになりました。

でも、ここで問題が起きます。
ニューラルネットワーク × Q学習は、そのままだと不安定。学習が暴れやすいのです。
そこでDQNには、安定させるための工夫が組み込まれています。

経験再生(Experience Replay)

経験再生は、エージェントの体験をそのまま流さず、いったんメモリに貯めて、あとからランダムに取り出す、という仕組みです。
なぜそんなことをするかというと、強化学習の経験は、時系列で強く相関している、偏りやすいからです。
そのまま学習すると、最近の出来事に引きずられてしまうのです。
経験再生では、過去の体験をシャッフルして学ぶことで、データの相関を弱め、学習を安定させます。

ターゲットネットワーク

DQNでは、Q値を更新するときに、「いま学習しているネットワーク」と「目標値を計算するネットワーク」を分けています。
これがターゲットネットワークです。
もし同じネットワークで全部やると、自分で作った答えを、すぐ自分で信じてしまう、という不安定な循環に入ります。
そこで、目標用ネットワークは、しばらく固定しておくのです。
これによって、学習がぐっと安定します。

ダブルDQN
通常のDQNは、Q値を少し過大評価しやすいです。
ダブルDQNでは、
・行動を選ぶネットワーク
・評価するネットワーク
を分けて、この「楽観バイアス」を抑えます。

デュエリングネットワーク
状態の価値と、行動の優劣を分けて学習する構造です。
・「この状態そのものが良いか」
・「この行動が良いか」
を別々に扱うことで、効率よく学べるようになります。

ノイジーネットワーク
探索を ε-greedy に任せるのではなく、ネットワーク自体にノイズを入れて、自然に探索させる方法です。
性格に「ゆらぎ」を持たせるAIですね。

Rainbow
これまでの改良を、ぜんぶ盛り込んだ「全部入りDQN」。
ダブルDQN、デュエリング、経験再生の改良、ノイズ探索などを組み合わせた、DQNの集大成的モデルです。

AlphaGo
はじめてプロ棋士を破り、「AIが人間を超える瞬間」を世界に見せた囲碁AIです。
DeepMind社が、2015年に開発しました。
人間の棋譜(過去の対局データ)で学習したあと、自己対戦による強化学習を重ねて強くなりました。

AlphaGo Zero
ここで一気に世界が変わります。
AlphaGo Zeroは、人間の棋譜を一切使わず、完全に自己対戦だけで学習したのです。
つまり、ルールだけ与えられて、あとは延々と自分と戦い続けるという完全自己対局
その結果、従来のAlphaGoをあっさり超えてしまいました。

AlphaZero
AlphaGo Zeroの思想を、囲碁だけでなく、将棋、チェスにも広げた、汎用型の強化学習AIです。
ゲームごとの知識をほとんど持たず、ルールだけで、すべてを自己対戦から学びます。

AlphaStar
囲碁のようなターン制ではなく、リアルタイムで複雑な判断が必要なゲーム、「スタークラフト」に挑んだAIです。
複数ユニットの操作、視界制限、瞬時の戦略判断など、はるかに難しい環境で人間トッププレイヤー級に到達しました。