0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ラビットチャレンジ - 深層学習 Day4 Section1 強化学習

Last updated at Posted at 2020-12-06

0.概要

本記事は日本ディープラーニング協会認定の講座プログラムである「ラビット・チャレンジ」が提供している科目の1つである深層学習のレポートである。
記事タイトルに記載のとおり、Day4 Section1 強化学習について以下にまとめる。

1.強化学習

教師あり学習、教師なし学習と並ぶ学習手法の大きな分類の1つ。

教師あり学習は教師の有無の違いはあるもののデータからなんらかの特徴を学習していっていたが、強化学習はなんらかの目的を設定し、それを達成できるように学習する。

長期的に報酬を最大化できるように環境の中で行動を選択できるエージェントを作ることを目標とする。
行動の結果として与えられる報酬をもとに行動を決定する原理を改善していく。

エージェントは方策に基づいて行動することでその結果に応じた報酬を環境から得られる。
また、行動の結果、環境の状態が変化する。
強化学習はこのエージェントがうまく目的に向かって動くよう方策を学習する。

既知のデータを利用すること、未知のデータを探索することいずれも大切ではあるが、トレードオフの関係にあるため調整する必要がある。
既知のデータの利用ばかりではそれ以上よりよい行動にはならず、未知のデータの探索ばかりでは既知のデータを活かせない。

参考:
https://qiita.com/ikeyasu/items/67dcddce088849078b85
https://blog.brainpad.co.jp/entry/2017/02/24/121500

1.1.Q学習

行動価値関数を行動するごとに更新することによって学習を進める方法。

1.2.関数近似法

価値関数や方策関数を関数近似する手法。

1.3.価値関数

エージェントが目的にゴールするまで今の方策を続けた場合の報酬の予測値を得る関数。

1.3.1.行動価値関数

環境の状態と価値を組み合わせた価値に注目する場合に使用される。
ある環境の状態である行動を取った時の価値。

状態$s$+行動$a$

Q^{\pi}(s,a)

1.3.2.状態価値関数

環境の状態の価値に注目する場合に使用される。
環境の状態が良ければ価値が上がる。

V^{\pi}(s)

1.4.方策関数

ある環境の状態においてどのような行動をとるのか確率を与える関数。
価値関数の値(価値)を最大化する行動をとるようにする。

状態価値関数$V$、行動価値関数$Q$を元にどういう行動をするか。

\pi(s)=a

1.5.方策勾配法

方策をモデルにすることで最適化(学習)する手法。
NNの重みの更新式と同じイメージだが、強化学習ではより報酬を得られる行動をする(最大化)ため第1項と第2項を加算している。

方策関数の重みの更新

\theta^{(t+1)}=\theta^{(t)}+\epsilon\nabla J(\theta)

$t$:時間
$\theta$:重み
$\epsilon$:学習率
$J$:誤差関数

\begin{eqnarray}
\nabla_{\theta}J(\theta)&=&\nabla_{\theta}\sum_{a\in A}{\pi_{\theta}(a|s)Q^{\pi}(s,a)} \\
\nabla_{\theta}J(\theta)&=&\mathbb{E}_{\pi_{\theta}}[(\nabla_{\theta}log\pi_{\theta}(a|s)Q^{\pi}(s,a))]
\end{eqnarray}

$\pi_{\theta}(a|s)$:エージェントが取る行動の確率(方策関数)
$Q^{\pi}(s,a)$:ある状態で撮ったある行動から得られる報酬(行動価値関数)
$\pi_{\theta}(a|s)Q^{\pi}(s,a)$:ある行動をとる時の報酬

取れる行動は複数あるため、総和となっている。

参考:https://blog.syundo.org/post/20171117-reinforcement-learning-policy-gradient/#:~:text=方策勾配法は、方策,ていくアプローチである。&text=などの利点がある,的なものを扱う。

X.ラビットチャレンジとは

ラビットチャレンジとは、日本ディープラーニング協会認定の講座プログラムの1つ。
E資格を受験するためにはこのラビットチャレンジ等、いずれかの講座プログラムを修了しなければならない。

ラビットチャレンジの特徴は「現場で潰しが効くディープラーニング講座」の通学講座録画ビデオを編集した教材を使用した自習スタイルであるという点。
サポートは他の講座より少なく、受け身ではなく自主的に学んでいく姿勢でなければ進められないが、その分、他の講座に比べると安価であり、手が出しやすい。
ある程度知識がある人、自力で頑張るぞというガッツのある人向けではないかと感じる。

bnr_jdla.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?