我有一个2D数组(pandas),它是一个时间序列,包含3180行,每行有8列(数组)作为特征。我正在尝试训练一个LSTM层
sc = StandardScaler()X_train = sc.fit_transform(X_train)print (X_train.shape)classifier = Sequential()classifier.add(LSTM(units=128, input_shape=(1, len(X_train), x.shape[1])))
正如这里所建议的。但是出现了错误,
ValueError: Input 0 is incompatible with layer lstm_1: expected ndim=3, found ndim=4
回答:
LSTM
期望输入是一个3D数组,因此input_shape
的形状应该长度为2…
假设X_train.shape
是(3180, 8, 1)
,这样应该可以工作:
LSTM(units=128, input_shape=X_train.shape[1:]))