Deep Learning論文紹介「Learning Recurrent Neural Networks with Hessian-Free Optimization」
リカレントニューラルネット(RNN)に長距離相関を学習させるのは難しい問題だったが、Hessian-Freeを使ったらできた、という話。
RNNはBack Propagation Through Time(BPTT)+確率的勾配法で簡単に計算できることが長所とされているが、10タイムステップほど離れた相関は1次の勾配法では全然学習できない
その原因は“vanishing/exploding gradients”。長距離相関はBPTTで何度も前の時刻の層へ伝搬されるため、誤差信号がすぐに減衰して消えてしまう。
最近生まれたHessian-Free(HF) またの名をtruncated-Newton, Newton-CG はDeep Neural Networksの学習に有効なので、RNNの学習にもきっと有効に違いない。
数式に関してはあんまり簡潔に要約できないので割愛。ここをじっくり読まないとこの論文は意味が無いなぁ。
ざっくり言うと「2階微分を使って目的関数を近似してそれを最適化する系のやりかたではヘシアン(2階微分の行列)の逆行列を計算する必要が出てきてとても計算コストが高いよね」ということらしいが、Hessian-Freeでどうやって回避するのかはよくわからなかった。
"Hessian-Free"自体は同じ著者James Martensの"Deep learning via Hessian-free optimization"で説明されている。こちらを先に読むべきか。
さいごに
この記事はDeep Learningに興味を持った著者が、関連論文を読んで勉強しながら書いているものです。そのため間違いなどが含まれている可能性があります。もしなにか気になる点がありましたらご指摘いただけるとありがたいです。