[英]ValueError in model.fit in lstm
我正在嘗試將 lstm model 與我讀取為 csv 文件的數據相匹配。 (320,6) 是 x_train 的形狀,model 給出為
def build_modelLSTMlite(input_shape):
model = keras.Sequential()
model.add(keras.layers.LSTM(64, input_shape=input_shape))
model.add(keras.layers.Dense(64, activation='relu'))
model.add(keras.layers.Dropout(0.3))
model.add(keras.layers.Dense(10, activation='softmax'))
return model
model = build_modelLSTMlite(input_shape)
optimiser = keras.optimizers.Adam(learning_rate=0.001)
model.compile(optimizer=optimiser,
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.summary()
history = model.fit(x_train, y_train, batch_size=32, epochs=100)
這個 model.fit() 顯示值錯誤
ValueError: Input 0 of layer "sequential_1" is incompatible with the layer: expected shape=(None, 320, 6), found shape=(32, 6)
您必須創建 x_train 數據的滑動版本。 就像是:
from numpy.lib.stride_tricks import sliding_window_view
x_train_lstm = sliding_window_view(x_train, (input_shape[0], x_train.shape[1])).squeeze(axis=1)
history = model.fit(X_train_lstm, y_train[:-input_shape[0]+1], batch_size=32, epochs=100)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.