階層的潜在変数モデルをメディアとしたラダーネットワークの半教師あり学習形式、ノイズ除去型自己符号化器の機能 | Accel Brain

階層的潜在変数モデルをメディアとしたラダーネットワークの半教師あり学習形式、ノイズ除去型自己符号化器の機能

Accel Brain; Console×

派生問題:事前学習は如何にして可能になるのか

モデル複合性が高いために最適化が困難となる場合や問題そのものが困難である場合、直接的にモデルを訓練することで問題を解く試みは現実的ではないかもしれない。問題解決策としては、初めにより単純なモデルを訓練した後に、そのモデル複合性を増大させていく方が、効果的な場合もある。あるいは、より単純な問題を解いた後に、より複合的なタスクを目的としたモデルを訓練した方が効果的な場合もある。「事前学習(pre-learning / pre-training)」は、こうして当のより複合的な問題をより単純な問題として再設定した上で、問題解決策展開していくことを可能にする。

大別するなら、事前学習アルゴリズムは「教師あり事前学習(supervised pre-learning)」と「教師なし事前学習(unsupervised pre-learning)」に区別される。教師あり事前学習の多くは「貪欲法(Greedy algorithms)」に準拠したアルゴリズムとなる。貪欲法では、問題を多くの諸要素に区別した上で、その要素ごとに個別に最適な要素を求めていく。残念ながら、個々の要素における部分最適全体最適へと直結する保証は無い。だが貪欲法は、全体最適それ自体を求めるアルゴリズムに比して、しばしば計算コストの面で優れている。また貪欲法の解の質は、最適解とは言えないにせよ、少なからず満足できる解である場合が多い。それ故、一部の貪欲法に基づいた教師あり事前学習では、貪欲法によって部分最適の要素を集めた上で、全体最適を求める別のアルゴリズムで当の問題全体を解く「微調整(fine tuning)」の手続きを踏む場合がある。

情報工学者ヨシュア・ベンジオらが分析してきたように、教師あり事前学習機能は、比較的深い階層にある中間層により良き方向付けを与えることである。言うなればそれは、事前に中間層へ特徴を埋め込んでおくこと(embedding)によって、予め表現学習の予行演習をするようなものだ。実験結果に対する経験的な分析と多様体仮説に基づく直観的(intuitive)な洞察によって、教師あり事前学習は、最適化と汎化の双方において効果的であることが知られている。

一方、教師なし事前学習では、主に「層ごとの貪欲な教師なし事前学習(Greedy layer-wise unsupervised pre-learning)」が採用されている。層ごと(layer-wise)であるというのは、その独立部分が深層アーキテクチャの各層であるということに由来する。層ごとの貪欲事前学習は、一度に一つの層を扱う。そして、k番目の層を学習する場合には、k-1層までの全ての層を固定しておく。この層ごとであるという発想は、貪欲法に限らず、先に示した深層ボルツマンマシン積層自己符号化器をはじめとした表現学習アルゴリズムにも共通した質である。各層は、一つ手前の層の出力を入力として受け取る。そしてデータの新しい表現を出力として生成する。ここで目指されるのは、新しい表現の分布が、より単純なものとなることである。とはいえそれは、情報を無暗に捨象してしまうことを意味するのではない。これらのアルゴリズム表現学習である以上は、観測データ点の特徴可能な限り全て保持することが要求される。したがってシステム理論的に言えば、教師なし事前学習機能は、複合性の縮減とその保存である。

教師あり事前学習教師なし事前学習差異は、ユースケースにもある。層ごとの貪欲な教師なし事前学習は、教師あり学習問題における深層学習において、複数の層を同時に訓練することが困難である場合の回避策として活用されてきた。しかしユースケースの面で重要となるのは、「事前学習」という概念の意味論である。と言うのも、イアン・グッドフェローらも解説しているように、「事前学習」という用語は、事前学習それ自体の段階のみならず、事前学習教師あり学習の二段階を組み合わせたプロトコル全体を意味するようになったためである。事前学習後の教師あり学習においては、事前学習の段階で埋め込まれた特徴写像に準拠して、簡易な分類器の訓練が実施されるか、あるいは事前学習段階で学習されたネットワーク全体の教師あり学習が実施される。

事前学習」という概念は、それ故に一種の「フレームワーク」として形式化されている。それは設計者がモデル学習手続きを記述する場合の意味処理規則として機能している。どの教師なし事前学習を採用するにしても、それらはこの意味処理規則に代入される変数として、代替可能である。事前学習問題の枠組みの中では、事実上全ての層ごとの貪欲教師なし学習アルゴリズムが、機能的に等価選択肢として浮上してくる。設計者は、この複数の機能的に等価選択肢の中から選択する負担を強いられることとなる。実際、遅くても2010年代には既に、多くの問題設定では、教師なし事前学習機能不全に陥る場合や副作用を招く場合が多分に及ぶことが周知されている。したがって事前学習の実践者は、複数の機能的に等価アルゴリズム比較検討を言わば実務上義務付けられることになる。事前学習器の設計では、機能的等価物探索比較可能にする等価機能分析方法が実践していかなければならない。

問題解決策:「層ごとの貪欲な教師なし事前学習」の棄却

グッドフェローらが踏破したように、まず遅くても2010年代には発見されていた教師なし事前学習機能不全や副作用の派生問題については、その大多数が貪欲法に基づいた教師なし事前学習の派生問題であった。先に示した敵対的生成ネットワーク敵対的自己符号化器によって可能になる「半教師あり学習(Semi-supervised learning)」の枠組みでは、「層ごとの貪欲な教師なし事前学習」とは全く異なる設計によって、教師なし事前学習教師あり学習構造的な結合可能になっている。

一方、ハリー・ヴァルポラやアンティ・ラスマスらが展開している「ラダーネットワーク(Ladder Networks)」に基づいた半教師あり学習では、自己符号化器生成モデル教師ありモデルと同時に学習することを可能にしている。つまり、教師なし事前学習教師あり学習を段階として区別するのではなく、双方のアルゴリズムにおける学習を同時的に進行していくのである。

このように、「層ごとの貪欲な教師なし事前学習」と他の事前学習アルゴリズム区別を導入すれば、教師なし事前学習に対する先行研究者たちの<観察観察>することで、教師なし事前学習の派生問題に対する認識の偶発性発見することができる。そしてこの観点かられば、我々は別のあり方でもあり得る教師なし事前学習等価機能分析へと着手することが可能になる。

問題解決策:教師なし事前学習の正則化機能

別のあり方でもあり得る、まだ見ぬ教師なし事前学習アルゴリズム探索者たちは、教師なし事前学習に「正則化(Regularization)」の機能を見出してきた。これは、厳密に言えば、深層ニューラルネットワークの初期化戦略上のパラメタ選択が、モデル能に対して強い正則化効果を持ち得るという発想である。事前学習意味論が有名になった際には、モデルをある位置に初期化することは、ある特定の局所解を回避することで別の局所解へと方向付けることを意味すると認識されていた。尤も、深層学習問題解決策においては、局所解はもはや深刻な問題ではない。標準的なニューラルネットワーク学習手続きは、どのような種類の臨界点にも到達していないことも知られている。

