ダブルDQNとは

だぶるディーキューエヌDouble DQN別名 Double DQN、DDQN

1行定義

ダブルDQNとは、行動の選択と、その行動の価値の評価を別々のネットワークで行うことで、DQNで起きやすいQ値の過大評価を抑える手法のことです。

くわしく

ダブルDQN(Double DQN)は、2015年にDeepMindのHado van Hasseltらが発表した、DQNの改良手法です。DQNで起きやすいQ値の過大評価を抑えます。

なぜ過大評価が起きるのか

DQNは、次の状態で取りうる行動のうち、最も大きいQ値を使って学習の目標値を作ります。しかし、学習途中のQ値には誤差が含まれます。誤差のせいで高めに出た値ほど「最大」として選ばれやすいので、目標値は真の値より高めに偏ります。誤差が平均すれば0でも、この偏りは起こります。

偏りがすべての行動に均等なら、行動の選び方は変わりません。しかし実際には偏り方にむらがあり、価値の低い行動を過大に評価して選んでしまうことがあります。論文では、DQNがAtariのいくつかのゲームでQ値を大きく過大評価していることを示しました。そして、ダブルDQNで過大評価が減り、いくつかのゲームで成績も大きく向上したと報告しています。

選ぶ役と評価する役を分ける

この問題には、2010年に表形式のQ学習向けに提案されたダブルQ学習という対策がありました。2つの価値の推定を用意し、一方で行動を選び、もう一方でその行動の価値を評価します。同じ推定で選択と評価の両方を行わないので、偶然の高い値に引きずられにくくなります。

ダブルDQNは、この考え方をDQNに取り入れました。目標値を計算するとき、次の状態での行動は学習中のネットワークで選び、その行動の価値はターゲットネットワークで評価します。DQNにもともとあるターゲットネットワークを使うので、ネットワークを追加する必要はありません。

位置づけ

ダブルDQNは、デュエリングネットワークなどとともに、6つの改良を組み合わせたRainbowの構成要素の1つです。

覚え方

「選ぶ人と値踏みする人を分ける」と覚えます。

G検定での出題

最大のQ値を目標値に使うことで起きる過大評価の仕組み、行動の選択と評価を分ける考え方、デュエリングネットワークなどほかの改良手法との違い、Rainbowの構成要素である点が問われます。

混同しやすい用語

用語意味
デュエリングネットワークQ値を、状態そのものの価値と、行動ごとの有利さ(アドバンテージ)に分けて推定するDQNのネットワーク構造

◯×チェック

  1. ダブルDQNの元になったダブルQ学習は、もともと表形式のQ学習で起きる過大評価を抑えるために提案された。

    答えを見る

    答え ◯ 正しい

    2010年にHado van Hasseltが提案しました。2つの価値の推定を用意し、一方で行動を選び、他方で評価します。ダブルDQNはこれをDQNに応用しました。

  2. ダブルDQNは、DQNとは別に新しいネットワークを2つ追加し、合計4つのネットワークを同時に学習する。

    答えを見る

    答え × 誤り

    DQNがもともともつターゲットネットワークを評価役に使うので、新たなネットワークは不要です。DQNからの主な変更は目標値の計算式だけです。

  3. Q値の推定値に含まれる誤差が平均すると0であれば、最大値を選んで目標値を作っても、過大評価は起こらない。

    答えを見る

    答え × 誤り

    誤差が平均0でも、誤差で高めに出た値ほど最大値として選ばれやすいため、目標値は高めに偏ります。ダブルDQNはこの偏りを抑えます。

練習問題

ダブルDQNの問題(1問)
  1. DQNの課題と改良手法

AIで作成 人による確認:未 誤りを報告

出典と作成について

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合。手順は編集方針)

公開日: 最終更新日: 最終確認日:

対応シラバス:シラバス第1.4版 技術29

改訂履歴

表示設定

テーマ
文字の大きさ
問題演習