2017/06/02

Encoder-Decoder/Sequence-to-Sequenceについて

いきなりまとめ


Encoder-Decoder/Sequence-to-Sequenceモデルの特徴
  • 2014年に開発されたRNNモデル
  • inputとoutputが共に可変長
  • 2つのRNNから構成
  • input→RNN(Encoder)→final state/context C
  • context C→RNN(Decoder)→output

Encoder-Decoder/Sequence-to-Sequenceモデルの応用例
  • 音声認識
  • 翻訳
  • 自動応答


Today I Learned


10.4 Encoder-Decoder Sequence-to-Sequence Architecturesを参考に。


背景


Encoder-Decoder/Sequence-to-Sequence登場以前のRNNは3種類。
SEQ→VEC、VEC→SEQ、SEQ→SEQ(ただし入出力の長さが同じ)。
入出力が固定長のベクトルであり、入出力の順序を考慮できていなかった。
順序を考慮できても入出力が同じ長さであった。
Encoder-Decoder/Sequence-to-Sequenceは順序を考慮しつつ、入出力の可変長を実現。


モデルの構造


encoderとdecoderと呼ばれる2つのRNNからなる。
encoderはinput X = (x(1), . . . , x(nx))に対して、final state/context Cを出力する。
decoderはcontext Cををinputとして、Y= (y(1), . . . , y(ny))を出力する。
nx=ny=τでなくてもよい。
だからインとアウトの長さが異なる自動応答や機械翻訳に使える。
それを可能にするのが2つのRNNをつなぐcontext C。


モデルの弱点


context Cの情報量が少ないと長い情報を要約できない。


じゃあどうするか


context Cを固定長vectorじゃなく可変長sequenceにする。

他には、attention mechanismを取り入れる。(Bahdanau et al. (2015)
出力1ステップごとに別々のcontext Cを参照する。
それらのcontext Cは単にencoderのfinal state1つだけからじゃなく入力1ステップごとのstateの加重平均から作る。

0 件のコメント:

コメントを投稿

Relation Netowrksの概要

いきなりまとめ Relation Netowrksとは関係性の推論を行えるニューラルネット。 画像や音声の単純な認識ではなく、複雑な思考が可能。 例えば、 グレーの物体から最も離れている物体の形は何か? ボールは今何処にあるか? ランダムに動くボール群のどれが...