しかしこう述べただけでは、事前学習が、仮に事前学習が導入されなかった場合には到達不可能であった領域へと、モデルを方向付けている可能性否定されない。例えば、コスト関数がサンプルごとに非常に高いばらつきを見せているために、個々のミニバッチが著しくノイズにまみれている勾配の推定しか与えない領域に囲まれている場合などについては、事前学習が本来到達不可能であった領域へとモデルを導く可能性否定されないであろう。

ドミルト・エルハンらは2010年、教師なし事前学習による訓練誤差テスト誤差改善を実験的に例示することで、教師なし事前学習がそれなしでは到達不可能であった領域までパラメタを方向付けることを示している。元来、ニューラルネットワークの初期パラメタはガウス分布のような確率分布を想定して乱数的に生成される。したがってニューラルネットワーク全体の訓練は、決定論的ではない。学習が実行されるたびに、異なる関数へと収束するのである。しかしこれに対して、教師なし事前学習を利用したニューラルネットワークは、それを利用していないニューラルネットワークに比して、収束する関数領域のばらつきが抑えられる。このことが意味するのは、事前学習が推定過程の分散を低下させているということである。それと同時にこの作用は、過学習リスクを低める正則化としても機能していることがわかる。言い換えれば、教師なし事前学習は、ニューラルネットワークのパラメタが到達し得る領域を予め限定しているのである。この限定は精度の実験結果にも表れる。つまり、テスト誤差の平均と分散が共に低下するのである。

しかしながら、事前学習によって得られたパラメタのどの側面が結果的に教師あり学習の段階で有効に作用したのかを特定するのは、困難極まりない。これは理論的な問題のみならず、実務的な問題でもある。仮に事前学習後の教師あり学習の精度が思うように改善されなくなった場合、モデルの設計者は、その原因を特定していかなければならない。だが事前学習によって得られた初期パラメタと教師あり学習アルゴリズムによって改めて更新されていくパラメタのいずれに原因があるのかを識別することは、事実上不可能と考えざるを得ない。仮に事前学習に問題があると仮定できたとしても、具体的にどのパラメタが有害なのかは、少なからず「人間」にとっては未知に留まる。この意味で、教師なし事前学習の段階と教師あり学習の段階の区別棄却している「ラダーネットワーク」のようなモデルは、予め上記の因果関係の分析の負担を回避していることになる。

自己符号化器による次元削減によって得られた特徴量を教師あり学習モデルデータ・クラスタリングモデルに入力しようとする場合、上記の因果関係の特定が理論的のみならず実務上のボトルネックとなってしまう。元来、こうしたユースケース期待されてきたのは、教師なし学習で有用となる特徴量が、教師あり学習においても有用となるという素朴な発想が根付いていたためなのであろう。だがこうした問題解決策の成否は、入力するデータセット、使用する教師なし学習モデル教師あり学習モデル、そしてこれらのモデルの組み合わせに依存する。例えば、事前学習された特徴量を参照することで線形分類器を訓練する場合には、その特徴量が潜在的なクラスを線形分離しなければならない。こうした質が自然と得られる可能性も勿論否定されない。だがそれは、常にではない。可能であるものの必然ではないのである。教師なし事前学習の設計者は、こうしたユースケースにおいては常に偶発性に曝されることになる。

派生問題:情報保持と情報破棄の両立

自然言語処理の領域では、教師なし事前学習表現学習として機能することが期待されている。通常、単語のトークンの埋め込み(embedding)においては、one-hotのベクトルが採用される。だが各ベクトルの距離は全て同一となるために、単語表現にone-hotのベクトルを利用する利点は少ない。だが事前学習された単語埋め込みは、単語間の類似度を単語間の距離として符号化することを可能にする。

逆に言えば、ベクトルそのものが既に豊富な特徴を有している場合には、表現学習としての教師なし事前学習の出番は無いということになる。例えば画像処理の文脈では、教師なし事前学習は必要とはならない場合が多い。画像は既に豊富な情報を有したベクトル空間に位置している。

グッドフェローらの認識する通り、今日では自然言語処理の分野を除けば、教師なし事前学習はほとんど利用されていない。自然言語処理の領域では、one-hotベクトルの問題に加えて、極めて大量のラベルなしデータ非構造化データが得られるという固有の問題もある。こうした自然言語処理ならではの問題に対して、他のドロップアウトやバッチ正則化のような正則化の技術は、そのまま再利用できるノウハウではない。これらの正則化の技術は基本的に教師あり学習問題の枠組みで培われてきた技術である。それは大量のラベルありデータを前提としている。こうしたデータセットの問題も考慮すれば、自然言語処理においては、教師なし事前学習による表現学習が有用となる。

しかし、今日の教師なし事前学習はグッドフェローらが想定するよりもしい立場に置かれている。特に半教師あり学習問題設定は、教師なし事前学習に追い打ちをかけている。と言うのも、半教師あり学習意味論においては、教師なし学習教師あり学習がそもそも両立しないアルゴリズムとして区別されているためである。

「ここで論じられているのは、教師なし学習が効果を改善することのできなかった理由が、最新の教師なし学習の多くが教師あり学習と両立しないためである点だ。問題は、教師なし学習方法の多くが元のデータに関して可能な限り多くの情報表現しようとするのに対して、教師あり学習は目前のタスクには関係の無い全ての情報を除外しようとすることにある。」
Valpola, H. (2015). From neural PCA to deep unsupervised learning. In Advances in Independent Component Analysis and Learning Machines (pp. 143-171). Academic Press., p2.

教師なし事前学習教師あり学習貢献するためには、情報の破棄を許容する必要がある。「階層的潜在変数モデル(hierarchical latent variable models)」のようなモデルを抜きにすれば、多くの教師なし学習アルゴリズムは、この情報の捨象に不向きである。階層的潜在変数モデルについても、極めて導入が複合的になってしまうがために、能を妥協した近似要求される。より単純な代替案となるのは、自己符号化器を利用することである。ニューラルネットワーク構造化させた自己符号化器ならば、教師なし学習から教師あり学習への構造的な結合も不可能ではない。しかし、自己符号化器そのものは、単層の確率変数を有した潜在変数モデルに対応している。つまり、自己符号化器それ自体は情報の破棄を許容しない。

問題再設定:教師なし学習の再導入は如何にして可能になるのか

ここで決定的に重要となるのは、教師あり学習が開始した後にも、教師なし学習を実行することが可能であるということだ。多くの問題設定では、非常に多くの情報が入力データに含まれている。そのため初期の教師なし事前学習のみでは、完全にその特徴要約することができない可能性が常に残る。一方、教師あり学習が必要としているのは、前述した通り、データの全ての特徴ではない。むしろ教師あり学習は、データの全ての特徴に対して、<有用な特徴>と<無用な特徴>の区別を導入する。だとすると、こうした教師あり学習が開始した後も尚教師なし学習が実行され続けるようなアルゴリズムならば、教師なし学習は、教師あり学習によって導入される<有用な特徴>と<無用な特徴>の差異観察することができるようになる。教師なし学習は、<有用な特徴>のみに焦点を当てることによって、データの全ての特徴要約することの負担から免除されることが可能になる。

