I am Charmie

メモとログ

時系列データに対するDeep Neural Networks

今後必要になってくるはずなのでまとめてみる.

  • Recurrent Neural Network (回帰結合ニューラルネットワーク):
    • 時系列データを扱うNN.
    • 隠れ層の出力が2種類: 次の層へつながる出力,自身につながる出力
    • Back Propagation Through Time (BPTT): 自身につながる出力を持つ隠れ層に対する学習方法
  • Long Short-Term Memory (LSTM) [1]:
    • RNNにおける勾配消失問題を解決するために特殊な隠れ層(ノード)を導入 = 隠れ層を簡略化 -> 長期依存(Long-Term Dependencies)が可能
    • 再帰入力を受け付けるノードに対して恒等関数の活性化関数を使う
    • 再帰入力に関する重み行列を単位行列に固定
    • 時間方向の影響を単純な加算でしか与えられない = 補助的なゲートノード,判断ノードを導入.複数ノードの集合体を1つのメモリセルとして扱う = 簡略化されたノードで高い表現力
  • Connectionist Temporal Classification:
    • RNN, LSTMにおける「入力,出力の次元数が等しい」制約を解決
    • 空白ラベル'_'を導入
  • Sequence-to-sequence Learning
  1. S. Hochreiter and J. Schmidhuber, "Long Short-Term Memory."  Neural Computation, Vol. 9, No. 8, pp. 1735-1780, 1997.
  • Keras.layers.LSTM
    • 入力ベクトルの次元数を揃える必要がある? −> keras.preprocessing.sequence.pad_sequencesを使ってパディングする