[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS

>100 Views

May 12, 17

スライド概要

2017/5/12
Deep Learning JP:
http://deeplearning.jp/seminar-2/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

QUASI-RECURRENT NEURAL NETWORKS James Bradbury∗, Stephen Merity∗ , Caiming Xiong & Richard Socher 2017-05-12 輪読@松尾研究室 M1 田村浩一郎

2.

Agenda 1. 2. 3. 4. 5. Information Introduction Proposed Model Experiment & result Conclusion

3.

1. Information • Author - James Bradbury∗, Stephen Merity∗ , Caiming Xiong & Richard SocherSalesforce - Salesforce Researchのグループ • Submission date - Submitted on 5 Nov 2016 (v1), last revised 21 Nov 2016 (this version, v2) • Society - ICLR2017 - https://arxiv.org/abs/1611.01576 • About - 時系列データをCNN的に取り扱うモデル (*CNNとRNNを組み合わせたも のではない)

4.

2. Introduction • RNNの問題点 - RNNは時系列データを扱う一般的な深層学習モデル 1. 並列計算できないため,非常に長い系列のタスク を処理できない • h(t)の出力をするためにはh(t-1)を計算する必要がある 2. 意味解釈が困難* • 再帰的に同一の重みWを更新していくので,特徴量の意 味解釈が難しい h1 z1 h2 z2 : W ベクトルの順序に意味がなくなる : hn zn t-1 t 特徴量の意味が解釈できない

5.

2. Introduction • CNNで時系列データを扱う際の問題点 -Fully character-level neural machine translation without explicit segmentation(Lee et al., 2016)など,CNNを時系列データに用いてよい精度を出している研究もある 1. 時間不変性(time invariance)を仮定しており,過去の全ての情報 が反映されていない 長い系列長のデータを 処理することが難しい 引用:Fully character-level neural machine translation without explicit segmentation 近辺の情報しか反映されていない

6.

2. Introduction • QRNN - CNNにしたことで並列計算を可能に - 要素積を計算し,隠れ層において重みの順伝播を行わないこ とで,要素の独立して維持(意味解釈可能性) - Pooling層でLSTM likeに過去の情報を反映させる

7.

2. Introduction • 3つの実験を行なった 1. 2. 3. document-level sentiment classification language modeling character-level machine translation • 各実験において,LSTMと同等以上の精度を示した • Epochあたりの計算時間はLSTMに比べて25〜50%程度だった • 隠れ層の活性化の可視化によって意味解釈の可能性がある

8.

3. Proposed Model • QRNNはCNNにおける畳み込み層とPooling層で構成される • 入力はn次元ベクトル系列長Tのベクトル𝑿 ∈ 𝑹𝑻×𝒏 • m個のフィルタを用いて時系列方向に畳み込み,Z を得る - 未来の情報をたたみ込まないように注意(Masked convolution) - 𝑍 ∈ 𝑅𝑇 ×𝑚

9.

3. Proposed Model • 畳み込みはLSTMに対応させる形で以下の3つを行う 1. 2. 3. 𝑍 = tanh(𝑊𝑧 ∗ 𝑋) 𝐹 = 𝜎(𝑊𝑓 ∗ 𝑋) 𝑂 = 𝜎(𝑊𝑜 ∗ 𝑋) - * は時系列方向のMasked Convolutionを示す • 以上の式は,LSTM的に理解すれば以下のようになる - フィルタのサイズを2として, 1. 𝑧𝑡 = tanh(𝑊𝑧1 ∗ 𝑥𝑡−1 + 𝑊𝑧2 ∗ 𝑥𝑡 ) ->LSTMのinput 2. 𝑓𝑡 = σ(𝑊𝑓1 ∗ 𝑥𝑡−1 + 𝑊𝑓2 ∗ 𝑥𝑡 ) ->LSTMのforget 3. 𝑜𝑡 = σ(𝑊𝑜1 ∗ 𝑥𝑡−1 + 𝑊𝑜2 ∗ 𝑥𝑡 ) ->LSTMのoutput

10.

3. Proposed Model • Pooling - LSMT的に扱う - 3つのpoolingを提案 1. 2. 3. f-pooling ℎ𝑡 = 𝑓𝑡 ۨ ℎ𝑡−1 + (1 − 𝑓𝑡 )ۨ𝑧𝑡 fo-pooling 𝑐𝑡 = 𝑓𝑡 ۨ𝑐𝑡−1 + (1 − 𝑓𝑡 )ۨ𝑧𝑡 ℎ𝑡 = 𝑜𝑡 ۨ𝑐𝑡 ifo-pooling 𝑐𝑡 = 𝑓𝑡 ۨ𝑐𝑡−1 + 𝑖𝑡 ۨ𝑧𝑡 ℎ𝑡 = 𝑜𝑡 ۨ𝑐𝑡

11.

3. Proposed Model • Regularization - 正則化として,LSTMで用いられているzoneoutを用 いる - 𝐹 = 1 − 𝑑𝑟𝑜𝑝𝑜𝑢𝑡(1 − 𝜎(𝑊𝑓 ∗ 𝑋)) とすれば良い • Densely-connected layers - Sequence classificationにおいて,QRNNの各層の間に skip connection(tからt+dなどのジャンプしている接 続)を追加する方が良い • Encoder-Decoder Models - QRNNを翻訳のようなタスクでも用いるため,QRNN をencoder, decoderとして使うことも可能

12.

4. Experiment & result • QRNNの精度と計算時間を以下の実験で検証する 1. 2. 3. document-level sentiment classification language modeling character-level machine translation

13.

4. Experiment & result 1. document-level sentiment classification • データセット: IMDb Dataset - Input : 映画に関するレビュー文章 - Label : 評価 positive(25,000sample) / negative(25,000sample) の2値分類 • hyper-parameter - 4層のdensely-connected, 256ユニット word vector dimensions: 300 Dropout = 0.3, L2 = 4 * 10^-6 Minibatch = 24, RMSprop, lr=0.001, α=0.9, ε=10^-8

14.

4. Experiment & result 1. document-level sentiment classification LSTMと同等程度の精度であるが, 計算時間が大幅に向上 • 結果 • 隠れ層の活性化の可視化 ベクトルを要素独立にしたため, 隠れ層の分析が有意に 色は活性化を表す timestep 120~160くらいで薄くなて いるが,この部分だけ否定的な wordが多かった模様

15.
[beta]
4. Experiment & result
2. language modeling
• データセット : Penn Treebank
-

コーパスの一つ

-

Train: 929,000 words, validation: 73,000 words, test: 82,000words

-

Word-level prediction を行う

-

Perplexityで評価する(smaller is better)
- exp(σ𝑥 𝑝(𝑥) log

1
𝑝(𝑥)

)

• hyper-parameter
- 2層, 640ユニット
- SGD + moumentum, lr=[1 if n_epoch<=6, else lr_{t-1}*0.95]

16.

4. Experiment & result 2. language modeling • 結果 LSTMと比較して よりよい結果に RNNに由来する計算時間 が短縮している

17.

4. Experiment & result 3. character-level machine translation • データセット : IWSLT German–English spoken-domain translation - Tedxから209,772の文章のペア - Train: 929,000 words, validation: 73,000 words, test: 82,000words - sequence-to-sequence QRNNを評価 • hyper-parameter - 4層, 320ユニット - Adam, 10epoch - 畳み込み一層目: filter size = 6, それ以外:filter size = 2

18.

4. Experiment & result 3. character-level machine translation • 結果 Character level LSTMよりも良い精度で,計算時間も25%ほど Word-level attentionとほぼ同等の精度

19.

5. Conclusion • QRNNは,RNNとCNNの双方の長所を取り込ん だmodel - CNNのように並列処理可能 - RNNのように全時系列の影響を反映 • QRNNは,LSTMをはじめ既存手法に対して,同 等以上の精度を高速な学習で出すことができる • QRNNは,より意味解釈可能性を持っている

20.

~資料参考文献~ • Fully Character-Level Neural Machine Translation without Explicit Segmentation(Jason Lee, Kyunghyun Cho, Thomas Hofmann, 2016) https://arxiv.org/abs/1610.03017 *画像引用 • LSTMを超える期待の新星、QRNN(@icoxfog417, Qiita) http://qiita.com/icoxfog417/items/d77912e10a7c60ae680e • [DL輪読会]QUASI-RECURRENT NEURAL NETWORKS(DeepLearningJP2016, slide share) https://www.slideshare.net/DeepLearningJP2016/dlquasirecurrent-neural-networks