これを前提とすれば、ヴァルポラやラスマスらが教師なし事前学習の段階と教師あり学習の段階の区別棄却したことの意味が明快となる。彼らはこの区別棄却すると共に、<教師なし学習>と<教師あり学習>の区別を、<教師あり学習>の側へと「再導入(re-entry)」したのである。ここから、<教師あり学習>の一環として<教師なし学習>を実行していくという発想が抽出される。<教師あり学習>の内部における<教師なし学習>は、<教師あり学習>の前提条件となる初期パラメタを提供する機能を担う一方で、<教師あり学習>によって導入された<有用な特徴>を受け取ることで、より良き表現学習の機会を手にする。つまり<教師あり学習>の一環として<教師なし学習>を実行していくという発想は、<教師なし学習>と<教師あり学習>を循環させるアルゴリズムの設計へと、我々の観点を向けさせてくれるのである。

一般的に、<教師なし学習>と<教師あり学習>を構造的な結合させたアルゴリズムは、「半教師あり学習」のアルゴリズムとして記述されている。しかし以上の「再導入」に基づいた循環的なアルゴリズムという発想を前提とするなら、<教師なし学習>と<教師あり学習>の構造的な結合が成功をもたらし得るのは、<教師あり学習>が<有用な特徴>の抽出との関連から要求する情報破棄と特徴集約を<教師なし学習>が実行する場合のみに限られる。

一方、<教師なし学習>には機能的な制約も加えなければならない。具体的に言えば、<教師なし学習>は、単に<教師あり学習>を目的とした表現に新しい機能を追加し続けるように作動してはならない。<教師なし学習>がどの特徴がタスクに関連している<有用な特徴>なのかを観測する前に、入力に関して可能な限り多くの情報伝播させる特徴選択を実行することは合理的ではある。しかしその合理性は、半教師あり学習問題の枠組みの中で、あくまでも半教師あり学習合理性への互換を有さなければならないのである。

問題解決策:階層的潜在変数モデル

多くの教師なし学習方法は「潜在変数モデル(Latent variable models)」として定式化されている。このモデルでは、未知の潜在変数 $$s(t)$$ が観測データ点 $$x(t)$$ を生成すると仮定される。連続変数の場合、観測データ点の生成は次のように一般化できる。

$$x(t) = g(s(t); \xi) + n(t) \tag{1}$$

ここで、$$n(t)$$ はノイズモデル化の誤差を表す。$$\xi$$は写像gのパラメタを表す。確率モデルとして表現するなら、この定式は次のように代替できる。

$$p_x(x(t) \mid s(t), \xi) = p_n(x(t) – g(s(t); \xi)) \tag{2}$$

$$p_n$$はノイズ項$$n(t)$$の確率密度関数を表す。未知の潜在変数$$s(t)$$とパラメタ$$xi$$の推論は、観測データ点$$x(t)$$と再構成された$$g(s(t);\xi)$$の誤差の最小化によって基礎付けられる。

この(1)と(2)のモデルは、データについて表現され得る考え得るもの全ての表現可能にしようとしている潜在変数を記述している。だがここでの潜在変数は、あくまでも単層として構造化されている。こうしたモデルでは、情報の取捨選択が困難となるために、再構成誤差が高まってしまう。また、抽象的な不変特徴(an abstract invariant feature)があれば、特徴の位置、方向、大きさなどのように、再構成誤差を減少させる上で有益となると思われる<有用な特徴>の詳細に関連したペナルティ項なしには、再構成誤差を減少させることは不可能である。

以上のことが示しているのは、まず潜在変数モデルが単層の潜在変数であるといういことである。そしてこのモデルでは、情報の捨象が困難になるだけではなく、抽象的な不変特徴に焦点を定めることも困難となる。

潜在変数モデルの階層化

こうした困難さを回避するには、潜在変数に次のような階層化を施すことが求められる。

$$p(s^{(l)}(t) \mid s^{(l+1)}(t), \xi) \tag{3}$$

ここで(l)は層数を意味する。この観測では、$$s^{(0)} := x$$となる。この階層化されたモデルでは、より高い層の水準の潜在変数は、もはや全ての特徴表現してはいない。より低い層では、特徴の詳細部分の表現に特化しているのに対して、より高い層では抽象化され、選択された特徴表現されている。この時、より高い水準の潜在変数は、より低い水準の変数を表現する手段になる。

$$s^{(l)} = g^{(l)}(s^{(l+1)}(t); \xi^{(l)}) + n^{(l)}(t) \tag{4}$$

しかしより一般化して言えば、より高い水準の変数は、分散のような確率分布の様々な特表現することができる。

厳密な推論、すなわち未知の潜在変数の事後確率を計算することは、典型的には数学的困難を招く。代わりに導入されるのは、変分ベイズをはじめとした近似推論である。この場合、学習は事後近似との関連からコスト関数を反復的に最小化する処理に照応する。

機能的等価物の探索:積層自己符号化器

もし階層的潜在変数モデルが簡易に定義され、学習し得るのならば、問題は解決されたであろう。しかし残念ながら、このモデルはしばしば複合的な確率論方法を訓練時に必要としてしまう。多くの訓練の形式では、ボトムアップの情報とトップダウンの事前情報を組み合わせることによって、潜在変数を層ごとに更新する必要がある。だがこれにより、ネットワーク内の情報伝播が遅延してしまう。

自己符号化器は、多くの点で、単層の潜在変数モデル類似している。ここで鍵となるのは、観測データ点$$x(t)$$の写像における推論過程である。まさにこの仮定が、潜在変数推論過程と照応するためである。ニューラルネットワーク深層アーキテクチャにおいては、この潜在変数が、隠れ層のユニット$$h(t)$$に対応する。符号化(encoder)の写像をf、復号化(decoder)の写像をgとするなら、自己符号化器は次のようにモデリングされる。

$$h(t) = f(x(t); \xi_f) \tag{5}$$
$$\hat{x}(t) = g(h(t); \xi_g) \tag{6}$$

自己符号化器学習再構成誤差$$\mid\mid x(t) – \hat{x}(t)\mid\mid^2$$の最小化によって実行される。

潜在変数モデルとの関連から言えば、符号化復号化の関連は、認知(recognition)と再構成(reconstraction)の関連として類推できる。また潜在変数モデルと同じように、自己符号化器もまた積層として階層化することができる。

$$h^{(l)} = f^{(l)}\left(h^{(l-1)}(t)\right) \tag{7}$$
$$\hat{h}^{(l-1)}(t) = g^{(l)}\left(\hat{h}^{(l)}(t)\right) \tag{8}$$

このモデルでは、$$h^{(0)} := x$$となる。更に、最終層をLとするなら、$$\hat{h}^{(L)} := h^{(L)}$$にもなる。

機能的拡張案:ラダーネットワーク

積層自己符号化器を表す(7)と(8)は、階層的潜在変数モデルを表す(4)に照応しているように見える。だが残念ながら、0 < l < L における中間層の振る舞いは、決定論的な変数モデルとしての振る舞いになる。これに対して、階層的潜在変数モデルはあくまでも確率論的な変数モデルとして振る舞う。この差異は、表現学習差異としても現れる。一方で階層的潜在変数モデルは自立的な表現能力を得る。事前情報が何であれ、確率潜在変数はその情報に何らかの付加情報を伴わせることとなる。対照的に、決定論的な変数では、情報の付加は伴わない。

