【苦しみながら理解するReinforcement Learning】第3章 強化学習問題

さてと…気にせず進むか…

これからとこうとしている問題の紹介の章。

つまりは強化学習問題に関する章。

エージェントと環境間のインタフェース

ここいきなり重要そうなことが羅列されているんですが…

強化学習とは、相互作用から学習して目標を達成する問題の枠組みそのもの。
エージェントとは、学習と意思決定を行う者。
環境とは、エージェント外部の全てから構成され、エージェントが相互作用を行う対象。

エージェントと環境は相互作用を行い、エージェントは行動を選択し、環境はその行動に応答してエージェントに新しい状況を提示する。
環境を完全に指定すると強化学習問題の1つの例を表す「タスク」を定義することになる。

section 3

複雑なロボットでは、個々に協会を持った多くの異なったエージェントが同時に動作している。
例えば、あるエージェントは高レベルの意思決定を行い、低レベルエージェントが直面するような状態の一部を作り出すなど。

強化学習の枠組みは、環境から目標指向的に学習する問題を抽象化したものである。
以下の3つの信号がエージェントと環境の間を行き来する。

  • エージェントの選択(行動)を表すもの
  • 選択の根拠(状態)を表すもの
  • エージェントの目標(報酬)を表すもの

すごい良い例がいくつかあるので、ここは書籍見た方がいいですよ!

目標と報酬

強化学習において、エージェントの目的あるいは目標は、環境からエージェントに送られる特殊な信号の観点から形式化することが出来る。
目標に関する考え方を形式化するために報酬信号を用いることは、強化学習の最も大きな特徴の1つである。

報酬信号は、エージェントにどのように目標を達成してほしいかでなく、何を達成してほしいかを伝える方法である。

強化学習の扱い始めの段階では、報酬(学習の目標を定義するもの)がエージェント内ではなくて、環境内で計算されることに驚くことがある。
我々の目的のためには、学習エージェントの協会を物理的な体の限界ではなく、制御の限界に置いて方が都合が良い。

収益

エージェントの目標は期待収益の最大化。

$$ R_t= r_{t + 1} + r_{t+2} + r_{t+3} + ・・・ + r_T $$

エージェントと環境斧相互作用の部分系列をエピソード(もしくはtraials)と呼ぶ。
各エピソードは終端状態という特殊な状態で終わる。

上記の式の収益情報は連続タスクにおいては問題がある。
再悠宇時間ステップが T = ∞ で、最大化しようとする収益は容易に無限となりえる。
そこで、割引の概念を必要とする。

$$ R_t= r_{t + 1} + \gamma r_{t+2} + \gamma r_{t+3} + ・・・ + \sum_{k=0}^∞ \gamma r_{t+k+1} $$

$$ \gammaは割引率で、0 ≦ \gamma ≦ 1 $$

エピソード的タスクと連続タスクの統一的記述

エピソード的タスク:エージェントと環境の相互作用が分離したエピソード群(エピソード的タスク群)に必然的に分解されるもの
連続タスク:そのようにならないもの

この両方の場合を正確に同時に説明できるような記法を確立しておくことが重要。
そのために以下の2点を取り決める。

  • 記法を乱し、エピー粗番号の明確な参照を行わない。
  • エピソードの終了が特殊な九州状態に入ることと考える。

end_of_an_episode

$$ R_t = \sum_{k=0}^T \gamma^k t_{t+k+1} $$

マルコフ性

エージェントは環境からの信号の関数として意思決定を行い、この信号は環境の状態と呼ばれる。
状態信号には何が必要なのか、それを得るためにどのような情報を期待すべきか、すべきでないかを論じる。
特にマルコフ性と呼ばれる環境斧性質その状況信号を定義する。

この本では、状態という言葉は、どのようなものであれ、エージェントが利用可能な情報を意味する。
状態表現はもともとの近くを高度に処理したものであるか、あるいは、近くの系列から時間の経過とともに組み立てられた複雑な構造でありうる。

典型的なアプリケーションでは、エージェントが状態表現からそれ以上の情報を得ることを期待すべきである。
他方で、エージェントが状態信号から環境に関するあらゆること、あるいは意思決定に有用そうなあらゆることを知ることは期待すべきではない。

全ての関連情報をうまく保持することの出来る状態信号はマルコフ的である、あるいはマルコフ性を持つと言われる(以下に形式的に定義する)

$$ P_r {S_{t+1} = S’, r_{t+1} = r|S_t, a_t, r_t, S_{t-1}, a_{t-1}, ・・・, r_1, s_0, a_0} $$

sは状態、rは報酬、aは行動だった。
つまりは、時刻tで取られた行動に対して、環境が時刻t+1においてどのように応答するか。
この応答は以前に起こったあらゆることに依存する。

