Refining Multiple Models using Kalman Temporal Differences (KTD) framework北尾　健大†　　白井　屋人††三浦　孝夫† †法政大学大学院理工学研究科システム理工学専攻　〒 184–8584東京都小金井市梶野町3-7-2 ††島根大学大学院総合理工学研究科情報システム学領域　〒690-8504島根県松江市西川津町1060 E-mail: †takehiro.kitao.7j@stu.hosei.ac.jp, ††shirai@cis.shimane-u.ac.jp, †††mmiurat@hosei.ac.jpあらまし　本研究は多重モデル学習による学習制度の向上を目的とし，このためにカルマンTD構造を用いる．カルマンTD(KTD)とはカルマンフィルタとTD誤差(時間的差分)学習を組み合わせた学習方法である. しかし,カルマンフィルタと同様に自明でない初期バラメタ依存性問題がある．この問題に対して，複数の初期バラメタを使用して同時に学習を行い,逐次的にモデル選択を行う手法を提案する.キーワード　強化学習,カルマンフィルタ,カルマンTD誤差タについて述べる．第4章でKTDの特徴と問題点を提示し，
1.前書書き
近年，強化学習はシステム制御，ゲーム，人工知能など幅広い分野での応用に向けて研究が行われている[1]．強化学習では，教師あり学習と異なり明示的正解を示す教師情報が存在しない. その代わりに，動作主(エージェント)は環境の相互作用から学習を行う．具体的にはエージェントが，環境に対して行動を取り状態が遷移することで，報酬と呼ばれる評価値を得る。エージェントはこの報酬が最大となるように学習する．強化学習の代表的な手法として，Q学習やSarsaなどが挙げられる[6].しかし，強化学習を現実問題に適用する場合，状態が速度や角度，位置といった連続値であることが多い．上記の手法は，状態が離散値である場合を想定しており，連続値に対し直接的に適用することができない．そこで，システム制御の枠組で発展した,カルマンフィルタ[3]と強化学習を組み合わせたカルマンTD(KTD)が提案されている[2]．この手法を用いることで，状態が連続である問題に対して効率的に学習が可能である．反面、カルマンフィルタに由来する自明ではない初期バラメタ依存問題が存在する.このため,適切な初期バラメタを設定しなければ，学習がうまく機能しない．KTDを使用して，効率的に学習するためにはどの様に適切なバラメタを決定するかを考慮する必要がある．しかし，バラメタの推定は容易でない。本研究では，複数のバラメタを多重に学習することでこの問題の解決を図る.本稿では，複数の初期バラメタを同時に学習し，モデル選択を行う手法を提案する.提案手法の主な利点は,カルマンフィルタの特徴である学習過程を迫うことが可能な点にある．本研究の貢献は以下の2つである. (1)KTDの初期バラメタの探楽コストを削減する. (2)適切なモデル選択によって学習精度が向上する.第2章で強化学習について述べ，第3章ではカルマンフィル第5章で提案手法について述べる．第6章で提案手法の有用性を論じ、第7章で結論とする.
2. 多重強化学習
2.1  強化学習強化学習とはエージェントが現在の環境を知覚し，それを元に行動を選択・実行しながら状態を遷移することで，目的を達成する学習手法である[1].教師あり学習とは異なり,強化学習では目的に対して具体的な解法は与えず，取った行動に対して「報酬」という形で評価値を与えることで適切な行動を学習する.一般的な強化学習手法として，TD学習，Q学習， sarsaなどがある．これらの手法は状態を離散値として扱う．現在の時刻tにおける状態と行動はst, atであり,次の時刻t+1での状態はst+1となる.状態間の遷移確率をp°t. st+1と表すと,これは条件確率として記述できる. Pat,st+1 = P{st+1|st, at, st-1, at-1 ** so, ao}このようにn個前の時刻まで考慮している場合をn重マルコフ過程と呼ぶ。また，１つ前の時刻のみ考慮することを(単純)マルコフ過程と呼び下記の式で表す. Pst,ste+1  = P{st+1|st,at}エージェントが何らかの行動aを決定することで状態が遷移し，それに対応して報酬(正負を含める)を得る．このような離散マルコフ決定過程を基にした逐次的な決定過程のことをマルコフ決定過程と呼ぶ.状態sにおいて実行可能な行動A(s)がいくつも存在するとき，実行すべき行動の選択基準を政策という．政策は，状態sにおいて行動aを行う確率式(s,a)で表現される.エージェントは学習することで問題を効率的に解く政策や最終的に受け取る報酬が最大となる政策を獲得できる.強化学習では，解決すべき問題に対して，目標(解)を設定する．強化学習は，目標に合わせて報酬を与え，選択した行動に基づき報酬を決定する.ここで，エージェントは得られる報酬を知覚している．この報酬の総和を最終的に最大化することが強化学習の目的である.しかし，報酬は現在の行動によって与えられるが，遼択・実行した行動が後続の報酬に影響することが考えられる.このため，遅延報酬を考慮して報酬を最大化する必要がある.強化学習では報酬を使いルールの価値(状態行動対)を決定する．特に，本研究で使用するQ学習では推定値ベースの価値Q(行動価値関数)を利用する[6].すなわち，ある状態においてある行動を実行すれば，どれだけの報酬を行ることができるかの期待値をＱ値は意味する．ここで状態s,行動aの時の価値をQ(s,a)とすると， Q値は適切に更新されれば最適な期待報酬値に近づいていく．適切な評価値に近づけるためには，報酬(直接的な報酬と遅延報酬を含めた)を手掛かりに試行錯誤しながら更新を行い，値を保持する．状態sの次状態をsとすると,下記にQ学習の更新式を示す.
エージェントはルールの価値を政策に変換して，その政策を基に行動を決定する.しかし，行動選択手法を用いれば，直接的にルールの価値から行動を選択することができる.主な行動選択手法として「グリーディ手法」「ε-グリーディ手法」「ソフトマックス手法」などがある強化学習の現実問題への適用では，状態数が膨大であることや状態の表現が連続値であることが問題になる[2], [8]. 例えば,式(1)の状態が離散値であることを仮定するQ学習では，保持するQ値は状態と行動の組合わせの数だけ存在するため，状態数の増加に比例して必要なメモリ量が膨大になる．また，Q値は状態と行動の組によって決定するため，状態が無数に存在する連続値には対応できない.価値関数Qを関数近似するため，φ。を状態を特徴ベクトルに変換したwを重みベクトルとする. 下記に価値関数を線形近似した式を示す.
状態を特徴ベクトルに変換する方法として，ガウスカーネルやタイルコーディング[9],フーリエ級数[10]を使用する方法が提案されている．しかし，上記で示した線形の形では価値関数を表現するのには限界がある．そこで，ニューラルネットワークを用いた非線形近似する方法が提案されている．しかし,ニューラルネットワークを用いたものは，学習が発散する例が示されており正しく学習できるとは限らない. 2.2  TD学習TD学習とはオンラインで学習可能な，TD誤差を使用した学習方法である．一般的には下記の式で表現できる．
θは価伯関数の推定値，Kははステップサイズバラメータ, δ,はTD誤差である．TD誤差とは1ステップ後の価値と現在の推定値の差である．TD学習の代表的な手法として， 2.1章で説明したQ学習とSarsaが挙げられる. 下記にSarsaの更新式を示す.
Q学習とSarsaの違いは，更新式の次状態のQ値である． Q学習では実際に選択した行動に関係なく，次状態で最大のQ値を選択して更新する. 一方でSarsaは実際に取った行動に合わせて更新を行う．前者を政策オフ型，後者を政策オン型と呼ぶ. Q学習とSarsaのどちらを使用するべきかはタスクによって決まる.
2.3 多重モデル学習
提案手法の一部である多重モデル学習について述べる．多重学習とは, １エージェントで強化学習モデルを複数同時に学習することを意味する．この手法を使う理由として，強化学習は全てバラメタが異なっており，状況に応じて適切なモデルを利用するためである.多車学習で実行する強化学習は，政策オフ型でなければならない．政策オン型である場合，更新式と選択する行動が連動しているため学習中のモデルから一つ選択して行動を選択しなければならない. この場合，選択されたモデルの政策は改善されるが，その他のモデルは適切に改善されない．政策オフ型であれば，実際に選択した行動に関係なく，次状態で最大のQ値を利用して更新されることから，全てのモデルの改善が行われる.以下に多重学習のイメージ図を示す.提案手法は以下の手順でモデル学習を行う. (1)初期バラメタを複数選択して多車学習(2)モデルの分散から傾きを計算(3)傾きを用いてモデルを選択
3.カルマンフィルタ
カルマンフィルタとは，システムの観測値から観測不可能なシステムの状態を推定するフィルタリング手法である[3], [4].
カルマンフィルタは，状態と観測値の関係を，下記の状態空間モデルを用いて以下の2つの式で表す.
ここで，式(4)は状態方程式と呼ばれ，行列Aは時刻:での状態x 1と時刻i − 1での状態x 1 − 1を関連付ける行列である．式(5)は観測方程式と呼ばれ，行列Hが時刻:での観測値と時刻iでの状態の関係を表している．式(4)と式(5)において，w i −1とviはそれぞれプロセスノイズ，観測ノイズを表している．ノイズはp(w)～N(0,Q), p(v)～N(0,R)に従うホワイトノイズである.カルマンフィルタは，予測と更新の2つのステップを繰り返し笑行し，状態を推定していく.
(9) (10)ここでX i k −1を事前状態推定値と呼ばれ，時刻i −1までのデータに基づいた，時刻での状態の予測推定値であり， ĉ i ,は事後推定値と呼ばれ，時刻までのデータに基づいた，時刻での推定値である．またP i l .-1も2 l .-1と同様に，時刻i − 1までのデータに基づいた，時刻iでの予測共分散である．同じくP illは時刻iまでのデータに基づいた，時刻iの共分散である. K』をカルマンゲインと呼び，共分散が最小になるように式(8)で計算する.共分散が減少することに伴い,カルマンゲインも減少する.カルマンフィルタのイメージ図を以下に示す.
4. カルマンTD
4.1 カルマンTDの基本要素と特徴カルマンフィルタを使用して，連続値強化学習の重みθを推定するフレームワークをカルマンTD(KTD)と呼ぶ[2].  TD誤差を用いるアルゴリズムであれば，KTDを使用して学習が可能である．KTDには以下の6つの特徴がある． (1)オンラインで学習(2)膨大な状態数や連続状態が扱える(3)可能な限り少ない学習回数で政策を獲得(4)非定常状態が扱える(5)探索と知識利用のジレンマにおける情報を利用可自治(6) Q学習のMax演算子のような非線形が扱えるKTDを使用するには，”プロセスノイズ”と”観測ノイズ”の2つのバラメタを選択しなければならない．もし学習を行うタスクに対して，事前知識を保持しているのあれば，それに従ってバラメタを選択すればよい．しかし，実際には事前知識を保持している事はほとんどなく，バラメタの選択方法は自明ではない．そのような場合，幾つかのバラメタで実行してみて，精度が良いものを選択する.  Geist [2]らはプロセスノイズにおいて， P v i = η P v i − ı j − ı ( η << 1)を使用し，試行錯誤により全てのバラメタを決定している．プロセスノイズにおいて，本研究でも同様の方法を使用する. 4.2 カルマンTD-QここではTD誤差を用いるアルゴリズムとして，Q学習を使用した，カルマンTD-Q(KTD-Q)について述べる．KTD-Qは状態空間モデルを下記のように表現する.
ここで，rfは時刻iで獲得した報酬を表す.カルマンフィルタと違い，カルマンTD誤差では推定値を解析的に計算することが不可能なため，下記の線形推定器を仮定する.
Ô ï l = Ô ï l ë l + K i (r i — ñ i l ë l )
この線形推定器に最も適したθを計算する．また，式(12)にはmax漢算子がついているので，３章で扱ったカルマンフィルタでは計算できない．そのため，非線形カルマンフィルタの一種であるUKF(Unscented Kalman Filter)を使用して計算する[5].  UKFの考え方として，シグマポイントと呼ばれる少数の代表点を平均値の周りで使用し、計算を行う. KTD-Qのアルゴリズムを下記に示す. "シグマポイントの計算”でUKFのシグマポイントを計算しており，具体的な計算方法は以下の式で求まる.
nはθの次元数を表し，κはサンプリングの幅を調整するスカラー値である. (√/(n + κ)P i i − 1)  iは行列(n + κ)P i i − 1 をコレスキー分解をしたj列目である．また，Wは以下のように計算
初期値: 8010 and P010 for  i ← 1, 2, ….do do観測遷移t = ( s i, a , 8 s +1 )予測ステップ; Ô i l i — 1 = Ô i — 1 l i — 1 , P i i -1 = P i -1 i -1 i -1 i P v i ;シグマポイントの計算; Θ ž l ž − 1 = { δ ž − 1 , 0 ≤ j ≤ 2p}(from θ ž l ž − 1 and P ž l ž − 1 ); W = {w ; , 0 ≤ ; ≤ 2p}; R έ [ έ − 1 = { i { i { i {_1 = Q o i (si,ai) - ymax b ∈ Ão i (si+1,b),0 ≤ j ≤ 2p};指標の計算: ñí|i-1 = L j =0 wj ñí|i-1 Pori = Σ 2p o w ( θ ( j ) P,r, = ∑ 2p更新ステップ; K i = Por. Pr-1 , Ô ç | = Ô ç | ç − 1 + K ç ( r ç − ñ ç | ç − 1 ); P r i = P i i − 1 − K i P r i K i ; end forされる.

5. 提案手法
提案手法の扱う問題として， 4. 1章のKTDの初期バラメタ依存である．既存のKTDでは，自明でない2つの初期バラメタ,プロセスノイズと観測ノイズを選択しなければならない.適切にバラメタの選択をしなければ，学習精度の悪化が考えられる.  KTDでは試行錯誤を重ねることで，適したバラメタを選択してきた．しかし，この選択方法では試行錯誤を行っているため，時間的コストの高さが問題点である．本稱では， 2.3章の多重モデル学習を用いて，複数の初期バラメタを同時に学習し，探索コストを削減する手法を提案する．また，学習過程に合わせて，同時に学習したバラメタを適切に選択する方法も示す.具体的なモデルの選択方法として共分散のフロベニウスノルムの変化に注目する.モデル選択は2ステップに分けて行う．最初のステップでは,提案手法はモデル学習の打ち切り判定を行う.カルマンフィルタでは，常に分散の小さくなるようにカルマンゲインを計算し，フィルタリングする．常に分散は減少しているため，ある間隔での傾きは負になる．一方で，傾きが負でなければカルマンフィルタが機能しておらず，適切なバラメタでないと判断できる.そのようなモデルは学習を打ち切る.したがって, j番目のモデルの傾きをα とすると，以下の条件になる.
T 2つめのステップは，傾き最大となるモデルの選択である.全てのモデル対して.式(13)に従い,傾きが求まっているので，その中から負の傾きが最大のものを選択する．ここで傾きの大きさは，間隔内での選択したバラメタの適合度を表していると仮定する．提案手法は，以上の2ステップを任意の問隔で行い，モデルを選択をする.以下の分散の傾きの例を使用して，モデル選択方法の具体例を示す.例では, ３つのモデルが同時に学習している.最初のステップでは傾きの計算を行い，傾きが正であるモデルの学習を打ち切る. ②と③は傾きが負であるため，学習を継続させる.一方，①は傾きが正であるため，学習を打ち切る．第２ステップは，モデルの選択である．ここでは，負の傾きが最大のモデルを選択する．したがって，選択されるモデルは③である．選択されなかった②も学習は継続して行う.
6. 来
験
6.1 実験準備
本章では，提案手法の有効性を実験で確認する．学習の経過に合わせ，適切にモデル選択が行わているか，一定期間ごとに学習を停止し，選択されたモデルの評価する．既存のKTDと比較することで，モデルの選択の有効性を確かめる．実験では倒立振子問題を扱う[2], [7]. 倒立振子問題とは，長さと質量が未知の振り子に取り付けられているカートに，力を加えて追立位置でバランスをとる問題である．この問題ではright force (+50), no force (0), left force (-50)の3つの行動が選択できる。全ての行動には[-10, 10]の範囲で一様にノイズが含まれる。状態空間は連続であり，角度ϕと角速度心で表現される.状態遷移は選択した行動と力学に基づき以下の式に従う.تgsin(ϕ) — βmlϕ²sin(2ϕ)/2 — βcos(ϕ)a 4l/3 — βmlcos²( φ )ここでgは重力加迷度(g = 9.8m/s²), mは振り子の重量(m = 2.0kg), Mはカートの質量(M = 8.0kg), lは振り子の長さ(l = 0.5m), β = m+xである.角度が[一ၚ, ၚ]の範囲内であれば報酬は0,それ以外は-1を与える.倒立振子の図を下記
に示す.
特徴ベクトルには1つの定数と9つのガウスカーネルを各行動ごとに使用する.ガウスカーネルの中心は{− ,0, x} × {−1,0,1},標準偏差を１とする.よって,特徴ベクトルの次元は(1 + 9) × 3 = 30になる.また割引率γは0.95に設定する.提案手法と比較手法は共にKTD-Qを使用し，共通の初期バラメタとして,P 010 = 101, θ010 = 0に設定する.提案手法では同時に学習するモデルの数を9,初期バラメタの組み合わせをそれぞれプロセスノイズηと懇測ノイズPn,とすると{0.0,0.01,0.1} × {1.0,0.5,0.1}である．比較手法では3バターンのバラメタを使用する．第1にGeist&Pietquin [2]らが使用していた初期位置バラメタ,プロセスノイズのη=0,観測ノイズP ni =1.0である．第2にプロセスノイズη=0.01,観測ノイズP n , =1.0,第３にプロセスノイズη=0.1,観測ノイズP n , =1.0である.振り子の初期位置として(ϕ, ϕ)=(0, 0)を基準にして，微小な値のノイズを角度，角速度に加えた位置とする．初期位置から報酬-1を獲得するまでを1エビソードと呼び，それを300回繰り返す.これを１セットと呼び, 100セット実行して平均を取る．行動はランダムで選択し，学習を行う．25回ごとに学習を停止し，現在まで政策の精度を評価する．その際にエビソードが終了するまで，行動選択はグリーディ手法を使用する．1エピソードの最大数は3000とする．これは5分間失敗せずバランスを保つことができたことを意味する．また提案手法と比較手法では，学習中は同じエビソードを学習する．
6.2実験結果
25回ごとの精度を表1に示す．Geist&Pietquinらが使用していたプロセスノイズη=0,観測ノイズP n i =1.0の場合と比較して，25エビソード時点で最大158.6%学習籍度が向上しているのが分かる．また最悪の場合でも225回の時点で3.4%の精度悪化で抑えられている．η=0.01, P n i =1.0の場合，50エビソードまで順調に学習しており，50エピソード時点で比較手法に比べ，24.6%精度が向上してる．しかし50エビソード以降,学習が進むに連れ，学習精度が向上しなくなっている．η=0.1, P n i =1.0の場合，全体を通して学習がうまくできていない. 6.3考数比較手法３つの分散の変化を表２に示す。プロセスノイズが大きいほど，学習が進むに連れ，分散が大きくなっている．表
1の学習結果と照らし合わせると，分散の値の大きくなる幅が大きいほど学習精度が低下するのが分かる．一方で，学習が進むに連れ分散が減っているものは，精度が向上している．このように，プロセスノイズにより学習精度に差が出る理由として，式(11)の状態方程式で倒立振子問題の状態遷移を正しく表現できていないからだと考えられる.
提案手法によって選択されたモデルを表3に示す．表から3種類のモデルしか選択されていないことが分かる．その他のモデルは分散が大きくなって打ち切られている．選択されたモデルを注目すると，３つのモデルで選択されやすい範囲がある．η=0.0,観測ノイズP n, =1.0の場合，学習初期に選択され， η=0.0, P n i =0.5が学習中期，η=0.0, P n i =1.0は学習後期に多くなっている．このことから観測ノイズは学習精度に大きく関わっており，学習が進むに連れ，値を大きくすると学習籍度が向上することが分かる.
7.結
論
本研究では，カルマンTDを使用した，複数のバラメタを同時に学習する多重モデル学習手法を提案した．多重モデルで学習することで，カルマンTDで問題であった自明でない初期バラメタを探すコストが削減された．実験では，比較手法と比ベ，学習初期に最大158.6%精度が向上することを示した．また，プロセスノイズを大きく設定すると，分散は学習が進むにつれ精度が悪化する．加えて，観測ノイズは学習の進行に合わせて，次第に大きくすることで学習籍度が向上する．
文
敵
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] Sutton, Richard S., and Andrew G. Barto. Reinforcement learning: An introduction. Vol. 1. No. 1. Cambridge: MIT press, 1998. Geist, Matthieu, and Olivier Pietquin, "Kalman tempo- ral differences." Journal of artificial intelligence research 39 (2010): 483-532. Kalman, Rudolph Emil. "A new approach to linear filtering and prediction problems." Journal of basic Engineering 82.1 (1960): 35-45. Greg Welch and Gary Bishop, "An Introduction to the Kalman Filter", TR-95-041, Department of Computer Sci- ence, University of North Carolina at Chapell Hill, updated in 2006 Julier, Simon, Jeffrey Uhlmann, and Hugh F. Durrant- Whyte. "A new method for the nonlinear transformation of means and covariances in filters and estimators." IEEE Transactions on automatic control 45.3 (2000): 477-482. Watkins, Christopher JCH, and Peter Dayan. "Q-learning." Machine learning 8.3-4 (1992): 279-292. Lagoudakis, Michail G., and Ronald Parr, "Least-squares policy iteration." Journal of Machine Learning Research 4.Dec (2003): 1107-1149. Buoniu, Lucian, et al. "Approximate reinforcement learn- ing: An overview." Adaptive Dynamic Programming And Reinforcement Learning (ADPRL), 2011 IEEE Symposium on. IEEE, 2011. APA Albus, James S. "A new approach to manipulator con- trol:  The cerebellar model articulation controller (CMAC)." Journal of dynamic systems, measurement and control 97.3 (1975): 220-227. Konidaris, George, and Sarah Osentoski. "Value function approximation in reinforcement learning using the Fourier basis." (2008).