この差異を乗り越える手掛かりとなるのは、(3)から得られる階層的潜在変数モデル推論構造である。(8)に対する主要な差異となるのは、$$\hat{s}^{(l)}(t)$$の推論がボトムアップの情報として得られる尤度とトップダウンの情報として得られる事前確率を組み合わせているのに対して、(8)はただトップダウンの情報のみに依存している点である。言い換えれば、(8)における$$\hat{h}(t)$$は、表現においては何ら新しい情報を付加していない。何故なら、この中間層には、ボトムアップの情報は何も入力されていないためである。

したがって、次のようなショートカットを追加することで、階層的潜在変数モデル積層自己符号化器差異を埋めることが可能になる。

$$\hat{h}^{(l-1)}(t) = g^{(l)}(\hat{h}^{(l)}(t), h^{(l-1)}(t)) \tag{9}$$

今や、$$\hat{h}^{(l)}$$は$$\hat{h}^{(>l)}$$では失われる情報を補完することができる。言い換えれば、より高い層では、全ての詳細を表現する必要が無くなる。また、写像$$g^{(l)}$$はより高い水準に由来する抽象的情報を位置、方向、大きさなどのようにより低い水準に由来する具体的な情報結合させた上で学習することができる。つまり、より高い層では、より詳細な情報よりも、目前のタスクとの関連が高いと思われる場合には、抽象的な不変特徴表現に集中することが可能になるのである。こうしてショートカットが導入された積層自己符号化器を特に「ラダーネットワーク(Ladder networks)」と呼ぶ。

Valpola, H. (2015). From neural PCA to deep unsupervised learning. In Advances in Independent Component Analysis and Learning Machines (pp. 143-171). Academic Press., p6. より掲載。

各層での並列学習

深層学習一般的なモデルは、いずれも入力層か出力層のいずれかに誤差関数が備えられている。そうした深層アーキテクチャでは、ネットワークの多くの部分が訓練信号の発生源から遠く離れてしまっている。ラダーネットワークを通常の自己符号化器と同様のアルゴリズム学習させた場合、問題は化するだけだとヴァルポラが述べているのは、この関連からである。これは、それぞれのショートカットの結合点が再構成ベクトル$$\hat{x}(t)$$に影響を及ぼす機会を持つことで、より高い層における誤差の割合が減少したままになるためだ。標準的な自己符号化器では、全ての訓練信号が階層内の全ての層を通過するように強制される。その場合でも、複数の層を介した非線形関数学習は、困難になり、かつ時間を要することとなる。

一方これに対して、階層的潜在変数モデルは、全ての潜在変数において、コスト関数を有している。それ故にラダーネットワークは、標準的な自己符号化器ではなく、この階層的潜在変数モデル構造を継承することとなる。それは、ラダーネットワークにおける各階層のいずれの水準に対しても訓練信号を入力することになるため、ラダーネットワーク学習を効率的に進めることを可能にする。

教師なし学習の再導入

まさにこの関連から、<教師あり学習>の内部に再導入された<教師なし学習>という発想が着目されることになる。と言うのも、<教師なし学習>は、単一の誤差項に由来する勾配の一方通行的な逆伝播に限られない多様な学習アルゴリズムを提供しているためである。<教師なし学習>の導入に際して、ヴァルポラが記述の出発点としているのは、主成分分析(principal component analysis: PCA)から独立成分分析(Independent component analysis: ICA)までの線形因子モデルの概念史である。PCAをはじめとした多くの線形因子モデルは、原理的には観測データ点と潜在変数ノイズ分布との関連から如何に設定し得るのかを参照問題としている。一方、ICAはどちらかと言えば表現学習アルゴリズムとして知られている。ICAは、観測信号を拡大・縮小・結合させることでその観測信号を構成している無数の互いに独立した潜在的な信号に分解するアルゴリズムである。

周知のように、こうしたアルゴリズムで利用される非線形は、線源分布の非ガウス測定する制約関数として解釈することができる。しかしヴァルポラの観点においては、そしてまた我々の問題設定との関連で言えば、次のような解釈可能である。

「非線形は、ノイズ除去関数(denoising function)として解釈することができる。」
Valpola, H. (2015). From neural PCA to deep unsupervised learning. In Advances in Independent Component Analysis and Learning Machines (pp. 143-171). Academic Press., p7.

全体として、非線形におけるPCAの学習規則は、入力の白色化や射影の直交化と組み合わせると、ICA用に調整された線形潜在変数モデルに適用される期待値最大化(expectation maximization: EM)のアルゴリズムへの効率的な近似として解釈することができる。EMアルゴリズム潜在変数モデルにおけるパラメトリック写像最適化のための方法である。それは、潜在変数期待値計算を実行するEステップとパラメタの尤度の最大化を実行するMステップを交互に実行することで学習を成り立たせている。Eステップは、写像を固定した上で、全てのtにおける$$s(t)$$の事後分布を更新する。一方Mステップはこの逆となる。つまり$$s(t)$$の事後分布を固定した上で、写像を更新する。

EMアルゴリズムとの関連から線形再構成モデルを記述するなら、次のようになる。

$$\hat{x}(t) = g^{(0)}(s(t)) = As(t) \tag{10}$$

これが意味するのは、Eステップアルゴリズムは、つまるところ次のようになる。

$$\hat{s}(t) = g^{(1)}(A^{-1}x(t)) = g^{(1)}s_0(t)) \tag{11}$$

ここで、$$s_0(t) = A^{-1}x(t)$$である。写像$$g^{(1)}$$は$$s(t)$$の事後分布に依存する。そして、ノイズ分布を$$p_n$$とし、このノイズが低い値の分散$$\sigma_n^2$$を有するとするなら、Eステップは次のように近似される。

$$\hat{s}(t) = g^{(1)}(s_0(t)) \approx s_0(t) + \sigma_n^2\frac{\partial \log p_s(s(t))}{\partial s(t)}_{s(t) = s_0(t)} \tag{12}$$

これを前提とすれば、Mステップでは$$\hat{s}(t)$$と$$s(t)$$との関連から(10)における回帰問題を解くことになる。最小化するコスト関数は次のようになる。

$$C = \frac{1}{T}\sum_{t=1}^{T}\mid \mid x(t) – g^{(0)}(\hat{s}(t))\mid\mid^2 \tag{13}$$

モデル推定において、上記のEMアルゴリズムに伴う問題は、ノイズ$$\sigma_n^2$$における収束のスケールである。もしノイズが無ければ、このアルゴリズムは完全に失速する。しかしこの問題はアルゴリズムの固定点を想定することで対処できる。同時に、以下のように逆写像をパラメタ化することも有用となる。

$$s_0(t) = f^{(1)}(x(t)) = Wx(t) \tag{14}$$

そして、Mステップでの最小化すべきコスト関数は次のようになる。

$$C = \frac{1}{T}\sum_{t=1}^{T}\mid \mid s_0(t) – \hat{s}(t)\mid\mid^2 = \frac{1}{T}\sum_{t=1}^{T}\mid\mid f^{(1)}(x(t)) – \hat{s}(t)\mid\mid^2 \tag{15}$$

仮に、$$W = 0$$で、$$\hat{s}(t) = 0$$の場合、Cは0になる。したがって、(15)は$$s_0(t)$$の共分散二値する制約を伴わせる必要がある。

