タイトル:隠れ状態最尤推定と反復解法      -EMアルゴリズムとWake-Sleepアルゴリズム- 講  師:池田思朗先生 レポーター:伊藤秀昭・ 橋本和歌子 0, Introduction 昨日,村田先生が数学的な基礎をされたそうですが,途中までしかできなかった そうで,その続きで,最尤推定を説明して,それからEMアルゴリズムとWake- Sleepアルゴリズムを紹介します.この2つは統計的な手法とも考えられるし, ニューラルネットワークの一種とも考えられます.こういう手法が何に対して使 えるかというのは,なかなか一概にはいえません.大事なのは考え方を理解する ことで,この枠組みのうえでいろいろなことができるということです.明日岡田 先生がする話もこの枠組みで書けますし,今朝の樺島先生の話も,この隠れ変数 を使って書くこともできます.このような枠組みで書かないといけないというこ とではないですが,こういうふうに書くことができて,樺島先生がいったように, そうすると見通しが良くなるということです.見通しをよくするための一つの手 法だという観点で理解してもらえるとうれしいです. 1, 隠れ変数 隠れ状態とはどういうことかというと,ある確率変数の集合Xが次の2種類の確 率変数にわかれていると思ってください. X = { Y , Z } Y:観測できる確率変数.  Z:観測できない確率変数,つまり隠れ変数. EMアルゴリズムは1970年代からですが,統計の世界では100年前から因子分析 という分野でこのような考え方がありました. 隠れ状態の例として,血液型があります.観測されるのはA,B,O,ABのみで すが,実際には,AにはAAとAOがあり,BにはBBとBOがあります.AAかAO かということは観測されず,それらが混ざったAという状態だけが観測されます. このような隠れ変数が存在する状況でどのようなことができるのか,AAとAOが どれくらいの比率で存在するのか知りたいときにどのような手法を使うのか. そういう話です. 他の例として,このような5個の図形があるとします. 図: 5個の図形の図 例えば,これらの図形の中のどれか一枚を選んで通信をすることを考えます. 実際に相手に提示されるときには,ノイズがのってそれぞれの画素が確率p_zで 反転したものが提示されるとします. 図: 提示される図の例 この場合,もともとの図形が5個のうちのどれなのかが隠れ変数Zです.提示され るノイズがのった図形が,観測される確率変数Yです.日本人の英語のようなもの で,発音があまりよくないときに,聞いている方は言いたい言葉が何なのかを推 定しないといけない,というような状況です.では,このような図形が提示され た場合に,もともとの図形はどれだったと思うのが妥当か.そうすると,断然こ の三角のですよね.問題は,それは三角だと思いたいわけですが,もしかしたら ノイズがひどくて,他の図形がこのように変わってしまったのかもしれない,そ の可能性が否定できないということです.観測から一意に隠れ変数が決まらない. これが隠れ変数のもつ難しさです. もう一つの例は混合正規分布です.これは,2次元の正規分布が6個重ね合わ さったもので,6個山があります. 図: 混合正規分布の密度関数の図 さっきの図形の例との比較でいうと,1つの正規分布が1つの図形にあたります. もし,この混合正規分布から得られたデータに,もとの正規分布がどれだった かによって色がついているとすると,とてもうまくいくわけです. 図: 色のついたデータの図 ですが,実際にはその情報は落ちて,どの正規分布から得られたのかわからな いデータが得られます. 図: 単色のデータの図 もともとの分布がどの正規分布か見ただけでほぼわかるようなデータもありま すが,それも絶対ではないし,中心近くのはどの分布から出てきたデータなの かわからないわけです.この例では,どの正規分布から得られたのかが隠れ変 数Zであり,色のついていないデータが観測される変数Yです. もう一つの例は脳のモデルであるパーセプトロンです. 図: パーセプトロンの図 z_i = f( \sum_j w_ij x_j ) + n_i, y = v z + n, n_i, n は正規分布に従う のように,中間層の出力zと出力層の出力yに,ノイズののるパーセプトロン を考えます.中間層の出力zは直接観測できず,隠れ変数となります.この 場合はいままでと異なり,隠れ変数は連続な変数になります. Q, 入力xは隠れ変数ではないのですか? A, xは与えられていて,xの条件付確率を考えるという立場なので,隠れ変数 ではないです. Q, Wは隠れ変数ではないのですか? A, Wは確率変数ではないので,隠れ変数ではなく,パラメータです.確率変 数にたいして,隠れ変数かどうかを考えます. 隠れ状態とは何かをまとめます.確率変数が2種類,観測できるYと観測でき ないZがあります. 観測されたデータ{y_1 , y_2 , .... , y_T}から,確率モデルp( y , z ; \theta ) のパラメータ\thetaを推定したいとする. p( y ; \theta ) = \int p ( y , z ; \theta ) dz  (zが連続) p( y ; \theta ) = \sum_z p ( y , z ; \theta )  (zが離散) p( y ; \theta ) は見える分布で,YとZとの同時分布を,見えない変数Zで和 をとったもの,または積分したものです.混合正規分布でいうならば,色を なくしたデータの分布,つまり6個の正規分布の和のことです.図形の例だ ったら,5つの図形から出てくるデータの確率の和になります. 2, 最尤推定 尤度,つまりもっともらしさとは何かを図形の例で考えます.p_zは,図形 の画素が反転する確率で,普通は0.1とか0.2とかそれくらいです.このモ デルのパラメータは5個のオリジナルの図形と,反転する確率p_zなので, それを使ってある図形yが観測される確率を書いてみましょう.一般には, p( y ; \theta ) = \sum p ( y , z ; \theta ) = \sum p ( z ; \theta ) p ( y | z ; \theta ) ですから,これをあてはめると, p( 観測図形 ; \theta ) = 1/5 \sum p ( 観測図形 | 各オリジナルの図形 ; \theta ) 図: 図形を使った尤度の式 となります.本当はこの図形を出したかったんだけれど,観測図形のように なってしまったという確率を,全てのオリジナルの図形について足せば良い わけです.この式を尤度と定義します. Q, オリジナルの図形がパラメータだとはどういうことですか,変数ではない のですか. A,確率変数ではない.どの図形が選ばれるかは確率的に決まり,確率変数で すが,オリジナルの図形の形そのものは,変わらないので,確率変数ではなく パラメータです. Q, この場合の隠れ変数は何ですか. A, どの図形が選ばれるか,というインデックスが隠れ変数です. この,5つの図形で通信をする世界に,何も知らない人が送り込まれてきたと します.英語もしらないのにいきなりアメリカに行くようなものですね.何 も知らない状態から,どういう図形が使われているのかを推定しないといけ ない.最尤推定というのはそのような推定法のひとつです. \thetaというのは,5つの図形と反転率のことですが,それがどういう図形な のか,反転率がどれくらいなのかがわからないとします.わからないが,たく さんノイズが混ざったデータを観測した.そのとき,どういう\thetaを選ぶ のがもっともらしいかということを,さっきの尤度関数を用いて定義します. 尤度関数が一番大きくなるように\thetaを決めるのが最尤推定です.データ をたくさん見ているのだから,それらしいモデルを自分の中につくることが できるわけです.さっきの尤度関数の式を使うわけですが,オリジナルの図形 はわかりません.それを推定するために使います. \theta^* = argmax_\theta \prod_s p ( y_s ; \theta ) = argmax_\theta \sum_s log p ( y_s ; \theta ) 例えばデータが正規分布だとわかっているときには,パラメータとしてデータ から平均と分散を推定すれば良いわけです.これも最尤推定ですが,このよう な場合は隠れ変数がないので,非常に問題が簡単です.隠れ変数がある場合, p(y_s ; \theta)には隠れ変数に関する足し算がひそんでいます.足し算したも のをかけあわせているので,項がたくさんでてきて,最大にするのに骨が折れ る.このように直接最尤推定するのが困難な場合のために,EMアルゴリズムや Wake-Sleepアルゴリズムが提案されました. 3, EMアルゴリズム EMアルゴリズムはE-stepとM-stepいう2つのステップからなります.E-step のEは,expectation,つまり推測とか推定のこと,M-stepのMはmaximization, 最大化のことです.E-stepとM-stepを一般的に数式で書くと,以下のように なります. E-step  次式で定義されるQ(\theta , \theta_t )を求める. Q(\theta, \theta_t) = 1/T \sum_{k=1}^T \int p(z | y_k ; \theta_t ) log p( y_k , z ; \theta ) dz M-step Q(\theta, \theta_t)を最大にする\thetaを求め,それを\theta_t+1にする. \theta_t+1 = argmax_theta Q ( \theta , \theta_t ) 具体的に,5つの図形の例については以下のようになります. \theta_t = { 図形の今の推定値 , p } E-step 次式で定義されるQ(\theta , \theta_t )を求める. Q(\theta, \theta_t) = 1/T \sum_{k=1}^T \sum_z p( z番目の図形が選ばれる | 観 測図形y_k ; \theta_t ) log p( 観測図形y_k , z番目の図形が選ばれる ;\theta ) M-step Q(\theta, \theta_t)を最大にする\thetaを求め,それを\theta_t+1にする. \theta_t+1 = { 更新された図形の推定値 , 更新されたp_zの推定値 } 図: 図形の例によるEMアルゴリズムの式 どういうことかというと,EMアルゴリズムはまず,ノイズののったデータが来 たら,そのデータをいま手元にある図形の推定値に割り振ります.そのとき, データがもともとその図形であったという確率を計算して,その確率の大きさに 準じて割り振ります.その割り振った確率に応じて,推定値を少し変える.それ を繰り返して,よいpラメータを推定していきます. Q, E-stepの中の\thetaは真の値ということですか? A, 違います.フリーのパラメータです.真の値は関係ありません.今のパラ メータで尤度を計算するのだけれど,\thetaはとりあえずフリーのパラメー タにしておきます. Q, p( z番目の図形が選ばれる | 観測図形 y )の項は,因果律から考えるとzが 決まればyが決まるわけですが,その逆になっているので,実際にはベイズ の定理などを使って計算するのですか? A, そうです.yが決まればzが決まるという関係ではないので,ベイズの式を 使って計算します. Q, zがいくつあるかはどういう基準で選ぶのですか? A, これは痛いところで,統計でも一分野あるような話です.問題によってモ デル選択を使うのがよかったり,検定を使うのがよかったりします.今日話 す内容には含まれません.本当はわからないわけですが,今はわかっている と仮定しています. Q, \thetaの初期値の決め方は? A, 確かに初期値によってうまくいく場合,いかない場合があります.問題に よっては難しいところです.今はランダムに決めています. 次に,混合正規分布の例にEMアルゴリズムを適用した場合を説明します.ま ず,E-stepで,今手元にあるモデルで,データがどの分布からのものなのか を仮定します.本当とは少し違うかもしれないが,とにかく今のモデルで色 を塗るという感じです.M-stepで,その色の配分をもとに,またモデルを少 し更新します.このくり返しでパラメータを求めていきます.これで,最終的 には収束するというのがEMのうまくいったところです. Q, 色を塗るというのはp( z | y ; \theta_t )のことですか? A, そうです.1色ではなくて,データがその分布からのものである確率で色 を混ぜて,あいまいな色で塗り替えるということです . 課題のデモ 下にならんでいるのが,本当の図形.真中にでているのが提示されるノイズの のった図形で,上にならんでいるのが今の手持ちのパラメータ.提示される図 形を見ながら,E-stepとM-stepをくりかえして,上の方に,下の本当の図形 と同じ図形をつくりたいわけです.ノイズののった図形を30回ずつ見せるごと に,パラメータを一回更新しています.プログラムのパラメータはいろいろあ るので,それは変えて試してもらえばいいと思います. Q, 30回ずつ新たにランダムなデータをつくっているのですか? A, そうです.だから完全に収束はしません.データを固定すれば完全に収束 します. Q, ノイズはどれくらい? A, 10〜20%.変えて試してみて下さい. Q, この場合の\thetaは何ですか? A, p_zともとの図形そのものです. Q, けっこう次元が多いですよね.それで最大化しているんですよね? A, そうです.ですが,最大化はいまの場合単に平均をとればよいので簡単です. 次元は多いけれど,実はそれほど多くなくて, p_zが一次元で,ノイズののり方 がモデルごとに異なったりしないので,それほど大変ではない. Q, 最尤推定よりよいのはなぜですか? A, 隠れ状態数が多いと,最急降下法で最尤推定するのは難しい.そのようなと きはEMで解くのも難しいが,MCMCみたいなことをして,EMライクに解く手 法もある.隠れ状態数が非常に多いとき,例えば隠れマルコフモデルなどは, 状態数で和をとるところで,最急降下法で書くよりもEMアルゴリズムで書くほ うが実装は楽です.EMは収束性が保証されているので,他の条件が良ければ EMを使うほうがよい. パーセプトロンで使われるバックプロパゲーションもEMだと解釈することも できます.ただし,定数倍の差は残ります. E-step Q( \theta , \theta_t ) = 1 / ( T \sigma^2 ) \sum_k { ( r_t - r )^T ( I + vv^T ) (r_t - r ) + Tr( I - v_t v_t^T / ( 1 + | v_t |^2 )) ( I + vv^T ) } - 1 / sqrt{2 \Pi ( 1 + | v_t |^2 ) \sigma^2 } E - ( 1 + m ) / 2 log ( 2 \Pi \sigma^2 ) M-step d Q / d v_i = - 1 / ( T \sigma^2 ) \sum_k ( y_k - g( x_k )) f( \sum_j w_ij x_{j,s} ) d Q / d w_ij = - 1 / ( T \sigma^2 ) \sum_k ( y_k - g( x_k )) v_i f'( \sum_m w_im x_{m,s} ) x_{j,s} 本当にQを最大化する\theta_t+1は簡単には求まらない. ここから少し話を変えて,EMアルゴリズムの幾何を説明します.ちゃんと理 解するのは難しいかもしれませんが,情報幾何的な解釈を気分だけ分かって 下さい.次のWake-Sleepアルゴリズムは,たぶん幾何を知っていたほうがわ かりやすいので説明します.理研の甘利先生が研究されている情報幾何とい う分野があって,これはその中の良い例としてよく宣伝されていました. { Y , Z }に関する確率分布の空間Sを考えます.とても抽象的ですが,空間の中 の1点が一つの確率分布に対応するわけです.今,モデルp( y , z ; \theta )に はパラメータが入チています.ですから,それは,S全体ではなくてその中の 一部分になります.パラメータが入っているので,それは多様体です.モデル のなす多様体Mは,空間の中の面のように,全ての確率分布の中の一部分を 占めているのです.一方,データの方は,見える変数の分布と見えない変数の 分布を考えないといけない.見える変数の分布は,データ,つまりノイズがの った図形をたくさん観測することによる経験分布として決まる.それとは別に, 見えない変数の分布も考えないといけない.これをとりあえず任意のものとす ると, { Y , Z }の新しい確率分布ができます.そしてそのyについての周辺分布 は経験分布と一致します.この確率分布のなす多様体をDとします. M: p( y , z ; \theta ) \thetaでパラメトライズした多様体. D: yについては経験分布q(y)と一致する.r( z | y ; \eta )は任意であるとする. q( y , z ; \eta ) = q( y ) r ( z | y ; eta ) 実は,MとDのKullback-Leibler divergenceを最小化する\thetaと\etaを求 めるのがEMアルゴリズムの目的であるということができます. KL-divergenceとは,距離ではないですが,2つの確率分布のあいだの近さを 表す量です. D( q( y , z ; \eta ) , p ( y , z ; \theta ) ) 図: EMアルゴリズムの情報幾何的な説明の図 2つの曲面の間でお互いに反対側に垂線を下ろして渡り歩いていくことをくり 返すと,距離が最小のところにたどりつきそうですよね.EMアルゴリズムの していることは,それと同じような感じで,2つの多様体の間で距離が最小に なるところを見つけているわけです.このように,2つの多様体のあいだの射 影だということを甘利先生が示しました.E-stepがMからDへ持ち上げる操作 に,M-stepがDからMへ垂線を下ろす操作に対応します. Q, 混合正規分布の例で,色を塗るのがE-stepにあたるのですか? A, そうです. Q, それに対するパラメータを決定するのがM-stepにあたるのですか? A, そうです.その通りです. 4, Helmholtzマシン EMアルゴリズムのE-stepはけっこうやっかいです.問題は,p( Z | Y )の形で, 混合正規分布の例だと, G_i (y) = 1 / (sqrt(2 \Pi) \sigma_i) exp( - ( y - \mu_i )^2 / ( 2 \sigma_i^2 ) ) ですから,色をぬるときに計算するのは次のような式です. P( i | y ) = G_i ( y ) / \sum_j G_j ( y ) この,正規分布の和をとったもので割る計算は,ちょっと大変だし,脳で実現 されているというのはあまりもっともらしくありません.無理やりならできる かもしれませんが.... これをもう少しエレガントに解決するのがHelmholtzマシンです.Helmholtz マシンでは,YとZという2組のパラメータに,モデルを重ねて2つ定義します. それが,生成モデルと認識モデルです. 図: Helmholtzマシンの図 認識モデルは,外から入ってくるデータをもとに隠れ状態を推定するためのモ デル,つまり,p( Z | Y )を計算するモデルです.生成モデルは,隠れ状態をラ ンダムにふって,その隠れ状態から付随する本当の見える状態を生成していく モデル,つまり,p( Y , Z )を計算するモデルです. 認識モデルは,データを,それぞれの隠れ状態に,割合を決めて割り振ります. それは,今までは生成モデルと同じパラメータを用いて確率を書いていたので すが,そうではなくて,新しくモデルをひとつ割り当てる.それがHelmholtz マシンの考え方です.生成モデルがその割り当てに応じて学習します.EMアル ゴリズムでは,モデルのパラメータが更新されると,自動的にE-stepで割り振 る確率分布も更新されました.今度は別々のモデルなのでそうはいきません. そのかわり,生成モデルに従ってデータをばらばらつくることによって,認識 モデルを賢くするわけです. EMアルゴリズムでは,いわば, p( z | y ; \theta ) 認識モデル p( z , y ; \theta ) 生成モデル という状況であり,同じパラメータの1つのモデルでした.Helmholtzマシン では別々のモデルなので,パラメータは同時には動きません. p( z | y ; \eta ) 認識モデル p( z , y ; \theta ) 生成モデル ですから,2つのパラメータを学習していく学習則を,Helmholtzマシンを提案 するのと同時に提案しないとまずいわけです. Q, EMアルゴリズムで生成モデルが決まると認識モデルが決まるというのは, 双方向結合になっているというのと同じことですか? A, 本当はその間にE-stepが入っている.E-stepを行うことによってパラメー タが一緒になります. Q, EMアルゴリズムは無理やり認識モデルと生成モデルを一緒にしたというこ とですか? A, そうです. ここまでが,Helmholtzマシンが提案された流れと,ここから何が必要かとい うことです.脳との対応で考えると,高次と低次だという風な話の流れになっ ています.例えば,視覚の場合だと,データは網膜から入ってきてノイズがの っている.高次の細胞は本当はもっときれいな図形に対応するというような話 になるわけです. Q, HelmholtzマシンとEMアルゴリズムは同じアルゴリズムになるのですか?  A, Helmholtzマシンはこういうアーキテクチャを持ったモデルのことです. その学習則としては,EMアルゴリズムでもWake-Sleepアルゴリズムでも 最急降下法でも使えます.HelmholtzマシンはEMアルゴリズムが使える モデルのひとつです. 5, Wake-Sleepアルゴリズム Wake-Sleepアルゴリズムという学習則が提案されて,これは,寝てる,起き てると無理やりつなげた名前になっています.Wakeフェイズ,Sleepフェイ ズがあって,これはEMアルゴリズムのE-step,M-stepと対応させているの ですが,完全に対応しているわけではありません. Wakeフェイズ g_t+1 = g_t + \alpha \bar{ ( y - g_t z ) z } \sigma_{i,t+1}^2 = \beta \sigma_{i,t}^2 + ( 1 - \beta ) \bar{ ( y_i - g_{i,t+1} z )^2 } ノイズで汚れたデータが入ってくる.このときは,低次の細胞が,認識モデル p(z | y ; \eta)を用いて,そのデータを高次の細胞に割り振る.高次の細胞は, 割り振られたデータに対して素直に状態を更新していく. Sleepフェイズ r_t+1 = r_t + \alpha \bar{(z - r_t^T y ) y } s_t+1^2 = \beta s_t^2 + ( 1 - \beta ) \bar{(z - r_t^T y )^2} 寝ているときで外からの入力はない.低次の細胞もきちんと学習していかない と困るので,このフェイズでは,生成モデルでデータを生成して,それで認識 モデルのパラメータを更新して学習し,正しく高次の細胞に割り振られるよう にしていく. Wake-Sleepアルゴリズムは,幾何的に解釈するとうまくいかないことがわか ります. 図: Wake-Sleepアルゴリズムの情報幾何的な解釈 生成モデルはEMアルゴリズムと同じです.認識モデルとして,新たにデータ 多様体にモデルが入ります.EM流に書けば,多様体の間を射影していって, めでたく答がもとまるようになっていると思われていたのですが,実はWake −Sleepアルゴリズムはうまくいかないという話があって,その辺で少しもめ ていたんですね.全ての場合にうまく行くわけではないということがけっこう 簡単に示せます.実は,Wake-Sleepアルゴリズムでは,多様体の間を行き来 する時,上に行くときに最小化している量と下に行くときに最小化している 量が異なるのでうまくいかない.ちゃんとねたを仕込めばうまくいきますし, どうしこめばよいのかも一応ちゃんといえます. 1つは,よく寝る,sleepフェイズ短くとるとうまくいかないということがわか っています.それから,一般には収束しませんが,認識モデルの\etaを生成 モデルの\thetaを用いて常に書けるようにできればよい,対応関係がもてる ようになっていればよいということです. \eta = argmin_\eta D( p (\theta_t) , q ( \eta ) ) = argmin_\eta D( q ( \eta ) , q ( \theta_t ) ) が成り立っているときは収束する.また,この条件は,常に q(z | y ; \eta ) = p ( z | y ; \theta ) のような \eta と \theta があれば必ず成り立つ. HintonらのWake-Sleepアルゴリズムの論文は,最初と最後が矛盾しています. 最初は,正規分布の和で割る計算は大変,という動機づけで始まっているのに, 最後にでてくる結論は,結局認識モデルの形が制限されないとうまくいかない というものです.彼らはこの矛盾を,バイナリデータでうまく逃げています. が,バイナリデータの場合は結局,このようなややこしい計算はいずれにせよ, しなくてよくなります. Q, Wake-SleepアルゴリズムとEMアルゴリズムの違いは? A, Wake-Sleepでは,最小化するKL-divergenceが, Wake phaseでは,KL ( q(\eta) | p(\theta ) )   Sleep phaseでは,KL ( p(\theta) | q(\eta) )    EMではどちらも,KL ( q(\eta) | p(\theta) ) EMアルゴリズムでは,同じKL-divergenceを用いて,E-stepでは\etaに関し て最小化し,M-stepでは\thetaに関して最小化している.一方Wake-Sleepア ルゴリズムでは,KL-divergenece自体が違うものになってしまっている. Wake-Sleepアルゴリズム \theta_t+1 = \theta_t - \alpha d D(q(\eta_t),p(\theta_t))/d \theta \eta_t+1 = \eta_t - \alpha d D(p(\theta_t+1),q(\eta_t)) /d \eta Q, Wake-Sleepアルゴリズムはは必ず収束するとは限らないのですか? A, EMアルゴリズムは必ず収束する.Wake-Sleepアルゴリズムは収束すると は限らない. 隠れ変数とその確率分布の形,学習則について述べてきました.雰囲気はわか ってもらえたのではないでしょうか.このような考え方は,実際の脳はともか くとして,ニューラルネットの世界ではとても役に立っています.Boltzmann マシンや確率的なふるまいをするパーセプトロンが非常にきれいに書けて,理 解において役にたってきました.脳で実現できるか,となるとそれは難しい問 題です.データ解析を行うOlshausenなどの話は,EMアルゴリズムの上で展 開キることができます.Wake-Sleepアルゴリズムの方が脳の中で実現しやす いようでもありますが,収束しないというのが大きな欠点で,今はあまりつか われていません. Q, EMアルゴリズムで,E-stepで和をとるkはデータのyにつく添字ですか? A, そうです. Q, つまり,Tはさっきの演習問題だと30回のくりかえしのことですか? A, そうです. Q, さっきの演習問題だと,\thetaはすごく次元が高いパラメータになりますね? A, そうです. Q, 演習問題はWake-Sleepアルゴリズムでも書けますか? A, 書けます. Q, 収束しそうですか? A, 本当のWake-Sleepアルゴリズムだと寝ちゃうくらい長いが,適当にうまく やれば挙動は見えるでしょう. Q, 演習問題で,\thetaはすごく次元が高いが,Q(\theta_t, \theta)に対す る依存性が,各要素に分離されている.そのせいでM-stepでの最大化が非常 に楽だということですか? A, そうです. Q, Wake-Sleepアルゴリズムの利点は? A, 使う利点はあまりない.問題が簡単になって,かつ収束するような例は しりません. Q, Wake-Sleepアルゴリズムは,真の解に収束はしていないけれど,近似解 をふらふらしているということはないですか?正規分布の足し算で割って計 算するのは大変で,それをしないと真の解に収束しないのだけれど,それを 適当に近似するような式で簡単なのを使うと,まあまあうまい解までいくと いうことは否定はできていないのでは? A, 否定はできない.非常に簡単な形になって,その解の挙動がよいという 場合ですよね.それはモデルごとに見ないとわかりません. Q, モデルごとに見ないとわからないが,そういう場合があればWake-Sleep アルゴリズムも少しは使えるかもしれない? A, そうです. Q, 局所的な学習則でEMアルゴリズムを実現できますか? A, EMアルゴリズムはニューラルネットでは局所的には実現できません. どうしてもglobalになります.Wake-Sleepアルゴリズムは一応localにも書ける 場合があります.