いぬいぬいぬい

逆から読んでみてください

論文のIntroを淡々と和訳する - 2.Learning Longer-term Dependencies in RNNs with Auxiliary Losses

こんばんは。

今回は次の論文のイントロを和訳しました。

Learning Longer-term Dependencies in RNNs with Auxiliary Losses

(追加の損失でRNNの長期依存性を学習)

著者: Trieu H. Trinh, Andrew M. Dai, Minh-Thang Luong, Quoc V. Le (Google Brain)

ICLR 2018

 

AIの応用で系列内のイベントの長期依存性の理解が必要となる。
例えば言語処理では、本の中で離れたイベントの関係に関する質問に答えるためにはその関係を理解せねばならない。
通常これは勾配法とBackPropagation Through Time(BPTT)で達成される。
しかし、BPTTで得られる勾配はしばしば消滅・発散するため長期依存性の学習は難しい
さらに、BPTTを使うためには、途中の隠れ状態を保持せねばならない。
よって必要なメモリーが系列の長さにスケールしてしまうため大きな問題に合わせるのが難しい。

この問題に対処する有効なアプローチがいくつか提案されてきた。
ひとつめはLSTMで、これは勾配の流れを改善する。
さらに、LSTMの学習を安定させるのに勾配クリッピングも使える。
モリーの軽減のために、周期的にのみ隠れ状態を保持したり、truncated BPTT や synthetic gradientを使うことができる

畳み込みネットワークも長期依存の問題を改善することができる。
なぜなら大きなカーネルとResNetのような深いネットワークは画像の離れた部分を通して長期依存を学習することができるから。
しかしこれは根本的に異なる種の構造で、他の欠点を持つ。
たとえば元データや途中の活性値は学習の間保持される。(普通のCNNなら推論に入力サイズのオーダーO(n)のストレージが必要になる)
トランスフォーマーも(訓練や推論にO(n)のストレージへのランダムアクセスが必要なので、magnify(?)されているものの)同様の問題を持つ。

なので、RNNには、長さlのBPTTの下でO(l)のストレージしか必要としないというメリットがある。
PTBデータセット言語モデルを学習するときには、100万のトークン列に対して状態を決してリセットしないので(?)、しばしばこのメリットが現れる。
したがって、理論的にはRNNは非常に長い距離にわたった関係を学習できる。
さらにRNNは「振り返らない」のでその推論にはO(1)のストレージしか必要ない。

本論文では、BPTTのみに頼ったRNNの弱さにさらに取り組むために別の方向のテクニックを提案する。
我々の技術は(アンカーの前or後に再構成/予測のための)教師なしの追加のロスを主の教師ありロスに加える。
これにより、少ないBPTT数で学習ができる。

得られた結果は、追加のロスによってLSTMの最適化と汎化が大幅に向上できることをしめす。
さらにこれによって、良い結果を得るために長いBPTTを学習に使う必要がなくなった。
なので、提案法は勾配の問題と同様にBPTTの長さが本質的なボトルネックになるとても長い系列に使える。

実験では16000要素まで扱った。
全ての勾配を用いたLSTMでの学習はとても難しいが、ロスを追加したLSTMはずっと速く少ない使用メモリーで学習できた。

 

おしまい。