以上の記述を前提とすれば、このアルゴリズムは本質的に非線形のPCAにおける学習規則と同一となる。入力データが白色化されている時、Mステップは、非線形のPCAにおける学習規則と丁度同じく、単純な行列演算となる。非線形$$g^{(1)}(s_0(t))$$は、ノイズが含まれた観測データ点を受け取った潜在変数期待値として解釈できる。まさにこの非線形こそが、ノイズ除去(denoising)となる。

ラダーネットワークの参照問題において決定的に重要となるのは、コスト関数(15)が、入力データ$$x(t)$$を直接的に参照している訳ではないということである。このコスト関数は、あくまでも、潜在変数$$s(t)$$とノイズ除去を施された変数にのみ言及している。階層的なモデルでは、このことは、どの層もコスト関数に項(term)を与えることで、訓練信号の発生源を各層のパラメタに近付けることを意味している。

問題解決策:ノイズ除去型自己符号化器

(11)で使用されているノイズ除去関数は、潜在変数事前分布$$p_s$$から導出することができる。このノイズ除去関数学習する自己符号化器は、特に「ノイズ除去型自己符号化器(Denoising Auto-Encoder)」と呼ばれている。この自己符号化器では、入力データノイズで破壊(corrupt)し、ネットワークに元の破損していない入力を再構成するように依頼する手続きを踏む。この破壊されたデータの復元を通じて、ノイズ除去型自己符号化器は、ノイズ除去機能を習得することになる。この学習は、元のデータの分布に収束する。

ノイズ除去関数からデータ確率推定値を導出することも可能であるという点は、驚くべきことである。ノイズ除去関数は絶対確率についての情報損失すると共に、相対確率に関する情報のみを保存する。何故なら、対数計算は初めに乗算を加算に変換し、定数となる正規化項は微分によって消失するためである。こうしたモデルは、相対確率のみを容易に参照できるエネルギーベース(energy-based)の確率モデル類似している。ただし、欠損データ再構成できるモデルは、全て確率密度推定量に変えることができる。したがって、入力の損失を破損として使用することによって、たとえノイズ除去関数確率の正規化係数についての情報を喪失したとしても、自己符号化器は正規化された確率推定値を導出するために使用することができるのである。

ラダーネットワークとの関連で言えば、ノイズ除去型自己符号化器機能は、ショートカットの接続を含めた過完備(over-complete)な表現を取り扱うことを可能にする点にある。と言うのも、入力がノイズによって破損されているために、ネットワークが入力を単に出力へと複製する恒等関数(identity function)的な機能では再構成が不十分になるためだ。むしろネットワークは、可能な限り容易にノイズを除去することを可能にする表現発見することへと突き動かされることになる。

ラダーネットワークは、以上のようなノイズ除去型自己符号化器の特を前提とした上で、このモデル再帰的(recursively)に適用している。コストCを最小化するノイズ除去型自己符号化器は、次のように表現できる。

$$\hat{x}(t) = corrupt(x(t)) \tag{16}$$

$$\hat{x}(t) = g(\hat{x}(t)) \tag{17}$$

$$C = \frac{1}{T}\sum_{t=1}^{T}\mid \mid x(t) – \hat{x}(t)\mid\mid^2 \tag{18}$$

学習中、ノイズ除去関数gは、x(t)を破損させるために設計者によって挿入されたノイズを除去するべく学習していく。ノイズ除去関数は、多層の写像を実現するために、幾つかの内部変数$$h^{(1)}(t)$$を有している。

$$\tilde{h}^{(1)}(t) = f^{(1)}(\tilde{x}(t)) \tag{19}$$

$$\hat{x}(t) = g\left(\tilde{h}^{(1)}(t)\right) \tag{20}$$

gにノイズ除去責任を全て押し付けるのではなく、むしろ最初に$$h^{(1)}$$のノイズを如何に除去するのかを学習することにより、その後その結果をxのノイズ除去に利用することが可能になる。

$$h^{(1)}(t) = f^{(1)}(x(t)) \tag{21}$$

$$\tilde{h}^{(1)}(t) = f^{(1)}(\tilde{x}(t)) \tag{22}$$

$$\hat{h}^{(1)}(t) = g^{(1)}\left(\tilde{h}^{(1)}(t)\right) \tag{23}$$

$$\hat{x}(t) = g^{(0)}\left(\hat{h}^{(1)}(t)\right) \tag{24}$$

$$C^{(1)} = \frac{1}{T}\sum_{t=1}^{T}\mid\mid h^{(1)}(t) – \hat{h}^{(1)}(t) \mid\mid^2 \tag{25}$$

$$C^{(0)} = \frac{1}{T}\sum_{t=1}^{T}\mid\mid x(t) – \hat{x}(t)\mid\mid^2 \tag{26}$$

学習では、(25)の最小化による写像$$g^{(1)}$$の訓練と(26)の最小化による全写像の訓練を交互に実行していくことになる。総数を拡張して一般化するなら、隠れ層写像コスト関数は次のようになる。

$$h^{(l)}(t) = f^{(l)}\left(h^{(l-1)}(t)\right) \tag{27}$$

$$\tilde{h}^{(l)}(t) = f^{(l)}\left(\tilde{h}^{(l-1)}(t)\right) \tag{28}$$

$$\hat{h}^{(l)}(t) = g^{(l)}\left(\tilde{h}^{(l)}(t), \hat{h}^{(l+1)}(t)\right) \tag{29}$$

$$C^{(l)} = \frac{1}{T}\sum_{t=1}^{T}\mid\mid h^{(l)}(t) – \hat{h}^{(l)}(t) \mid \mid^2 \tag{30}$$

ここで、$$h^{(0)}$$は観測データ点xを意味する。

上記の導入が意味するのは、コスト関数$$C^{(l)}$$が、上記の各層における符号化写像$$f^{(>l)}$$の学習のためにのみ使用されるべきであって、$$f^{(\leq l)}$$の学習のためには使用されるべきではないということだ。何故なら、このコスト関数は、$$h^{(l)}(t)$$が固定されているという想定に準拠しているためである。このことが意味するのは、学習過程全体を通じて一貫した単一のコスト関数が介在することができないということである。それは、異なる層における学習を交互に実行していかなければならないということも意味する。しかしながら、上述した(15)におけるEMアルゴリズムコスト関数を想起すればわかるように、(30)のコスト関数は次のように再記述することができる。

$$C = C^{(0)} + \sum_{l=1}^{L}\alpha_l C^{(l)} \tag{31}$$

ここで、係数$$\alpha_l$$は各層におけるコスト関数の相対的な重みを表す。上述したEMアルゴリズムの関連で言えば、$$\hat{h}^{(l)}$$は定数で、$$h^{(l)}$$に由来する勾配を利用して最適化を実行する。これに対してノイズ除去型自己符号化器では、この関連が逆転している。このことが意味するのは、複数のコスト関数結合し、モデルの全てのパラメタに関してコストの最小化によって学習していくことによって、我々は本質的に双方のタイプの学習を利用していることを意味する。

階層的潜在変数モデルの場合と同様に、高い水準の事前情報は、低い水準の順伝播型の写像への方向付けを提供する。勾配は、符号化のパスに対して逆向きに伝播される。したがってこのモデル教師あり学習との互換を有している。標準的な教師あり学習におけるコスト関数は、最上位の層Lに対して単純に追加するだけで設計できる。つまり、$$h^{(L)}(t)$$と対象との間の距離測定すれば良い。

