Natural Neural Networksってなんだろう?
この頃のNeural Networkと言うのは、以下の問題を解いている。
ただ、このL2 Normはコーディネートにより値が変わってしまう。
そこで、カルバック・ライブラー(KL)情報量を使って、元のDistribution$P_{\theta^{t}}$と次のステップ$\theta^{t+1}$のDistribution$P_{\theta^{t+1}}$を比較することを考える。
Fはフィッシャー行列を表す。
これをL2 Normのところに入れて、$\theta^{*}$で微分をすると、
これを自然勾配学習法(Natural Gradient Learning)と言い、ニューラルネットワークで使うのをNatural Neural Networksと言う。
この手法は、SGDよりIterationごとの計算量は多いが、Iterationの回数は少なく収束回数が少ない。ただ、フィッシャー行列の逆行列があるように、一回のIterationが大きすぎて、元々あまり使えなかったのが、2015年くらいからK-FACなどの手法が出てきて、ちょっと盛り上がった。
その後、下火になったものの、この頃のBayesian絡みでReferされることも増えてきたので、メモ。
自然勾配学習法を考えたのが日本人の先生なので、日本語の文献は多い。
分かりやすい記事:
3.4.2:自然勾配法【白トピックモデルのノート】
K-FACとは?