ルックアップテーブル(関数近似の代わりに)を使用した強化学習(Q-学習)は、動的プログラミングと同等ですか?強化学習と動的プログラミング
答えて
ダイナミックプログラミングは、多くのアルゴリズムを網羅した傘です。 Qラーニングは特定のアルゴリズムです。だから、それは同じではありません。また
、あなたはまだありません同じバリュー反復またはポリシー繰り返し、のようにダイナミックプログラミングを意味します。これらのアルゴリズムは、 "計画"の方法です。あなたは彼らに移行と報酬機能を与える必要があり、彼らは繰り返し値機能と最適なポリシーを計算します。
Qラーニングはモデルフリー強化学習方法です。このモデルは「モデルフリー」であり、機械学習モデルなどを使用しているわけではありませんが、必要がないためが使用され、という環境モデルがMDP最適な方針を得る。また、「モデルベース」のメソッドもあります。ダイナミックプログラミングの方法と異なり、これらは単にモデルを使用するのではなく、モデルの学習に基づいています。また、モデルのないメソッドとは異なり、値を推定した後にサンプルを捨てないで、パフォーマンスを向上させるためにトランジションと報酬関数を再構築しようとします。
モデルベースの方法は、モデルフリーメソッド(Q-学習)によって要求されるよりも、サンプルの少ない量と同じ良い結果を得るためにモデルフリーと計画アルゴリズムを組み合わせて、ダイナミックプログラミングのようなモデルを必要とせずメソッド(値/ポリシー反復)。
たとえば、AlphaGoのようなオフライン設定でQラーニングを使用する場合は、動的プログラミングと同じです。違いは、オンラインセットアップでも使用できることです。
サットン&バート氏の著書(Reinforcement Learning: An Introduction, chapter 4)
から用語動的計画法(DP)は、として 環境の完璧なモデルを与え、最適なポリシーを計算するために使用することができるアルゴリズム の集合を指しマルコフ決定プロセス(MDP)。古典的なDP アルゴリズムは、完璧なモデルの仮定のために、そして の計算コストのために、 の両方の強化学習では有益ではありませんが、理論的には依然として重要です。
したがって、同じ動作原理(平板強化学習/動的計画法を用いて、またはRL/DPを近似のいずれか)の両方の株が、古典的なDPと古典RLとの間の彼らの主な違いは、最初のモデルが既知であると仮定することです。これは基本的に遷移確率(状態sから状態s 'への変化の確率aを示す)と期待される即時報酬関数を知ることを意味する。
逆に、RLメソッドは、(アルゴリズムに応じて)オンラインまたはオフラインで収集された一連のサンプルにアクセスする必要があります。
もちろん、RLとDPの間に配置できるハイブリッドメソッドがあります。たとえば、サンプルからモデルを学習し、そのモデルを学習プロセスで使用する方法があります。
注:動的プログラミングという用語は、RLに関連する一連の数学的最適化技術に加えて、いくつかのコメントで指摘されているように、「一般的なアルゴリズムパターン」を参照するためにも使用されます。どちらの場合も、ファンダメントは同じですが、コンテキストに応じて異なる意味を持つ場合があります。
- 1. 強化学習:ニューラルネット
- 2. 可変動作で強化学習
- 3. 強化学習の無効な移動
- 4. C++強化学習ライブラリ
- 5. テトリスのための強化学習
- 6. 強化学習 - 生のピクセルから学ぶ
- 7. ポリシーと価値機能の理解強化学習
- 8. 教師あり学習、(ii)教師なし学習、(iii)補強学習
- 9. 数学的プログラミング(数学的最適化)Android用ライブラリ
- 10. 強化学習アルゴリズムのためのデータの効率的な供給
- 11. 強化学習でMDP設定が必要な理由
- 12. 4列ゲームの強化学習のための最適アルゴリズム
- 13. 強化学習で損失関数(MSVE)を実装する
- 14. 直接/間接および監視/非監督/強化学習
- 15. 自律ナビゲーションの強化学習を使用する
- 16. パイ脳強化学習;状態の次元
- 17. 強化学習、なぜパフォーマンスが崩壊したのですか?
- 18. 強化学習のための簡単なインターフェイス
- 19. 強化学習における値の反復の基本ケース
- 20. 学習のAjax:動的コンテンツは
- 21. 機械学習の学習に最適なプログラミング言語は何ですか?
- 22. 大きな状態の作用空間を持つ動的環境における強化学習
- 23. 深い学習と機械学習
- 24. Coursera機械学習:グラデーションデサントベクトル化
- 25. 単純なゲームのための深い強化学習パラメータとトレーニング時間
- 26. ASP.NET継続的な学習
- 27. 学習Javascriptと
- 28. オフポリシーの強化学習と経験的な再生でラムダを使用できますか?
- 29. 補強機械学習とは何ですか?
- 30. 学習ユニットテストとジャスミン
いいえこれは同等ではありません。これらの2つの方法を比較することはできません。動的プログラミングは、多くのアルゴリズムで使用される非常に一般的なアルゴリズムパターンです。あなたのアルゴリズムは動的プログラミング戦略を利用するかもしれませんが、確かに**動的プログラミングではありません。 – cel
@cel、あなたは文脈を考慮する必要があります。 RLに関しては、DPが値またはポリシー反復を参照すると仮定することは安全です。 –