コスト関数の無相関項

(30)が最小化されるのは、$$h^{(l)}(t) = \hat{h}^{(l)}(t) = constant$$の場合である。$$\hat{h}^{(l)}$$に関する(30)の最小化は、典型的には無相関を高める。何故なら、この最小化は回帰に等しく、如何なる外部情報再構成誤差を減少させるために利用され得るためである。$$h^{(l)}(t)$$に関する(30)の最小化は、可能な限り予測可能な射影の発見を促進する。加えて相互情報量は対称的であるために、隠れ層のユニットの活性化エントロピーが保持される限りにおいて、$$h(t) = constant$$であるところの自明な解を回避することによって、この最小化は他の特徴の予測にも役立つ。

写像$$f^{(l)}$$と$$g^{l)}$$は可能な限り十分に一般化されている。それは汎化能を損なってはいない。層lにおける隠れ層のユニットの活度の共分散行列を$$\Sigma^{(l)}$$とするなら、この共分散行列は単位行列と同値である。すなわち、

$$\Sigma^{(l)} = \mathrm{I}$$

ここで、$$\Sigma^{(l)} = \frac{1}{T}\sum_{t=1}^{T}h^{(l)}(t) [h^{(l)}(t)]^T \tag{32}$$

この活度の平均値はゼロになると仮定している。これは、写像$$f^{(l)}$$と$$g^{(l)}$$の最初の段階がアフィン変換である限りにおいて、汎化能の損失を伴わせることなく強制できる制約でもある。

$$\Sigma^{(l)} \approx \mathrm{I}$$を促進させる簡易な方法となるのは、$$\sum_{i, j}[\Sigma_{i, j}^{(l)} – \delta_{ij}]^2$$を導出することだ。ここで、$$\delta_{ij}$$はクロネッカーのデルタを表す。言い換えれば、この定式は$$\Sigma^{(l)}$$と$$\mathrm{I}$$の間の差異の平方和を計算している。しかしながら、このコスト関数は$$\Sigma^{(l)}$$の小さ過ぎる固有値と大き過ぎる固有値区別しない。だが$$h^{(l)}(t)$$の表現を崩壊させるところから学習していくという観点かられば、ただ小さ過ぎる固有値のみが、問題を派生させる。この状況を解析するためには、次のような展開が有用となる。

$$\sum_{i, j}^{}[\Sigma_{ij}^{(l)} – \sigma(i, j)]^2 = \mathrm{tr}\left([\Sigma^{(l)} – \mathrm{I}]^2\right) = \sum_{i}^{}(\lambda_i^{(l)} – 1)^2 \tag{33}$$

ここで、$$\lambda_i^{(l)}$$は$$\Sigma^{(l)}$$の固有値を表す。第一の等式は行列の対角和の定義を踏襲している。そして第二の等式は、対角和が固有値の和であることに由来する。変数の情報量の健全な尺度は、その辺が固有ベクトルに沿った分布の標準偏差によって規定される長さを有した立方体の体積の二乗となるため、共分散行列の行列式となる。この行列の行列式はその固有値の積に等しい。よって、行列式の対数は固有値の対数の総和に等しくなる。

$$\log \mathrm{det}\Sigma^{(l)} = \sum_{i}^{}\log \lambda_i^{(l)} = \mathrm{tr}\left(\log \Sigma^{(l)}\right) \tag{34}$$

後者の等式は、それが行列の固有値に適用されるように、任意の解析関数が正方行列に対して定義され得るという事実から生じている。このことは、

$$(EAE^{-1})^k = EA^kE^{(-1)}$$

であることからもわかる。したがって、行列のべき級数展開は、固有値についての同様のべき級数展開になる。注意しておかなければならないのは、ここでいう対数表現が、行列の諸要素の対数なのではなく、行列の対数であるという点である。

(34)は情報量が減少することによってより小さくなる尺度でもある。だがλ = 1 の場合には、その最小値がゼロに達する実用的なコスト関数に変えることができる。

$$C_{\Sigma}^{(l)} = \sum_{i}^{}(\lambda_i^{(l)} – \log \lambda_i^{(l)} – 1 ) = \mathrm{tr}\left(\Sigma^{(l)} – \log \Sigma^{(l)} – \mathrm{I}\right) \tag{35}$$

このコストはλ = 0の場合に無限損失となる。また$$\lambda_i > 1$$ に対して比較的緩やかに増大する。

$$\Sigma^{(l)}$$に関する上記のコストの微分は相対的に単純である。と言うのも、任意の解析的な関数において、

$$\frac{\partial \mathrm{tr}(\phi (\Sigma))}{\partial \Sigma} = \phi^{‘}(\Sigma) \tag{36}$$

が保持されるためである。$$\phi(a) = a – \log a – 1$$の時、$$\phi^{‘}(a) = 1 – a^{-1}$$となる。したがって、

$$\frac{\partial C_{\Sigma}^{(l)}}{\partial \Sigma^{(l)}} = \mathrm{I} – [\Sigma^{(l)}]^{-1} \tag{37}$$

残るは、連鎖則(chain rule)に従って勾配を計算するだけである。それは(32)が単純な二次形式であることから直接的に導入できる。$$\lambda_i = 1$$の時に最小化されるあらゆる二次微分可能コスト関数は、最小値に近い同じ二次的なふるまいを持つため、より単純な定式(33)も同様に機能する。ただし、ヴァルポラは潜在的な問題を回避するために、(35)が利用されている。

最後に、既に示唆したように、隠れ層のユニットの活度が実際にゼロ平均を持つことを確実にするように、コスト関数に簡単な項を追加する。

$$\mu^{(l)} = \frac{1}{T}\sum_{t=1}^{T}h^{(l)}(t) \tag{38}$$

$$C_{\mu}^{(l)} = \mid\mid\mu^{(l)}\mid\mid^2 \tag{39}$$

問題解決策:ラダーネットワークの学習アルゴリズム

以上のノイズ除去型自己符号化器とそのコスト関数の設計を前提とすれば、ラダーネットワーク学習アルゴリズムは次のようになる。

$$h^{(0)}(t) := x(t)$$

$$h^{(l)}(t) = f^{(l)}(h^{(l-1)}(t)) \ \ \ for \ 1 \leq l \leq L \tag{40}$$

$$\tilde{h}^{(0)}(t) = corrupt(h^{(0)}(t)) \tag{41}$$

$$\tilde{h}^{(t)}(t) = f^{(l)}(\tilde{h}^{(l-1)}(t)) \ \ \ for \ 1 \leq l \leq L \tag{42}$$

$$\hat{h}^{(L)}(t) = g^{(L)}(\tilde{h}^{(L)}(t)) \tag{43}$$

$$\hat{h}^{(l)}(t) = g^{(l)}(\tilde{h}^{(l)}(t), \hat{h}^{(l+1)}(t)) \ \ \ for \ 0 \leq l \leq L-1 \tag{44}$$

$$C^{(l)} = \frac{1}{T}\sum_{t=1}^{T} \mid\mid h^{(l)}(t) – \hat{h}^{(l)}(t) \mid\mid^2 \tag{45}$$

$$\Sigma^{(l)} = \frac{1}{T}\sum_{t=1}^{T}h^{(l)}(t)[h^{(l)}(t)]^{T} \tag{46}$$

