Upload
deep-learning-jp
View
614
Download
0
Embed Size (px)
Citation preview
QUASI-RECURRENT NEURAL NETWORKS
James Bradbury∗, Stephen Merity∗ , Caiming Xiong & Richard Socher
2017-05-12
輪読@松尾研究室M1 田村浩一郎
Agenda
1. Information
2. Introduction
3. Proposed Model
4. Experiment & result
5. Conclusion
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を組み合わせたものではない)
2. Introduction
• RNNの問題点- RNNは時系列データを扱う一般的な深層学習モデル
1. 並列計算できないため,非常に長い系列のタスクを処理できない• h(t)の出力をするためにはh(t-1)を計算する必要がある
2. 意味解釈が困難*• 再帰的に同一の重みWを更新していくので,特徴量の意味解釈が難しい
:
h1
h2
hn
t-1
z1
z2
zn
:
t
W ベクトルの順序に意味がなくなる
特徴量の意味が解釈できない
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
近辺の情報しか反映されていない
長い系列長のデータを処理することが難しい
2. Introduction
• QRNN
- CNNにしたことで並列計算を可能に
- 要素積を計算し,隠れ層において重みの順伝播を行わないことで,要素の独立して維持(意味解釈可能性)
- Pooling層でLSTM likeに過去の情報を反映させる
2. Introduction
• 3つの実験を行なった
1. document-level sentiment classification
2. language modeling
3. character-level machine translation
• 各実験において,LSTMと同等以上の精度を示した
• Epochあたりの計算時間はLSTMに比べて25〜50%程度だった
• 隠れ層の活性化の可視化によって意味解釈の可能性がある
3. Proposed Model
• QRNNはCNNにおける畳み込み層とPooling層で構成される
• 入力はn次元ベクトル系列長Tのベクトル𝑿 ∈ 𝑹𝑻×𝒏
• m個のフィルタを用いて時系列方向に畳み込み,Z を得る- 未来の情報をたたみ込まないように注意(Masked convolution)
- 𝑍 ∈ 𝑅𝑇×𝑚
3. Proposed Model
• 畳み込みはLSTMに対応させる形で以下の3つを行う1. 𝑍 = tanh(𝑊𝑧 ∗ 𝑋)
2. 𝐹 = 𝜎(𝑊𝑓 ∗ 𝑋)
3. 𝑂 = 𝜎(𝑊𝑜 ∗ 𝑋)
- * は時系列方向のMasked Convolutionを示す
• 以上の式は,LSTM的に理解すれば以下のようになる- フィルタのサイズを2として,
1. 𝑧𝑡 = tanh(𝑊𝑧1 ∗ 𝑥𝑡−1 +𝑊𝑧
2 ∗ 𝑥𝑡) ->LSTMのinput
2. 𝑓𝑡 = σ(𝑊𝑓1 ∗ 𝑥𝑡−1 +𝑊𝑓
2 ∗ 𝑥𝑡) ->LSTMのforget
3. 𝑜𝑡 = σ(𝑊𝑜1 ∗ 𝑥𝑡−1 +𝑊𝑜
2 ∗ 𝑥𝑡) ->LSTMのoutput
3. Proposed Model
• Pooling- LSMT的に扱う
- 3つのpoolingを提案
1. f-pooling
ℎ𝑡 = 𝑓𝑡 ℎ𝑡−1 + (1 − 𝑓𝑡) 𝑧𝑡2. fo-pooling
𝑐𝑡 = 𝑓𝑡 𝑐𝑡−1 + (1 − 𝑓𝑡) 𝑧𝑡ℎ𝑡 = 𝑜𝑡 𝑐𝑡
3. ifo-pooling𝑐𝑡 = 𝑓𝑡 𝑐𝑡−1 + 𝑖𝑡 𝑧𝑡ℎ𝑡 = 𝑜𝑡 𝑐𝑡
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として使うことも可能
4. Experiment & result
• QRNNの精度と計算時間を以下の実験で検証する
1. document-level sentiment classification
2. language modeling
3. character-level machine translation
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
4. Experiment & result
1. document-level sentiment classification• 結果
• 隠れ層の活性化の可視化ベクトルを要素独立にしたため,隠れ層の分析が有意に
色は活性化を表す
timestep 120~160くらいで薄くなているが,この部分だけ否定的なwordが多かった模様
LSTMと同等程度の精度であるが,計算時間が大幅に向上
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( 𝑥 𝑝(𝑥) log1
𝑝(𝑥))
• hyper-parameter- 2層, 640ユニット
- SGD + moumentum, lr=[1 if n_epoch<=6, else lr_{t-1}*0.95]
4. Experiment & result
2. language modeling
• 結果 LSTMと比較してよりよい結果に
RNNに由来する計算時間が短縮している
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
4. Experiment & result
3. character-level machine translation
• 結果
Character level LSTMよりも良い精度で,計算時間も25%ほど
Word-level attentionとほぼ同等の精度
5. Conclusion
• QRNNは,RNNとCNNの双方の長所を取り込んだmodel
- CNNのように並列処理可能
- RNNのように全時系列の影響を反映
• QRNNは,LSTMをはじめ既存手法に対して,同等以上の精度を高速な学習で出すことができる
• QRNNは,より意味解釈可能性を持っている
~資料参考文献~
• 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