状態信号がマルコフ性を持つなら()、t+1における環境の応答はtにおける状態と行動表現のみに依存することになり以下のようになる。

$$ P_r {S_{t+1} = S’, r_{t+1} = r | S_t, a_t} $$

一つ前の式がこの式と等しい時に限り、状態信号がマルコフ性を持ち、マルコフ状態であると言われる。
この場合、全体としての環境とタスクもマルコフ性を持つと言われる。
もし環境尾がマルコフ性を持ち、現在の状態と行動が与えられるなら、その上の式(1ステップダイナミクス)から次の状態と行動を予測することが出来る。

マルコフ性が成り立つ場合の理論を完全に理解することは、より複雑で現実的な非マルコフ性の場合に拡張するための基礎になる。

マルコフ決定過程

マルコフ性を満たす強化学習タスクはマルコフ決定過程(Markov decision process)MDPと呼ばれる。
状態と行動の空間が有限である時は、有限MDP。
MDPを理解すると最近の強化学習の90%を理解することになる。

!!

sとaが与えられたとき、次の可能な各状態s’の確率は、

$$ P_{ss’}^a = P_r {S_{t+1} = s’ | s_t = s, a_t=a} $$

これは遷移確率(transition probability)と呼ばれる。
同様に報酬期待値は

$$ R_{ss’}^a = E {r_{t+1} = s’ | s_t = s, a_t = a, s_{t+1} = s’} $$

価値関数

ほとんど全ての強化学習アルゴリズムは価値関数(value function)に基づく評価を行っている。
この関数は状態(あるいは状態行動対)の関数で、エージェントがある状態にいることがどれだけ良いのか(あるいは、ある状態において、ある行動を行うことがどれだけ良いのか)を評価する。

期待される収益はエージェントの行動に依存するので、価値観数は特定の方策に関して定義される。
方策πとは、各状態s∈Sと行動a∈A(s)で、状態sで行動aを撮る確率π(s, a)への写像であった。

  • 状態価値関数(state-value function)

状態sにいて方策πに従ったときの期待収益は以下の通りとなる。

$$ V^\pi (s) = E_{\pi} {R_t | s_t = s} = E_{\pi} { \sum_{k=0}^{\infty} \gamma^k r_{t+k+1} | s_t = s } $$

\begin{align}
E_{\pi} {} & :エージェントが \pi に従う時の期待値
関数V^{\pi} & :方策 \pi に対する状態価値関数
\end{align}

  • 行動価値関数(action-value function)

方策πのもとで状態sにおいて行動aをとることを価値。

$$ Q^{\pi} (s, a) = E_{\pi} {R_t | s_t = s, a_t = a } = E_{\pi} {\sum_{k=0}^{\infty} r_{t+k+1} | s_t = s, a_t = a } $$

状態価値関数と行動価値関数を見積るには、モンテカルロ法(ランダムに集められた標本値の平均化を行う)を使う。

tとkがごっちゃになりそう…
時点tでk回目のプレイという理解でいいですよね?

ある状態の価値と、その後に続く状態(後続状態群)の価値との関係を表す式は以下の通り。

\begin{align}
V^{\pi} (s) & = E_{\pi} {R_t | s_t = s}
& = \sum_a \pi(s,a) \sum_s’ P^a_{ss’} [ R^a_{ss’} + \gamma V^{\pi} (s’) ]
\end{align}

展開は書籍をみて欲しいんですが、Γが割引率ということを覚えていれば大丈夫です!
また、この式をBellman方程式と呼ぶらしい。

最適価値関数

強化学習問題のタスクを解くことは、最終的に多くの報酬獲得を達成するような方策を見つけることを意味する。
ある方策が他の方策よりも良いとき(等しい方策があってもいい)、その方策を最適方策という。
最適方策は1つ以上存在するかもしれないが、全ての最適方策をπ*と書く。

最適方策群は、同じ状態価値関数(最適状態価値関数)を共有する。

$$ V^* (s) = \max_{\pi} V^{\pi} (s) $$

最適方策群は、同じ最適行動価値関数(Q*)を持つ

$$ Q^* (s) = \max_{\pi} Q^{\pi} (s) $$

Vを使ってQを書くと以下の通り。

$$ Q^* (s) = E{r_{t+1} + \gamma V^* (s_{t+1} | s_t = s, a_t = a}$$

最適性と近似

タスクに対して最適方策を生成するには極端な計算コストを要する。
めったに遭遇しない状態群には少ない労力を割き、頻繁に遭遇する状態群に対しては良い意思決定を行うように努力するという方法で、最適方策を近似することが強化学習のオンライン性によって可能である。
これが、近似的にMDPを解く他のアプローチと強化学習とを区別する重要な性質である。

「【苦しみながら理解するReinforcement Learning】第3章 強化学習問題」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です