$$C_{\Sigma}^{(l)} = \mathrm{tr}\left(\Sigma^{(l)} – \log \Sigma^{(l)} – \mathrm{I}\right) \tag{47}$$

$$\mu^{(l)} = \frac{1}{T}\sum_{t=1}^{T} h^{(l)}(t) \tag{48}$$

$$C_{\mu}^{(l)} = \mid\mid \mu^{(l)}\mid\mid^2 \tag{49}$$

$$C = C^{(0)} + \sum_{l=1}^{L}\alpha_lC^{(l)} + \beta_lC_{\Sigma}^{(l)} + \gamma_l C_{\mu}^{(l)} \tag{50}$$

ここで、$$\beta_l$$と$$\gamma_l$$は、$$\alpha_l$$同様、共に層ごとのコストの相対的な重みを表す。
写像$$f^{(l)}$$と$$g^{(l)}$$のパラメタの学習はCの最小化に基づいている。単純な解決策となるのは確率的勾配降下法である。しかし基本的に如何なる最適化方法も利用可能である。どの方法を採用しても、最小化されることになる単一のコスト関数存在は、採用された最適化方法可能にする限りにおいて、学習の収束を保証している。

Valpola, H. (2015). From neural PCA to deep unsupervised learning. In Advances in Independent Component Analysis and Learning Machines (pp. 143-171). Academic Press., p13.より掲載。

派生問題:ラダーネットワークとの構造的な結合点

ラダーネットワーク構造は、従来の教師なし事前学習の陥穽を上手く覆している。それは<教師あり学習>と<教師なし学習>の区別を<教師あり学習>の内部に「再導入(re-entry)」することによって、<教師なし学習>を<教師あり学習>の一環として実行することを可能にしている。この形式的な再導入を可能にするメディアとなるのが、潜在変数モデルである。潜在変数モデルは、教師あり学習教師なし学習構造的な結合可能にする。この結合によって実現する半教師あり学習を設計する場合、潜在変数モデルは魅力的な方法となる。特に階層的潜在変数モデルを採用することの魅力的な特は、一般的に低い水準の詳細を表現するための情報を保持ことが可能になると共に、高い水準には目前のタスクに関連する不変の抽象的特徴に集中することを可能になるということである。

ラスムスらは2015年、多層ニューラルネットワーク畳み込みニューラルネットワークラダーネットワークとして構成させることで、半教師あり学習のタスクにおける精度と能を測定した。その結果、単に教師あり学習としてタスクに取り組んだ場合に比して、ラダーネットワークとして構成されたモデル改善を示したことがわかった。これは、ラダーネットワークとして構成された半教師あり学習が、その内部に「再導入」された<教師なし学習>を十分に活用できていることを示している。逆に言えば、<教師なし学習>が<教師あり学習>を妨げることは無いということでもある。

しかしこれらの検証で用いられた二つのモデルは、可能選択肢であるに過ぎない。どのような符号化(encoder)と復号化(decoder)がラダーネットワーク公正に最も適しているのかは、未解決問題となっている。2015年の段階でのラスムスらの研究では、教師あり学習のためにその構造最適化された符号化にほぼ何も修正を加えなかった。復号化も、ただ情報伝播が逆向きになるだけで、符号化を反映させる構造として構成されているに過ぎない。例えば復号化構造符号化構造から逸脱するとしても、自己符号化ラダーネットワーク構成においては何も問題は無いはずである。

最適な自己符号化器探索は、他のユースケースからの影響も受ける可能性がある。例えば先に示した敵対的自己符号化器モデルは、ラダーネットワークの前提となる階層的潜在変数モデルとは全く異なる敵対的生成ネットワークの枠組みから半教師あり学習を導出している。半教師あり学習問題の枠組みにおいては、こうした生成モデル比較可能機能的等価物として研究プログラムに大きな影響を及ぼす可能性がある。

一方、逆にラダーネットワーク構造は他のモデルに対して好意的な影響を与える可能性もある。機能的な入出力関係に大幅な改修を加えずに済むラダーネットワーク構造は、コスト関数の計算に副作用を伴わせることを代償とした上で、敵対的自己符号化器をはじめとした他のモデルの改良においても機能する。特に階層的潜在変数モデルをモチーフとしたノイズ除去型自己符号化器の導出は、原理的に如何なる自己符号化器に対しても、<教師なし学習>の能力を与えることになるであろう。それ故、他のモデルかられば、ラダーネットワーク構造は精度や能の改善策として魅力的に映るはずである。

プロトタイプの開発:ラダーネットワークのソフトウェア・アーキテクチャ

Pythonのライブラリ:『pydbm』のアーキテクチャ設計は当初、制限ボルツマンマシン深層ボルツマンマシン積層自己符号化器として構築することによる教師なし事前学習としての機能を提供していた。しかしその一方でこのライブラリは、上述した教師なし事前学習からラダーネットワークへの歴史意味論の変遷を加味した上で、<教師なし学習>の<教師あり学習>への再導入にも対応してきた。例えば自己符号化器畳み込み自己符号化器のクラスは、その内部にノイズ除去型自己符号化器を導入することで、既にラダーネットワークへの機能的拡張可能にしている。これによりこのライブラリは、自己符号化器ラダーネットワーク機能的に等価モデルとして比較することを可能にしている。と言うのも、ラダーネットワークモデルにおけるノイズ除去型自己符号化器は、あくまでも<教師あり学習>の一環として実行される<教師なし学習>に過ぎず、それはあくまでも自己符号化器の<副作用>に留まるためである。

派生問題:半教師あり学習における表現学習は如何にして可能になるのか

表現学習の重要な参照問題の一つは、表現の良ししが如何に規定され得るのかである。グッドフェローの仮説によれば、表現が理想的となるのは、その表現の中に埋め込まれている特徴量が観測データ点の潜在的な原因に対応していると共に、それぞれの特徴量や特徴空間における方向が異なる潜在的な原因に対応していることで、表現が相互の原因を解きほぐすこと(disentangling)を可能にしている場合である。この仮説は、最初に $$p(x)$$ の良い表現探索するような方法に結び付く。もしyがxの最も有意な原因に含まれているのならば、その表現は恐らく $$p(y\mid x)$$ を計算する上でも良い表現となる。

一般的に、<教師なし学習>に基づいた表現学習を<教師あり学習>に再導入することで成り立つ半教師あり学習が前提としている仮説は、観測データ点に対する潜在的な記述を一旦獲得すれば、個々の属を他の属から分離することは容易になるという仮説である。この仮説の観点は、諸要素がスパースである場合や他と独立である場合を想定した単純なモデルの設計観点からは区別される。と言うのも、こうした設計観点では、潜在的な原因因子を明確に分離するような表現が、必ずしもモデリングし易い表現である必要が無いと考えられるためである。しかし、これに対して半教師あり学習における表現学習では、もしある表現hが観測されたxの潜在的な原因の多くを含んでいると共に、出力yが最も有意な原因に含まれているのならば、hからyを予測するのは容易になると仮定する。

