LSTMに22個の機能(22,2000)を持つ1次元信号(1,2000)を供給しようとしています。
(200Hzのサンプリングレートで1-D信号を10秒で取得)
そして、私は808バッチを持っています。 (808、22、2000)LSTM 2-d入力形状の選択方法は?
LSTMが(batch_size、timestep、input_dim)の3Dテンソル形状を受け取ることがわかりました。
私の入力形状は正しいのですか?
:(batch_size = 808、timestep = 2000、input_dim = 3)
ここは私のコードサンプルです。
# data shape check
print(X_train.shape)
print(X_test.shape)
print(y_train.shape)
print(y_test.shape)
(727, 22, 2000)
(81, 22, 2000)
(727, 2)
(81, 2)
# Model Config
inputshape = (808,2000,2) # 22 chanel, 2000 samples
lstm_1_cell_num = 20
lstm_2_cell_num = 20
inputdrop_ratio = 0.2
celldrop_ratio = 0.2
# define model
model = Sequential()
model.add(LSTM(lstm_1_cell_num, input_shape=inputshape, dropout=0.2, recurrent_dropout=0.2))
model.add(Dense(20))
model.add(LSTM(lstm_2_cell_num, dropout=0.2, recurrent_dropout=0.2))
model.add(Dense(2, activation='sigmoid'))
print(model.summary())
model.compile(loss='binary_crossentropy',
optimizer='adam',
metrics=['accuracy'])
あなたが入力形状 – DJK