見出し画像

Gymで強化学習㉑Qネットワークの問題

前回は、Q学習の実装を線形近似を使って行いました。線形モデルの各パラメータ(傾きと切片)に対して損失関数の勾配を計算したものを使ってパラメータを調節することで徐々に安定した行動価値関数の近似が可能となりました。

ただし、線形モデルの入力値となる特徴量は、観測値や環境の知識などから人間が考えたものでありました。

そこで今回は、ニューラルネットワークを近似関数として使うことで特徴量を自動的に抽出することを試みます。その第一歩として、単純にQ関数をニューラルネットワークで置き換えます。そのため、パラメータの更新も損失関数やオプティマイザなどを使用します。なお、ライブラリとしてはメタPyTorchを使います。

PyTorchによるディープラーニングの実装に関しては、こちらで解説していますので、この記事ではあまり深掘りはしません。

なお、今回のエージェントでは、安定した成功を得られません。500ステップを達成することがあったりなかったりします。これについて幾つかの分析を行い問題点を列挙していきます。

それを踏まえて次回はエージェントをDQN(Deep Q-Network)の手法を取り入れたものに改造します。DQNはGoogleのDeepMindが2015年に開発した深層強化学習の手法です。詳しくは次回に解説します。

では、前回の記事で使用した線形モデルのエージェントにQネットワークを導入することから始めましょう。


ここから先は

16,897字 / 2画像

キカベン・読み放題

¥1,000 / 月
このメンバーシップの詳細

この記事が気に入ったらチップで応援してみませんか?