これまでの講では、経験から価値や方策を直接学んだ(モデルフリー)。今回は経験から環境モデルを学び、そのモデルで計画まで行う(モデルベース)。そして両者を一つに統合する。

講義スライド: PDF

モデルベース強化学習

全体像はループだ。実際の経験からモデルを学び、モデルで計画して価値や方策を得て、その方策で行動してまた経験を集める。

モデルベースの利点は、モデル学習が単なる教師あり学習である点にある。経験タプル $(s,a) \to (r, s')$ をデータセットとみなせば、報酬 $s,a \to r$ は回帰問題、遷移 $s,a \to s'$ は密度推定問題だ。強化学習に特有の難しさ(非定常性、ブートストラップ)なしに、回帰・分類のあらゆる道具をそのまま使える。モデルは表引きから線形モデル、ガウス過程、ニューラルネットまで何であってもよい。欠点は誤差の源が二つに増えることだ。モデルも誤り、その上で解いた価値も誤る。

モデルは経験を一般化する:AB例

モデルがなぜ役立つのか。第4講にも出たA、Bの例が、それを裏返して見せてくれる。8回の短い経験がある。Aから始まったエピソードはただ一つだけで、報酬0で終わった。Bは何度も現れ、たいてい報酬を与えた。

実際の経験だけでMCを回すと $V(A) = 0$ だ。Aが現れたその一回が0だったからだ。ところが経験から表引きモデルを立てると、「Aの次にはBが来る」と「Bはたいてい報酬を与える」が別々に記録される。このモデルから偽の経験を引いて学習すると、両者が結合して $V(A) \approx 0.75$ が出る。モデルが散らばった統計を継ぎ合わせて一般化したのだ。これが計画を学習問題に変えるサンプルベース計画の力である。

不正確なモデル

モデルが誤ると、どこまで悪くなるのか。モデルベースRLの性能は、その近似モデルの最適方策までが上限だ。世界を誤って学べば、誤った世界の正解にとどまる。二つの対策がある。モデルが信頼できないと思えばモデルフリーに戻ること、そしてモデルの不確実性を明示的に抱えて計画すること(ベイジアン)だ。現代のモデルベース手法が短い想像ロールアウトだけを使い、誤差の蓄積を管理するのも、同じ懸念の延長である。

Dyna

Dynaは実際の経験を二つの場所に使う。一つは直接学習(モデルフリー更新)、もう一つはモデル学習だ。さらに加えて、学んだモデルから想像経験を引き、追加で更新する(Dyna-Q)。シルバーの迷路実験では、実際の一歩ごとに想像計画を0回・5回・50回添えると、同じ実際の経験でも道をはるかに速く見つける。想像が実際の経験を余さず絞り出すわけだ。

ここに落とし穴がある。モデルが古びるとどうなるか。シルバーの二つの実験が答える。壁が新たに塞がって道が難しくなると、Dyna-Qは空回りしながらも結局モデルを直して適応する。ところが壁が開いて近道ができると、Dyna-Qは古いモデルに安住し、その近道をなかなか見つけられない。良くなった世界を見られないのだ。解法は、長く行っていない場所に探索ボーナスを与えるDyna-Q+だ。次講の探索問題の予告でもある。

シミュレーションベース探索

計画を全状態に撒く必要はない。今の状態を根として、そこからのサブMDPだけを解けばよい。これが前向き探索であり、全体を解くよりはるかに安い。

根からモデルで複数のエピソードを最後までシミュレーションし、各初手の平均成績を付ければ、単純モンテカルロ探索だ。ここに木を乗せたものがモンテカルロ木探索(MCTS)である。MCTSのシミュレーション一回は二つの部分に分かれる。木の中ではこれまでの値で改善される木方策に従い、木の外では固定された無作為ロールアウト(基本方策)を回す。結果から木の値を更新し方策を改善するこの反復は、実はシミュレーション経験に対するモンテカルロ制御だ。だから木は良い手の方へ育ち、最適行動価値へ収束する。単純MC探索が初手だけを評価するのと違い、MCTSは木全体が有望な枝へと非対称に成長する。

囲碁がこの手法の舞台だった。ある局面の価値を、その場から始めた無作為対局の平均勝率で付けるという大胆な発想が通じた。MCTSが入ってから数年で、コンピュータ囲碁はアマチュア級位からプロの敷居まで跳ね上がった。MCTSの強みは明確だ。有望な枝だけを選んで深く掘り(best-first)、局面をその都度評価し、サンプリングで次元の呪いを避け、規則さえ回せればよいブラックボックスモデルにも通じ、いつ止めても答えを出し、並列化も容易だ。

シミュレーション経験にMCの代わりにTD(ブートストラップ)を使えばTD探索だ。モデルフリーでTDがMCより効率的だった論理が、探索の中でもそのまま繰り返される。最後にDyna-2は二つの記憶を合わせる。実際の経験からTDで学ぶ長期記憶(一般的知識)と、今の局面のシミュレーションからTD探索で学ぶ短期記憶(現状況の知識)を足して価値を出す。後のアルファ碁の「あらかじめ学習した価値網+リアルタイム探索」という構図こそ、まさにこの発想の後裔だ(第10講)。