Machine learning 无法将LSTM的二维输入转换为三维输入?

Machine learning 无法将LSTM的二维输入转换为三维输入?,machine-learning,keras,lstm,Machine Learning,Keras,Lstm,我有我的训练数据的形状(16017979)。160是训练数据的大小,17979是特征编号 我使用以下代码将训练数据X重塑为3d: X = X.reshape(X.shape[0],X.shape[1],1) 这给了我一个(16017979,1)的形状。但是,当我在LSTM中拟合数据时,它会说: 层lstm的输入0与层不兼容:预期ndim=3,发现ndim=4。收到完整形状:[无、160、17979、1] model = keras.Sequential() model.add(layers.L

我有我的训练数据的形状(16017979)。160是训练数据的大小,17979是特征编号

我使用以下代码将训练数据X重塑为3d:

X = X.reshape(X.shape[0],X.shape[1],1)
这给了我一个(16017979,1)的形状。但是,当我在LSTM中拟合数据时,它会说:

层lstm的输入0与层不兼容:预期ndim=3,发现ndim=4。收到完整形状:[无、160、17979、1]

model = keras.Sequential()
model.add(layers.LSTM(128, dropout=0.2, recurrent_dropout=0.2))
model.add(layers.Dense(4, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
有人知道如何解决这个问题吗