2019.08.01Q学習は強化学習の代表的な手法の1つとなります。Q学習を遷移先状態の最大Q値を使うので楽観的な手法と呼ばれる強化学習手法です。これから丁寧に説明していきます。(初心者におすすめの教科書)強化学習とは以下の図を使って説明してきます。左のロボットが強化学習で学習するとします。このロボットのように強化学習で学習する対象をエージェントや強化学習エージェントと呼びます。エージェントは環境に対して何かしらの行動を行います。その行動によって変化した状態と報酬を環境から受け取ります。エージェントは受け取った状態と報酬を元に、累積報酬の最大化を目指して行動パターンを学習していきます。強化学習では、エージェントに正解データではなく報酬を与えます。報酬は正解や不正解といったものではなく、アクションの良さといったものになります。教師あり学習と教師なし学習の中間的な手法と呼ばれます。詳しくは以下の記事にまとめました。https://www.tcom242242.net/entry/2017/09/20/060902/Q学習とはQ学習は代表的な強化学習手法の1つです。a)\)というテーブルを保持しています。(図の左)Q学習ではこのQテーブルの値を以下の式によって更新します。a’)\)を使って学習するのが主な特徴となります。遷移した先の状態の最も良いところだけを利用します。そのため楽観的な手法と言われます。-Q(s,a)\)をTD誤差といい、Q学習ではこの誤差を小さくするように学習していきます。\(\alpha\)は学習率といい0〜1の間の値をとるパラメータです。TD誤差をどれだけ反映させるかを決定します。\gamma\)は割引率といい、遷移先の最大Q値をどれだけ利用するかを決めるパラメータです。学習手順では、具体的なQ学習の学習手順(アルゴリズム)を見ていきます。a)\)を更新ステップ1〜3を繰り返す各ステップを図を使いながら、説明していきます。a)\)に従って行動選択をします。ここからε-greedy行動選択やsoftmax行動選択等を用いて行動を選択をします。a)\)が高い行動を優先的に選択します。ここでは、行動\(a\)を選択したとします。行動を選択したら実際に行動を実行します。2.環境から遷移先状態\(s’\)と報酬\(r\)を受け取る次に行動\(a\)によって遷移した状態\(s’\)と報酬\(r\)を環境から受け取ります。これを強化学習では観測と言ったりします。a)\)を更新します。a’)\)を使うことがQ学習の特徴となります。a)\)がある程度収束するまで、ステップ1〜3を繰り返します。ようなグリッドワールドの問題を扱います。シンプルなマップになります。強化学習エージェントは最初に左下にいます。右上にゴール、左上に危険地帯があるとします。ここからエージェントは右上の家に向けての最短経路を学習することが目的となる問題です。左上か右上に到着したら、ゲーム終了とみなし、エージェントを左下に戻します。(これをエピソードという単位で表現します)ソースコードPythonを用いて実装します。ちなみにPythonの3系を用います。前回と同様にQ学習エージェントクラス、環境(グリッドワールド)クラスに分けて実装します。Q学習エージェントまずQ学習です。コードは以下のようになります。33〜41行目のactメソッドでエージェントは行動選択をします。ここではε-greedy手法によって行動選択をします。43〜56行目のobserveメソッドで遷移先の状態と報酬を観測します。ここでは報酬が観測したときにのみ学習するようにしています。58〜65行目のlearnメソッドでQ値の更新をしています。グリッドワールドグリッドワールドクラスでは、エージェントからの行動を受け取り、遷移先状態や報酬を返します。ソースコードの全体像Q学習エージェントとグリッドワールドを組み合わせて、エージェントに学習させます。以下のコードを実行するとエピソード毎に得られる報酬をプロットします。実験結果エピソード毎の累積報酬をプロットしました。(1エピソードはスタート地点からゴールに着くまで)横軸はエピソード、縦軸が累積報酬となります。学習が進むことに高い報酬を得れていることがわかります。N本バンディットプロブレムN本バンディットプロブレムのプログラムを作成した。Networkの2つのネットワークを用います。Network(DQN)はQ学習のQテーブルをニューラルネットワークで関数近似した強化学習アルゴリズムです。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。ぬ吉.com大学院、某IT企業で機械学習関連のプロジェクトに携わっていました。趣味は機械学習、アプリ開発、FX等の投資。記事に間違いがあれば、Twitterかコメントで教えていただければと思います。質問があれば、Twitterで連絡いただければと思います。進化計算ゲーム理論IT技術系まとめ投資全般ホーム検索トップサイドバーたぬ吉.com大学院、某IT企業で機械学習関連のプロジェクトに携わっていました。趣味は機械学習、アプリ開発、FX等の投資。記事に間違いがあれば、Twitterかコメントで教えていただければと思います。質問があれば、Twitterで連絡いただければと思います。Learning2マルチエージェント強化学習30マルチエージェント深層強化学習2評価用問題3方策勾配法1深層強化学習5行動選択1推薦アルゴリズム1機械学習11回帰3教師あり学習3教師なし学習2雑多なこと14colab2GPU1サーベイ6メモ2脳科学1遊び実験3雑記2他大学院受験1英語1メタ情報ログイン投稿フィードコメントフィードWordPress.orgタイトルとURLをコピーしました。