Meine Eingabe ist einfach eine CSV-Datei mit 339.732 Zeilen und zwei Spalten:Fehler bei der Überprüfung Modelleingang: erwartet lstm_1_input bis 3 Dimensionen zu haben, bekam aber Array mit Form (339.732, 29)
- die ersten 29 zu sein Merkmalswerte, dh X
- der zweite ein binärer Markierungswert, dh Y
ich versuche, meine Daten auf einem gestapelten LSTM Modell zu trainieren:
data_dim = 29
timesteps = 8
num_classes = 2
model = Sequential()
model.add(LSTM(30, return_sequences=True,
input_shape=(timesteps, data_dim))) # returns a sequence of vectors of dimension 30
model.add(LSTM(30, return_sequences=True)) # returns a sequence of vectors of dimension 30
model.add(LSTM(30)) # return a single vector of dimension 30
model.add(Dense(1, activation='softmax'))
model.compile(loss='binary_crossentropy',
optimizer='rmsprop',
metrics=['accuracy'])
model.summary()
model.fit(X_train, y_train, batch_size = 400, epochs = 20, verbose = 1)
Dies führt den Fehler:
Traceback (most recent call last): File "first_approach.py", line 80, in model.fit(X_train, y_train, batch_size = 400, epochs = 20, verbose = 1)
ValueError: Error when checking model input: expected lstm_1_input to have 3 dimensions, but got array with shape (339732, 29)
ich meine Eingabe versuchte Umgestaltung X_train.reshape((1,339732, 29))
verwenden, aber es hat nicht funktioniert zeigt Fehler:
ValueError: Error when checking model input: expected lstm_1_input to have shape (None, 8, 29) but got array with shape (1, 339732, 29)
Wie kann ich in meinen Input füttern zum LSTM?