AIの基礎
ディープ強化学習とは何か?
ディープ強化学習とは何か?
機械学習の創出には、教師なし学習と教師あり学習に加えて、強化学習という別の一般的な形式があります。通常の強化学習よりも、ディープ強化学習は、ディープラーニングと強化学習の両方の最良の側面を組み合わせることで、驚くほど印象的な結果をもたらすことができます。ディープ強化学習がどのように動作するかを見てみましょう。
ディープ強化学習に取り組む前に、通常の強化学習のしくみを復習しておくことが良いでしょう。強化学習では、目標指向のアルゴリズムは、試行錯誤のプロセスを通じて設計され、最も良い結果をもたらす行動または最も「報酬」を得る行動を最適化します。強化学習アルゴリズムをトレーニングする際、アルゴリズムは「報酬」または「罰」を受け取り、これらは将来的に取る行動に影響を与えます。アルゴリズムは、システムに最も多くの報酬をもたらす一連の行動を見つけようとします。即時的な報酬と将来の報酬のバランスをとるために、アルゴリズムは行動を選択します。
強化学習アルゴリズムは、ほぼすべてのタスクに適用できるため非常に強力です。環境から柔軟かつ動的に学習し、可能な行動を発見することができます。
ディープ強化学習の概要

写真:Megajuice via Wikimedia Commons、CC 1.0(https://commons.wikimedia.org/wiki/File:Reinforcement_learning_diagram.svg)
ディープ強化学習の場合、環境は通常画像で表されます。画像は、特定の時点での環境のスナップショットです。エージェントは画像を分析し、画像から関連する情報を抽出し、情報に基づいて行動を選択する必要があります。ディープ強化学習は、通常、価値ベースの学習と方策ベースの学習の 2 つの異なるテクニックで実行されます。
価値ベースの学習テクニックでは、畳み込みニューラルネットワークやディープQネットワークなどのアルゴリズムとアーキテクチャが使用されます。これらのアルゴリズムは、画像をグレースケールに変換し、画像の不要な部分を切り取ります。その後、画像はさまざまな畳み込みとプーリング操作を経て、画像の最も関連する部分を抽出します。画像の重要な部分は、エージェントが取ることができるさまざまな行動の Q 値を計算するために使用されます。Q 値は、エージェントにとって最も適切な行動を決定するために使用されます。初期の Q 値が計算された後、最も正確な Q 値を決定するために逆伝播が実行されます。
方策ベースの方法は、エージェントが取ることができる行動の数が非常に多い場合に使用されます。これは、通常、現実世界のシナリオで発生します。このような状況では、個々の行動の Q 値を計算することは実用的ではありません。方策ベースのアプローチでは、個々の行動の関数値を計算せずに、方策を直接学習します。方策勾配などのテクニックを使用して、方策を直接学習します。
方策勾配は、状態を受け取り、エージェントの以前の経験に基づいて行動の確率を計算することで機能します。最も確率の高い行動が選択されます。このプロセスは、評価期間の終了まで繰り返され、報酬がエージェントに与えられます。報酬が処理された後、ネットワークのパラメータは逆伝播によって更新されます。
Q学習とは何か?
Q学習がディープ強化学習プロセスにおいて非常に重要であるため、Q学習システムのしくみを詳しく見てみましょう。
マルコフ決定プロセス

マルコフ決定プロセス。写真:waldalvarez via Pixabay、Pixbay ライセンス(https://commons.wikimedia.org/wiki/File:Markov_Decision_Process.svg)
エージェントが一連のタスクを実行し、目標を達成するには、エージェントは状態とイベントのシーケンスを処理する必要があります。エージェントは初期状態から始まり、終了状態に到達するために一連の行動を取る必要があります。初期状態と終了状態の間には、多数の状態が存在する可能性があります。すべての状態に関する情報を保存することは実用的ではありません。したがって、システムは最も関連のある状態情報のみを保存する方法を見つける必要があります。これは、マルコフ決定プロセスを使用して実現されます。マルコフ決定プロセスは、現在の状態と前の状態に関する情報のみを保存します。各状態はマルコフ特性を追跡し、エージェントが前の状態から現在の状態に変化する方法を追跡します。
ディープQ学習
モデルが学習環境の状態に関する情報にアクセスできるようになると、Q値を計算できます。Q値は、行動のシーケンスの終了時にエージェントに与えられる合計報酬です。
Q値は、シーケンスの各報酬を使用して計算されます。現在の状態と現在の行動に基づいて即時報酬が計算されます。次の状態の Q 値と次の次の状態の Q 値も計算され、すべての状態の Q 値が計算されるまで続きます。将来の報酬がエージェントの行動に与える影響を制御するために、ガンマパラメータも使用されます。方策は通常、Q 値をランダムに初期化し、モデルがトレーニングの過程で最適な Q 値に収束するようにします。
ディープQネットワーク
Q学習を使用した強化学習における基本的な問題の1つは、状態の数が増加するにつれて、データを保存するために必要なメモリの量が急速に増加することです。ディープQネットワークは、ニューラルネットワークモデルとQ値を組み合わせることでこの問題を解決します。エージェントは経験から学習し、最も適切な行動について合理的な推測を行うことができます。ディープQ学習では、Q値関数はニューラルネットワークを使用して推定されます。ニューラルネットワークは状態を入力データとして受け取り、エージェントが取ることができるすべての可能な行動の Q 値を出力します。
ディープQ学習は、すべての過去の経験をメモリに保存し、Qネットワークの最大出力を計算し、損失関数を使用して現在の値と理論上の可能な限り高い値の差を計算することで実行されます。
ディープ強化学習とディープラーニング
ディープ強化学習と通常のディープラーニングの重要な違いは、前者の場合、入力が常に変化することです。これは、通常のディープラーニングでは当てはまりません。どのようにして、学習モデルが入力と出力の両方が常に変化することを考慮に入れることができるのでしょうか?
基本的に、予測値とターゲット値の乖離を考慮するために、2つのニューラルネットワークを使用できます。1つのネットワークはターゲット値を推定し、もう1つのネットワークは予測を担当します。ターゲットネットワークのパラメータは、モデルが学習するにつれて、選択した数のトレーニングイテレーションが経過した後で更新されます。ネットワークの出力は、差を決定するために結合されます。
方策ベースの学習
方策ベースの学習アプローチは、Q値ベースのアプローチとは異なります。Q値アプローチでは、状態と行動の報酬を予測する価値関数を作成しますが、方策ベースの方法では、状態を行動にマッピングする方策を決定します。言い換えれば、方策関数が直接最適化され、価値関数は考慮されません。
方策勾配
ディープ強化学習の方策は、2つのカテゴリのいずれかに入ります。確率的方策または決定論的方策。決定論的方策では、状態が行動にマッピングされ、方策が状態に関する情報を受け取ると行動が返されます。一方、確率的方策は、単一の離散行動ではなく、行動の確率分布を返します。
決定論的方策は、行動の結果について不確実性がない場合に使用されます。言い換えれば、環境自体が決定論的です。対照的に、確率的方策出力は、行動の結果が不確実な環境に適しています。通常、強化学習シナリオには不確実性が伴うため、確率的方策が使用されます。
方策勾配アプローチには、Q学習アプローチに対するいくつかの利点と欠点があります。利点として、方策ベースの方法は最適なパラメータに収束するのが早く、より信頼性が高いです。方策勾配を追うだけで、最適なパラメータに到達できます。一方、価値ベースの方法では、推定された行動値の小さな変更が行動とその関連パラメータに大きな変更につながる可能性があります。
方策勾配は、高次元の行動空間でもうまく機能します。行動の可能な数が非常に多い場合、ディープQ学習は実用的ではありません。すべての可能な行動のスコアを割り当てる必要があるため、すべての時間ステップで計算することは計算上不可能になる可能性があります。ただし、方策ベースの方法では、パラメータが時間の経過とともに調整され、モデルが収束するにつれて最適なパラメータの数が急速に減少します。
方策勾配は、確率的方策も実装できます。これは、価値ベースの方策では不可能です。確率的方策は確率分布を生成するため、探索/搾取トレードオフを実装する必要はありません。
方策勾配の欠点は、最適なパラメータを探索するときに、局所的な最適値に収束する可能性があることです。グローバルな最適値ではなく、狭い範囲の最適値にのみ焦点を当てます。
方策スコア関数
モデルのパフォーマンスを最適化するために使用される方策は、スコア関数 J(θ) を最大化することを目指しています。如果 J(θ) が望ましい目標を達成するための私たちの方策の良さの尺度である場合、最適な方策を与える θ の値を見つけることができます。まず、期待方策報酬を計算する必要があります。私たちには目標、最適化するものが必要です。方策スコア関数は、期待方策報酬を計算する方法です。一般的に使用される方策スコア関数には、エピソード環境の開始値、連続環境の平均値、各時間ステップの平均報酬などがあります。
方策勾配上昇

勾配上昇は、パラメータを、スコアが最も高い場所まで移動させます。写真:パブリックドメイン(https://commons.wikimedia.org/wiki/File:Gradient_ascent_(surface).png)
望ましい方策スコア関数を使用し、期待される方策報酬を計算した後、スコア関数 J(θ) を最大化する θ の値を見つけることができます。スコア関数 J(θ) を最大化するために、勾配上昇と呼ばれるテクニックが使用されます。勾配上昇は、ディープラーニングの勾配降下と概念的に似ていますが、ここでは最急上昇を最適化しています。スコアは「エラー」ではなく、最大化したいものであるためです。方策勾配定理と呼ばれる式が、方策「θ」に関する勾配を推定するために使用されます。
ディープ強化学習のまとめ
まとめると、ディープ強化学習は、強化学習とディープニューラルネットワークの両方の側面を組み合わせたものです。ディープ強化学習は、ディープQ学習と方策勾配の 2 つの異なるテクニックで実行されます。
ディープQ学習方法は、特定の状態で特定の行動を取った場合に得られる報酬を予測することを目指しています。一方、方策勾配アプローチは、行動空間を最適化し、行動自体を予測することを目指しています。ディープ強化学習への方策ベースのアプローチは、決定論的または確率的な性質を持つことができます。決定論的方策は状態を直接行動にマッピングしますが、確率的方策は行動の確率分布を生成します。












