Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Dilated rnn

2,187 views

Published on

dirated recurrent neural networks

Published in: Technology
  • Be the first to comment

Dilated rnn

  1. 1. 論文紹介 Dilated Recurrent Neural Networks 森山 直人 本資料で用いられる図及び表は論文より引用:https://arxiv.org/pdf/1710.02224.pdf
  2. 2. 自己紹介 • 森山 直人(もりやま なおと) • もともと中国国籍 ⇒ 帰化(国籍変更)して日本人に • パーソルキャリア株式会社でデータ分析しています • 仕事では大方勾配Boosting、プライベートで遊びで深層学習 • 自然言語処理が好きです
  3. 3. 本日のお話 • 論文選定の理由及びポイント • Recurrent neural networkの基本と問題点 • Dilated recurrent neural networksの仕組み • パフォーマンス評価 • まとめ
  4. 4. 論文のポイント • RNNが抱える問題をシンプルな手法を用いて解決を図り、 幾つかの観点で既存の構造より優れることを提唱する • NIPS論文としては数理的な複雑度が抑えられている (それだけアイディアが良い?) • 自然言語から画像認識など応用範囲が広く、既存のRNNを 用いたモデルへの移植がしやすい 以降通常のRNNの仕組みを整理したのち、本論文の概要を 説明致します
  5. 5. Recurrent Neural Network 出力層 入力層 隠れ層 隠れ層が再帰構造を 持つネットワーク 時系列に展開 t=0 t=1 t=2 t=3 任意の数 で初期化
  6. 6. Recurrent Neural Network 理論上ここには過去の全 情報が記憶されている (記憶の計算結果として) 過去の全情報と最新の 情報を計算することで未 来の情報を得たい
  7. 7. 問題点 • 中間層のみが過去の情報を表現するため、そこで短期・中期の 記憶を保持しながら長期記憶を保持するのは難しい • 勾配計算時は過去の系列をすべて辿るため、計算が多くなり 勾配問題(爆発・消失)が発生し得る -順伝搬時は重みが乗った入力を足し算。逆伝搬時は掛け算 • 学習は系列データを逐次処理するため、並列化が難しい
  8. 8. 問題点 問題点に対してはこれまで多くの取り組みがされてきた • LSTMやGRUを用いて勾配をコントロール • Clockwork RNNsなどを用いて異なる時系列を処理 • 一定間隔で学習データを飛ばす処理を入れることで高速化 • その他gradient clippingなどの学習ルール 本論文ではWaveNetで用いられるアイディアをRNNに応用し、 前述の課題を解決する
  9. 9. Dilated Recurrent Neural Networks (以下dilatedRNNとします) • IBMとイリノイ大学の共同執筆 • 再帰構造を持つ隠れ層の再帰接続にスキップ機能を導入。 これにより少数の接続で長期の範囲と接続を持たせる • 複数の隠れ層を構築し、それぞれ異なる時系列を参照 • 平均再帰長とパラメータ効率の概念を新たに提唱し、 モデルの優位性を分析
  10. 10. dilatedRNNのキーアイディア 層ごとに異 なるスキッ プ幅を持つ WaveNetと同様のスキップ幅を持つ⇒ スキップの幅は 𝑠 𝑙 = 𝑀 𝑙−1 (M:スキップを持つ隠れ層数、l: 隠れ層)https://deepmind.com/blog/wavenet-generative-model-raw-audio/
  11. 11. dilatedRNNのキーアイディア 通常のRNN dilatedRNN
  12. 12. dilatedRNNのキーアイディア 通常のRNN dilatedRNN 1回のスキップ幅を広げ ることで、少ない接続で 長い系列を辿れる通常のRNNでは勾配問 題により長い系列を学 習出来ない 概念上、すべての層が 同じ時系列依存をする 層ごとに異なる時系列 依存関係となっている 全体のパラメータ数が 少なく、学習速度が早 い 全体のパラメータ 数が多く、学習に 時間がかかる
  13. 13. パラメータが少なければよいのか? • パラメータ減により、長い時系列の学習や学習速度の向上は 実現できたが、性能向上の理論を検討する必要がある • そのために、新たに平均再帰長の概念を提唱する • メインの思想は、再帰の回数が長いほど、各データが持つ情報 が希薄する。ネットワークの記憶能力向上のため、平均再帰長 は少ないほど良い ※論文中で平均再帰数が少ないほど良いことを示す証明はされていない
  14. 14. 平均再帰長 ※より小さい平均再帰長のほうが優秀 再帰長の定義 𝑑 = 1 𝑚 𝑛=1 𝑚 max 𝑖∈𝑉 𝑑𝑖(𝑛) 𝑑𝑖(𝑛): 時刻iからnにかけて、任意の ノード間の距離 𝑚 : 再帰層数 RNNの平均再帰長 𝑑 = 𝑚−1 2 + log2 𝑚 + 1 𝑚 + 1 dilatedRNNの平均再帰長 𝑑 = 3𝑚−1 2𝑚 log2 𝑚 + 1 𝑚 + 1
  15. 15. 平均再帰長 ※より小さい平均再帰長のほうが優秀 RNNの平均再帰長 𝑑 = 𝑚−1 2 + log2 𝑚 + 1 𝑚 + 1 dilatedRNNの平均再帰長 𝑑 = 3𝑚−1 2𝑚 log2 𝑚 + 1 𝑚 + 1 再帰層mが多いほど、dilatedRNNの理論平均再帰長が減少。 前述の理論に基づいてdilatedRNNの方がより情報を効率よく 記憶できる
  16. 16. パラメータ効率化 • 平均再帰長に加え、パラメータ効率化の概念を導入 • RNNの概念として、より少ないパラメータで長い再帰を行 いたい • dilatedRNNのスキップ効果により、1つのパラメータで1以 上の再帰を行うことができるため、効率に優れるといえる
  17. 17. 並列化 1以上のスキップ幅を持つ層は並列化が可能となる。 RNNの仕組み上、直前の情報がなければ計算は出来ないが、スキップ する場合はスキップ幅分過去の情報を参照するため直前の情報が不要 となる。 そのため図のようにスキップ幅が4の場合は4データを並列して計算可 能となる
  18. 18. ベンチマークスコア パフォーマンス評価のため、以下のタスクにて実験を行った • メモリーコピー • 手書き文字(MNIST)分類 • 文字レベル言語モデル(PennTreebank) • 音声話者推定 比較対象はRNNをベースとしたモデルであり、dilatedRNN以外 にLSTMとGRUにおいてもdilatedを適応させ、それぞれ dilatedLSTM、dilatedGRUとしてスコアを計算した
  19. 19. メモリコピー dilated関連モデルが大幅に他のモデルを上回る。 Dilatedを適応させたLSTMやGRUよりもVanilla(一般的なRNN)が早 く収束した要因として、LSTMやGRUの構造が複雑であるため、学習に 時間を要したと推測される
  20. 20. 手書き文字分類 ここでは通常の学習に加え入力系列を並べ替えて学習させる処理を行う 通常では最高性能はdilatedGRUとなった。並べ替えた際はdilatedCNN が最も高いスコアとなった。
  21. 21. 文字レベル言語モデル 文字レベル言語モデルではBPCが他のモデルに及ばなかった。 Dilatedではモデルの正則化効果を図るため入力層にドロップアウトを 設ける以外学習トリックを使わなかったことが影響と考察 また、パラメータ数では他のモデルを大幅に下回っている
  22. 22. 音声話者推定 音声データの処理では一般的にMFCCのような一定区間の周波数を畳み 込む前処理が必要だが、これを利用しなかったdilatedベースのGRUは スコアが劣るものの、同水準に達した
  23. 23. まとめ • シンプルな実装によりRNNに長期時系列依存性を高めた • パラメータの減少と並列化により学習速度が向上 • RNNにおける理論分析の指標を提供した

×