2017-05-05 10 views
2

時間の経過と共に変化する特徴のベクトルを持ち、これを分類のレイヤーとして使用するために単一のベクトルにマッピングしたいとします。これはKerasでどのように実装されますか?例:KerasのLSTMを使用した単一ベクトルへのベクトルのマップ

Input: <1.0, 2.0, 3.0> -> <1.1, 1.9, 3.2> -> ... 
Output: <1.0, 0.0, 0.0, 2.0> 

KerasドキュメントはLSTMオブジェクトが3次元で取ることを言うが、私はこのケースでそれを表現するかどうかはわかりません。

答えて

1

LSTMは[batch_size, time_steps, input_dim]で入力を受け取ります。あなたの場合、各ベクトルをタイムステップとして扱うことができます。だから、2つのタイムステップでの入力は以下のようになり上:

[<1.0, 2.0, 3,0>, <1.1, 1.0, 3.2>] which maps to <1.0, 0.0, 0.0, 2.0> 

例として:

input_dim = 3 
num_steps = 2 

model = Sequential() 
model.add(LSTM(16, input_shape=(num_steps, input_dim)) # output 2d [batch_size, 16] 
model.add(Dense(4)) # output [batch, 4] 

# ... more layers 

することは、彼らがよくやっているドキュメントを読むことを恐れてはいけません。 https://keras.io/layers/recurrent/#lstm

+1

私はLSTMを理解するのに苦労しています....この例のLSTM層の出力形状は? –

+0

私はコードにいくつかのコメントを追加します。 – putonspectacles

関連する問題