派生問題:複合的な方策の一般化と関数近似は如何にして可能になるのかこれまでの推定価値関数のように、単一の状態や単一の状態と行動の組み合わせのみを前提とした場合、状態の数と行動の数が少ない場合にしか方策を規定できなくなる。そのため、限定された部分集合的な経験を一般化(generalization)することで、既知の状態や既知の状態と行動の組み合わせから未知の状態や未知の状態と行動の組み合わせに対応する価値を近似的に算出する必要がある。強化学習が適用される視覚情報のセンシング技術などのように、同一の状態で同一の経験が得られる保証の無い場合には、とりわけ過去の経験から未だ経験していない状態や行動へと一般化することが求められる。learning)の問題と接点を持つことになる。approximation)の一般化方法を強化学習アルゴリズムに組み込むことにより、目的関数となる既知の価値関数から関数全体を近似する一般化を試みることになる。そのためニューラルネットワークやパターン認識、決定木などのような教師あり学習は、強化学習問題においても有用なアルゴリズムとして挙げられるかもしれない。全ての関数近似方法が例外無く強化学習に適している訳ではない。ニューラルネットワークでは、静的な訓練データ集合を前提としているために、同一のデータで複数回の試行が実行されることを想定されている。強化学習では、環境やそのモデルとの相互作用を通じて、学習がオンラインで実行可能でなければならない場合もある。そのためには、新データを随時獲得しつつ漸進的に学習し続ける方法が必要になる。function)」を参照した関数近似方法が求められる。非定常目的関数とは、時間と共に変異する目的関数を意味する。方策が変化しない場合であっても、訓練データ内の目的価値が動的計画法やTD学習法などによるブートストラップ法によって生成される場合には、その目標価値は非定常型となる。した非定常性を扱うことを不得手としている関数近似方法は、強化学習には不向きと言える。error)」を最小化するように動作する。強化学習における価値の予測問題では、入力値に該当するのが状態で、目的関数に該当するのが真の価値関数となる。したがって、パラメタθを用いた価値Vの近似に関する平均二乗誤差MSEは次のようになる。V_{t(s)}]^2$$Pは異なる状態の誤差を重み付けする分布を表す。あらゆる状態の誤差をゼロまで小さくすることは、通常ならば不可能だ。そのためこの分布は重要な位置付けにあるとされる。一般的に状態数はθの要素数に比して極めて大きい。言うなれば関数近似器の近似能力の自由度は希少資源のようなものだ。一部の状態でより良い近似を得るためには、他の状態での近似の質を犠牲にせざるを得ない。分布Pは、このトレードオフの関係を指し示している。問題解決策:大域最適解と局所最適解の区別この最小二乗誤差に固執すべきか否かは議論の余地がある。強化学習問題の枠組みにおいて重要となるのは、最小二乗誤差の追究ではない。強化学習で求められるのは、教師あり学習の予測を機能的に再利用することでより良い方策の発見へと応用していくことだ。optimum)」を発見することに他ならない。この理想的な目標は、線形関数などのような比較的単純な関数近似方法においては達成可能である場合が多い。ニューラルネットワークや決定木などのような比較的複雑な関数近似においては、ほぼ不可能である。optimum)」へ収束するように動作する。これは、非線形関数近似それ自体の目的の達成という点では十分な解決法として観られる場合がある。強化学習問題の事例の多くにおいて、最適解への収束は見受けられていない。この関数近似問題は、この点で未だ研究途上にあると言える。architecuture)」とも関わりを持つ逆伝播を用いた多層ニューラルネットワークが採用される場合がある。learning)」を用いた方法となっている。用いた状態価値推定を行動価値推定に拡張することは比較的容易に実現できる。ここでもまた、探索を確実に実行させる方法として、「方策オン型」と「方策オフ型」の区別が導入される。v_t$$という形式で記述できる。a_t)$$に対する近似であれば良い。対する逆方向のビューは次のようになる。\overrightarrow{0}$$SarsaやQ学習のような制御に応用するには、上記のような行動価値予測計算に方策改善と行動選択方法を関連付けて実装する必要がある。行動全体が巨大な離散集合か連続値となる場合は特に、こうした設計に明確な解を与えられるほどには、研究は進んでいない。Architectures)」という概念が取り沙汰にされるようになった。architecture)は、非線形関数の水準を意味する。深さがあるということが意味するのは、深層アーキテクチャが構造的にもアルゴリズム的にも「階層分化」しているということだ。Layer)の個数に比例して「深くなる」。function)を幾つも階層的に組み合わせ、比較的低水準の層で抽出した個別具体的な特徴ベクトルが比較的高水準の層に渡されるに連れて抽象化されていくという機構によって、概念の表現を可能にしている。この概念の抽象化された表現は関数近似を前提とした「一般化(generalization)」によって成り立っている。深層学習の機能は関数近似と一般化による概念の抽象化を可能にする点にあると言える。表面的に観れば、深層学習の特徴は深く層の数の多いニューラルネットワークとして記述できる。重要なのは、深層学習のアルゴリズムが観測したデータ点を対象とした概念の抽象化による情報の抽出が如何にして可能になるのかだ。representation)」、あるいは単に「特徴(feature)」と呼ぶ。自然言語処理のみならず、音声認識や画像認識をはじめとしたパターン認識においては、入力可能な音声や画像のパターン情報から認識に有用な特徴ベクトルを抽出することが先決となる。認識に適用可能な少数の有用な特徴ベクトルが抽出できれば、線形分類器やベイズフィルターなどによってクラス確率推定やラベリングが可能になる。内部表現、特徴の抽出が要求されるのは、観測したデータに潜在的な構造が含まれているためだ。データが局所的なクラスタとして分布している場合には、事前にデータ・クラスタリングを実行した後に、各クラスタに対するデータ処理を実行した方が効率が良い。したクラスタは「カテゴリ(category)」とは異なって、人間が事前に把握していた集合とは別のあり方でもあり得る関連を指し示す。した関連は、元来無関係と思われていた複数の問題設定を紐付けることによって、それら複数の問題を一挙に解決するアルゴリズムへの道標を連想させることもあり得る。theorem)」が物語るように、あらゆる問題設定に対して機能する万能なアルゴリズムはあり得ない。多くの問題設定に対応し得る汎用性の高い内部表現を抽出できれば、より汎用的な問題解決策となるアルゴリズムを設計することも可能になる。Gradient)」に苦しめられていた。多層化されたニューラルネットワークでは、損失関数のパラメタの勾配が0に近付いてしまう。最急降下法による勾配が小さくなることで、それ以上学習が進まなくなってしまうのだ。SVM)」が脚光を浴びたためだ。SVMはニューラルネットワークのように局所収束の問題に直面する訳ではない。この方法はカーネル法による複雑な非線形的な識別分類をも可能にする。database)の手書き文字認識に対するベンチマークテストでも、当時はニューラルネットワークを上回る性能を発揮していた。SVMはパターン識別方法の一種であると共に、データ・クラスタリングの一種でもある。このクラスタ分析では、クラスタと非クラスタの差異が重視される。SVMは「マージン最大化」によって、各クラスタの内外境界を決定する。ここでいう「マージン(margin)」とは、あるクラスタの内外境界から最も近傍に位置するデータとの距離を指す。二次元平面上の情報空間でクラスタリングを実行する場合、各クラスタの内外境界を規定するためには、クラスタを区別する線分を引く必要がある。この差異化は、所与の各データを前提とした場合のみならず、未知の新たなデータが入力された場合にも適用できなければならない。なければそのクラスタ分析結果は汎化可能性を失う。したがってここで記述する線分は、可能な限り各データの中心を通過するのが好ましい。言い換えれば、「マージン」が最大となるように、線分を記述した方が良いのである。サポートベクターマシンは、このマージン最大化の原理により、未知のデータに対しても妥当なクラスタリングを可能にすると期待されている。これに対しニューラルネットワークのとりわけ逆伝播による学習では、原則的に教師データに対してのみ学習結果を保証する。学習データの無い特徴空間上においては、分析が初期値に依存することになる。故に決定境界の導入にも偶発性が伴う。ニューラルネットワークとSVMのアルゴリズム的差異そうなると、そもそもにおいてSVMとニューラルネットワークが比較されるのは、まさにMNISTの手書き文字認識の如く、ある一定の問題設定を前提とした比較の観点が導入された場合の等価機能主義的な分析方法を採用した場合に限られる。双方は手書き文字認識のような問題を設定した場合には機能的に等価となり得るだろう。アルゴリズム的な等価性は全く無い。approximation)」において特徴付けられる。形式ニューロンの入出力関数における微分可能性を背景としたシグモイド関数の機能は、多層パーセプトロンによる出力値を0から1の間の連続値に限定することを指向する。教師データとの誤差すらこの範疇の連続値で正規化してデータ化することが可能なのだ。ニューラルネットワークを特徴付ける機能は、単純に文字認識のような問題の解決にあるというよりは、むしろ出力値を教師データに近似していくことにある。Q-networks(DQN)だ。強化学習問題の枠組みの観点から観れば、この組み合わせの選択は別のあり方でもあり得る。強化学習アルゴリズムが深層学習のようなアルゴリズムとの結合を要求するのは、状態あるいは状態対行動の組み合わせが大量にあり得る場合のメモリやデータ量の面で限界に直面してしまうからだ。この場合の深層学習は、強化学習アルゴリズムで状態や状態対行動の組み合わせの「複合性の縮減」が如何にして可能になるのかという問題設定を前提とした問題解決策として導入されているのである。これは、言い換えれば「一般化(generalization)」の問題として設定できる。状態や状態対行動の組み合わせの観測データを一般化することで、より広汎な状態や状態対行動の組み合わせに対する近似を構成していくことが求められているのだ。approximation)」であろう。それは強化学習問題の枠組みにおける価値関数をはじめとした目的関数からサンプルを抽出して、そこから関数全体を近似するように一般化を実行していく。関数近似は教師あり学習の一種だ。畳み込みニューラルネットワークは、これを可能にする具体例の一つとなるだろう。抽象化するなら、この一般化問題に対する機能的に等価な問題解決策は直ぐに思い付く。観測データから未知のデータをベイズ的に予測する統計的機械学習のモデルは、状態や状態対行動の組み合わせに対しても適用できる。状態や状態対行動の組み合わせに関する観測データから未知の潜在的な構造を推定することによって、より効率的に報酬を探索していくこともまた、状態や状態対行動の組み合わせに伴う複合性への対処法となるはずだ。枠組みは、強化学習アルゴリズムを導入することの派生問題となる一般化の問題の枠組みとなる。この問題設定における深層学習の機能は、関数近似に他ならない。このことは、従来の深層学習の理論的な貢献が強化学習の一般化問題を主題にしていることからも明らかである。「深層学習の観点から観れば、強化学習は幾つかの課題を抱えている。今日まで成功した深層学習のアプリケーションが大量の手続き的な学習データを必要としていたのに対して、強化学習アルゴリズムは、頻繁に発生する疎のノイズが含まれ、遅延も伴うスカラー型の報酬信号から学習できなくてはならない。気掛かりなのは、教師あり学習で発見された入力データと目的変数との直接的な関連性に比して、何千もの時間ステップから成る可能性のある行動とその結果として得られる報酬との間に遅延が伴うということである。一つの問題は、深層学習のアルゴリズムではデータのサンプルが独立していると仮定されるのに対して、強化学習の場合は通常、相関の高い状態の系列に遭遇するということである。言えば、強化学習では、アルゴリズムが新しい行動を学習するに連れて、データ分布が変異する。固定された基礎分布を仮定する深層学習では、この変異性が問題となる可能性がある。p1.尤も、深層学習の関数近似器としての機能が如何にして可能になるのかを知るには、強化学習と深層学習の接続を可能にしている特徴工学を確認しなければならない。Gamesを主題として設計されている。Networks)を関数近似器として搭載したQ学習アルゴリズムである。系列を前提に、環境と相互作用する。中から行動を選択する。この行動は、ゲームの環境に影響を与えると共に、エミュレータの状態を更新する。それに伴い、ゲームのスコアも計算される。エミュレータの内的な状態はエージェント自身によっては観測されない。これは現在のスクリーン上の情報をピクセル値で表現したベクトルである。この値は、ゲームスコアが変異することで規定される。一般的にゲームスコアは、事前の行動と観測の系列に依存して規定する可能性を持つ。行動についてのフィードバックは、数千単位の時間ステップが実行された後に伝播される。エージェントは現在の映像のみを観測する。それ故にゲームの課題は部分的に観測されることになる。多くのエミュレータの状態は知覚的に変換される。現在の状況が完全に理解することが可能なのである。表現することができる。ゲームの戦略はこの系列に依存する。エミュレータにおける全ての系列は有限個の時間ステップで終了すると想定される。結果的に、単純に時刻tにおける状態表現として全系列を利用することにより、MDPにおいての標準的な強化学習の方法を適用することが可能になる。エージェントの最終的な目標は、将来的な報酬を最大化する方法で諸行動を選択することでエミュレータと相互作用することである。ここで重要となるのは、将来的な報酬は時間ステップごとのγの因子によって割り引かれる(discounted)されるという、強化学習ではお馴染みの想定である。時刻tの将来的な割引された収益(return)は、次のようになる。\sum_{t’=t}^{T}\gamma^{t’-t}r_{t’}$$ここで、Tはゲームが終了した時点の時刻である。a)$$は、幾つかの系列状態sを観測すると共に、幾つかの行動aを選択するという時間ステップを踏んだ後に規定されることがわかる。それはいずれの戦略に追従した場合でも到達可能な最大期待収益として表現される。]$$ここで、πは系列と行動の写像となる方策を表す。最適化された行動価値関数はベルマン方程式を踏襲している。これは次のような直観(intuition)を基礎としている。a’)$$の期待収益を最大化する行動$$a’$$を選択することであるということになる。a]$$強化学習の基礎的な発想は、次のようなベルマン方程式の再帰的かつ反復的な更新によって行動価値関数を推定することである。algorithms)では、iを無限にすることで、Q値を最適解へと収束させる。無限大の反復は実用性に欠けるため、汎化(generalisation)に基づく近似(approximation)が必要になる。a)$$が実行されなければならない。典型的な強化学習アルゴリズムでは線形の関数近似が用いられてきたのに対して、深層強化学習では、ニューラルネットワークによる非線形の関数近似が採用される。この場合、θはニューラルネットワークの重みパラメタとして再記述される。この時、深層強化学習の学習は、i回の反復によって変異する損失関数$$L_i(\theta_i)$$の系列を最小化する訓練として実行される。a]$$は、i回の反復に対する目的関数である。distribution)」として表現される系列sと行動aに対する確率分布である。この損失関数を最適化する時、前回の反復処理から得られたパラメタ$$\theta_{i-1}$$は固定される。深層畳み込みニューラルネットワークの推論は、便宜上それぞれtanhの活性化関数を持つ3層のネットワーク構造を想定するなら、次のようになる。r)$$は強化学習エージェントの状態、行動、報酬から構成された特徴量を意味する。*は畳み込み演算子を表す。Wとbで表記されている記号はそれぞれの層の重み行列とバイアスベクトルを表す。注意しなければならないのは、目的変数はネットワークの重みに依存するということだ。これは教師あり学習とは対照を成した性質である。言うのも教師あり学習においては、この目的変数は学習が始まる前に固定されるためである。深層強化学習はそうではない。エージェントにとって、目的変数は可変である。それは機械学習エンジニアやデータサイエンティストのようなシミュレーション世界を超越した観測者によって先験的に与えられる訳ではない。外部から入力されるはずの「教師データ」は、強化学習のモデルの内部に再導入(re-entry)される。強化学習モデル全体で観れば、目的変数は、ベルマン方程式に基づく再帰的な学習アルゴリズムによる自己言及によって、認識論的に構成されるのである。強化学習エージェントの目的変数に対する外部言及は、モデルの観点では、外部に言及している自己への言及に他ならない。損失関数を重みに関して微分すると、次のような勾配が得られる。よって損失関数を最適化することは、計算効率上有用となる。各時間ステップの実行語に重み行列が更新されることで、期待値が振る舞い分布$$\rho$$とエミュレータ環境$$\mathcal{E}$$のそれぞれにおける単一のサンプルに変換されるのならば、既存のQ学習アルゴリズムとなる。Methodも提供している。関数近似器として機能する深層学習は、深層畳み込みニューラルネットワークだけではない。後述するように、深層学習の理論を記述するなら、様々な機能的等価物を想定できる。Q-Networkを構成している関数近似器とQ学習を疎結合状態で設計することで、関数近似器の機能的な代替可能性を担保している。これによりこのライブラリは、機能的に等価な深層強化学習との精度や速度の比較も可能にしている。model)を入力された観測データ点の集合から推定する。未知の生成モデルからその確率分布に準じて観測するデータ点が生成されているという発想は、ベイズにおいてもお馴染みの考え方だ。観測者は当初、生成モデルの形式を知らない。model)となるP(X|θ)を仮定するところから分析が始まる。x_n}$$となり、パラメタθに依存した学習モデルを調節することで生成モデルを再現していく。最終的に学習モデルは生成モデルの近似として形式化される。distribution)」に他ならない。distribution)」に対応する。MAP)推定を単に採用するだけでも、生成モデルはベイズ的に推定することが可能になる。枠組みにおける学習モデルの一つと見做されている。この概念は、ベイジアンネットワークでも縁のある「グラフ(graph)」と「ノード(node)」の区別を導入することで特徴付けられている。graph)」に区別される。誤解を招くことを恐れずに言えば、この二つのグラフ概念は、UMLのクラス図における「関連」概念とよく似ている。有向グラフが関連の誘導可能性を明示的に限定している関連であると喩えるなら、無向グラフはその誘導可能性を未規定にして表現する。同じようにクラス図で喩えるなら、ノードはオブジェクトに対応すると言える。関連付けること一般を「リンク(link)」と呼ぶ。