pubDate: 2024-05-09
author: sakakibara
機械学習には
私は強化学習を前職で使用していたこともあり、少し詳しい。
なぜ、強化学習が一般的ではないのか?その理由は主に2つ考えられる。
第一に、強化学習は教師あり学習や教師なし学習とはことなり、制御工学にそのルーツを持つ。 強化学習という分野はいわゆるニューラルネットワーク(NN)の登場以前から存在しており、 NNの登場により、脚光をあびるようになった。 そのため、もともと制御工学の数学色の濃い理論にいかにNNを組み込むかが課題となっており、 教師あり学習や教師なし学習に比べて、高度な知識が必要となる。
第二に、強化学習は制御対象に該当する”環境”をシミュレーションする必要がある。 この環境のシミュレーションが非常に難しいのだ。 というのもalpha-goなどのように囲碁や将棋などのボードゲームであればシミュレーションは容易だが、 実際の環境、例えば、自動運転車やロボットの制御など、物理シミュレーションを行う必要があり、また、それでも不十分である場合があるので、 現実でトレーニングする必要がある。これが非常に高くつく。
そのため、近年ではすでに溜まっているデータを使って、強化学習を行う手法、所謂オフライン強化学習などが研究されている。
強化学習は制御工学の一分野であり、問題設定としては制御主体となるエージェント(Agent)と被制御対象となる環境(Env)の間の相互作用を考える。 Agentは環境にたいして行動(action)をとり、Envはその行動に応じて内部の状態(state)を変化させ、観測値(observation)を返し、報酬(reward)を返す。 なお、状態と観測値は一致する場合がある。
最も単純な例として、Agentが複数のスロット台を操作し、最大の報酬を得るという問題を考える。 これは多腕バンディット問題と呼ばれる。
ここで、複数のスロット台が環境となる。 ただ、この環境はstateがステップ毎に変化せず、報酬のみが返される。 このような環境を非定常環境と呼ぶ。 また、Envのstateはactionにより変化しない。
さて、Agentは最大の報酬を得たいとしよう。 この場合、スロットに対して、 行動をとる。 なお、はを選択し、プレイするということを意味する。 また、確率で行動をとるとする。 この場合、状態や観測値は変化せず、報酬を得ることができる。
この場合、行動を行った場合のAgentが得る報酬の期待値は
となる。
を行動価値関数と呼ぶ。 とはいっても行動価値関数はただの平均なのでその更新式は以下のようになる。 実際の行動価値関数をとする。
特に、
さて、どのスロットを選べば最大の報酬を得られるだろうか? そう、単純に最大の行動価値関数を持つスロットを選べば良い。
ここで、最大の行動価値関数を持つ行動をのようにして表す。 しかし、最初の段階ではどのスロットが最大の行動価値関数を持つかわからない。 そこで、確率でランダムにスロットを選び、それ以外の場合は最大の行動価値関数を持つスロットを選ぶという方法をとる。 この手法を-greedyと呼ぶ。
さて、以上で多腕バンディット問題の解法を説明したが、これを入口として未知な環境に対する強化学習には主に2つの手法がある。
多腕バンディット問題は価値ベースの手法である。 価値ベースの手法は上で説明したようにだいたいが最大の行動価値関数を計算し、行動価値関数を最大にする行動を選択するという流れである。 次にもう一方の方策ベースの手法について説明しよう。 バンディット問題では行動が確率で選択されるとした。 より一般には観測値が観測された条件のもとで行動を選択する確率を方策と呼ぶ。 上の例では方策はどのに対しても確率がであったが、 方策はAgentがどのように行動するかを表す確率分布であるため、Agentの行動を決定するためには方策を決定する必要がある。 そして、この方策を勾配法により最適化することが方策ベースの手法である。
方策が何かしらの変数で表されるとしよう。 このは例えば、を正規分とした場合の平均や分散などを表現するパラメータである。 方策パラメータとも呼ばれる。 (確率分布の全体の集合における局所座標を表すとも考えられる) 実用上、これらのパラメータはNNで表されることが多い。 つまり、やは
を再現するNNとなる。
さて、次回からはより精密に価値ベースの手法や方策ベースの手法について説明していく。
確率や確率変数は中学・高校の数学で習うが、そこでは確率というものを直感的に理解することが目的であり、厳密な定義はされない。 そのため、次の言葉は少々混乱をきたすかもしれない。
“確率変数は変数ではなく関数である。“
def:
可測空間と可測空間に対して
写像が 任意のに対してを充たすとき、 写像は可測関数であるという。
そして確率空間における(主にへの)写像を確率変数とよぶ。
なぜ、こんな回りくどい定義をするのかというと、論理体系の柔軟性を上げるためである。 たとえば、サイコロを振って出た目が以下である確率を考える。 この場合、サイコロを振ってどのような目がでるかについての標本空間をとする。 また、考える事象が以下であるならばとなるだろう。 だが、これでは考える事象によって、標本空間が考える問題毎に様々であり、一般的な議論ができない。 そこで、その表現の多様さを写像によって隠すことで、一般的な議論ができるようになる。
そして、考えている事象が加法族に属するために、確率変数は可測関数でなければならない。
つまり、
という意味なのである。