半教師あり学習における表現学習の前提となる仮説を理解するには、半教師あり学習が失敗する場合と成功する場合とを区別すれば、より簡明となる。$$p(x)$$ の教師なし学習が$$p(y\mid x)$$ の学習貢献せず、半教師あり学習が失敗する場合となるのは、例えば $$p(x)$$ が一様分布であると共に、 $$f(x) = \mathbb{E}[y \mid x]$$ を学習しようとしているような、xの値の訓練集合観測するだけでは$$p(y \mid x)$$ についての情報が得られない場合である。一方、半教師あり学習が成功する場合となるのは、例えば一つのyの値ごとに一つの混合成分を有した混合分布からxがサンプリングされる場合である。もし混合成分同士が明確に分離されているのなら、$$p(x)$$ のモデリングによって、各成分の正確な位置が明らかとなる。各クラスに一つずつラベルありのサンプルがあれば、$$p(y \mid x)$$ を完全に学習することが可能になる。

しかし、ここで一つの疑問が浮上してくる。一般的に、何が$$p(y\mid x)$$ と$$p(x)$$ を相互に結び付け得るのかである。上記の説明だけでは、双方の関連が如何にして可能になるのかが、不明確に留まる。この関連はデータ分布やパラメタにも左右される。この複合性を前にすれば、素朴に原因結果の一対一の対応を想定する訳にはいかない。そうなると、単に因果関係を記述するのではなく、ベイズ主義的に、確率論的な因果関係を計算しなければならない。

問題解決策:ベイズ主義

仮にyがxの原因因子の一つと密に結合しているのならば、$$p(x)$$と$$p(y\mid x)$$は強固に結び付くことになる。それ故、各データの変動の潜在的な原因を解きほぐそうとしている<教師なし学習>による表現学習が、半教師あり学習の内部で機能することが推論できる。yがxの原因因子の一つであって、hが全ての因子を表現しているとするなら、真の生成過程は、hがxの親であるような有向グラフに従った構造を有することになる。

$$p(h, x) = p(x \mid h)p(h)$$

したがって、データは次の周辺確率を持つ。

$$p(x) = \mathbb{E}_h p(x \mid h)$$

これを前提とすれば、xに関する最も良いモデルとなるのは、hをxの中で観測された変化を説明し得る潜在変数として扱うと共に、上記の「真の」構造を暴くようなモデルである。すると「理想的な」表現学習となるのは、こうした潜在的な因子を再構成するべきであるということになる。もしyがそうした因子の一つであるのなら、あるいはその一つと密に結合しているのなら、そうした表現からyを予測するための学習を実行するのも容易となる。

ベイズの定理によれば、xの下でのyの条件付き分布は、次のようになる。

$$p(y \mid x) = \frac{p(x \mid y)p(y)}{p(x)}$$

つまり、周辺分布$$p(x)$$は条件付き分布$$p(y \mid x)$$に密に結合している。周辺分布構造に関する知識は、条件付き分布の学習を促すはずである。こうしたベイズの定理に基づいた想定が満たされる場合には、半教師あり学習能も向上すると期待できる。

問題解決策:<教師なし学習>概念の再記述

ただし、上記のベイズ主義的な想定は、単純化した記述であるために、確率論的な因果関係の複合性を過小評価している。実際には、観測データ点の大多数は、無数の潜在的な原因によって生成されている。$$h_i (i=0, 1, …, k)$$であるとしても、<教師なし学習>だけでは、どの$$h_i$$ がその原因と結び付くのかがわからない場合もある。確かにこの場合、k個全ての要素を<教師なし学習>に解きほぐさせることも不可能ではないであろう。つまり、h全体からyを予測できるようにするのである。

しかし、これは現実味の無い方法であるばかりか、半教師あり学習が<教師あり学習>と<教師なし学習>の区別を<教師あり学習>の内部に再導入することで成立しているという前述した意味論的変遷を等閑視する発想でもある。ラダーネットワークの参照問題がそうであったように、<教師なし学習>によって全ての情報観測することは、<教師あり学習>においてはむしろ逆機能である。<教師なし学習>は、全ての情報を捉えるのではなく、<教師あり学習>による<有用な特徴>と<無用な特徴>の区別の導入を方向付けられなければならない。

教師なし学習>の意味論は、教師なし事前学習から教師あり事前学習へ、そして<教師あり学習>から半教師あり学習へと、その主題を緩やかに移行している。この主題の移行は、<教師なし学習>の設計者が貢献すべき事柄の変化も意味している。グッドフェローが指摘するように、歴史的に<教師なし学習>は、どの潜在的な原因が最も有意であるのかに関する定義を変化させてきた。自己符号化器生成モデルは、多くの場合、平均二乗誤差類似した固定された水準を最適化するように訓練されてきた。どの原因が有意であるのかを規定してきたのは、こうして固定された水準であった。しかしこの有意な原因意味論は、敵対的生成ネットワークが提唱されて以来、別のあり方でもあり得ることが判明している。例えば、ある画像のピクセル群が、簡単に視認できるようなパターンに従っているのならば、そのパターンがたとえ極度の明るさや暗さを有していなくても、そのパターンこそが有意な原因であると考えることもできる。

敵対的生成ネットワークでは、生成器は分類器を騙すように訓練される。分類器は、生成器から入力された全てのサンプルを偽として、そして真の訓練集合から入力された全てのサンプルを真として、それぞれ識別しようとする。このフレームワークでは、順伝播ニューラルネットワークが識別可能な如何なる構造的なパターン有意性が大きくなる。と言うのも、この敵対的生成ネットワークは、何が有意であるのかを規定する方法学習しているためである。

「理想的な」表現とは、既に述べたように、データを生成した潜在的な原因因子を解きほぐすような表現である。表現学習におけるアルゴリズムの大多数は、この潜在的な変動の因子を学習によって発見することを促す手掛かりを導入することで設計されている。そうした手掛かりにより、モデル観測された因子を他の因子から分離することが可能になる。この手掛かりは、アルゴリズムの設計者が学習を導くために導入する暗黙的な事前信念に準拠している。この意味で、実際に機能している表現学習は、設計者にとっての事後信念として結実するであろう。<教師なし学習>の意味論的な変遷を方向付けてきたのは、設計者とモデルとの間で構成されているベイズ更新的なループの歴史なのである。

参考文献

  • Bengio, Y., Lamblin, P., Popovici, D., & Larochelle, H. (2007). Greedy layer-wise training of deep networks. In Advances in neural information processing systems (pp. 153-160).
  • Bengio, Y., Mesnil, G., Dauphin, Y., & Rifai, S. (2013, February). Better mixing via deep representations. In International conference on machine learning (pp. 552-560).
  • Erhan, D., Bengio, Y., Courville, A., Manzagol, P. A., Vincent, P., & Bengio, S. (2010). Why does unsupervised pre-training help deep learning?. Journal of Machine Learning Research, 11(Feb), 625-660.
  • Erhan, D., Courville, A., & Bengio, Y. (2010). Understanding representations learned in deep architectures. Department dInformatique et Recherche Operationnelle, University of Montreal, QC, Canada, Tech. Rep, 1355, 1.
  • Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning (adaptive computation and machine learning series). Adaptive Computation and Machine Learning series, 800.
  • Rasmus, A., Berglund, M., Honkala, M., Valpola, H., & Raiko, T. (2015). Semi-supervised learning with ladder networks. In Advances in neural information processing systems (pp. 3546-3554).
  • Valpola, H. (2015). From neural PCA to deep unsupervised learning. In Advances in Independent Component Analysis and Learning Machines (pp. 143-171). Academic Press.