1行定義
DQNとは、Q学習で求める行動価値(Q値)をCNNで近似し、ゲーム画面の画素から直接よい行動を学べるようにした深層強化学習の手法のことです。
くわしく
DQN(Deep Q-Network)は、DeepMindが2013年に発表し、2015年に学術誌Natureで成果を報告した深層強化学習の手法です。強化学習のQ学習と、ディープラーニングのCNNを組み合わせました。
Q学習は、状態と行動の組ごとに、将来の報酬の見込み(Q値)を表にまとめて学習します。しかし、ゲーム画面のように状態の種類が膨大だと、表では管理できません。
Q値をCNNで近似する
DQNは、Q値の表の代わりにCNNを使います。直近の数フレーム分のゲーム画面を入力すると、取りうる操作ごとのQ値を出力します。Natureの論文では、Atari 2600の49種類のゲームを、画面の画素とスコアだけを手がかりに学習させました。すべてのゲームで同じ構造と設定を使い、半数を超える29種類で、人間のプロのゲームテスターの75%以上に相当する成績を収めました。
学習を安定させる2つの工夫
ニューラルネットワークによる近似は学習が不安定になりがちなため、DQNは次の工夫を入れました。
- 経験再生:経験した「状態・行動・報酬・次の状態」の組を蓄えておき、そこから無作為に取り出して学習します。連続した場面どうしの強い相関を断ち切れます。
- ターゲットネットワーク:学習の目標値を計算するネットワークを別に用意し、一定の間隔でだけ更新します。目標が毎回動くことによる不安定さを防ぎます。
改良手法
改良手法には、Q値の過大評価を抑えるダブルDQN、状態の価値と行動ごとの有利さを分けて推定するデュエリングネットワーク、重みにノイズを加えて探索を促すノイジーネットワークなどがあります。これらを含む6つの改良を組み合わせたのがRainbowです。2020年のAgent57は、Atariの57種類のゲームすべてで人間の基準を上回りました。
覚え方
「Q値の表をCNNに置き換え、思い出しながら学ぶ(経験再生)」と覚えます。
G検定での出題
出題のされ方
Q値をCNNで近似した点、学習を安定させる経験再生とターゲットネットワーク、Atariのゲームでの成果、ダブルDQN・デュエリングネットワーク・Rainbowなど改良手法との対応が問われます。
混同しやすい用語
| 用語 | 意味 |
|---|---|
| DQNこのページの用語 | Q学習で求める行動価値(Q値)をCNNで近似し、ゲーム画面の画素から直接よい行動を学べるようにした深層強化学習の手法 |
| Q学習 | ある状態である行動をとったときの価値(Q値)を、試行錯誤で得た報酬をもとに更新して学ぶ、価値ベースの強化学習の手法 |
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
2015年のDQNの論文では、ゲームごとにネットワークの構造やハイパーパラメータを調整して、49種類のAtariのゲームを学習させた。
答えを見る
答え × 誤り
49種類すべてで、同じ構造と同じハイパーパラメータを使いました。入力は画面の画素とスコアだけで、1つの方法で多くのゲームに対応できることを示した点が重要です。
-
DQNのネットワークは、ゲーム画面を入力すると、取りうる行動ごとのQ値を一度にまとめて出力する。
答えを見る
答え ◯ 正しい
1回の計算で全行動のQ値が得られるので、最大のQ値をもつ行動を選ぶだけで行動を決められます。
-
DQNのターゲットネットワークは、学習中のネットワークと毎ステップ同じ重みになるように更新される。
答えを見る
答え × 誤り
学習中のネットワークの重みを、一定のステップ数ごとにだけコピーします。目標値が更新のたびに動くのを防ぎ、学習を安定させるためです。