import pandas as pdimport numpy as npfrom sklearnpreprocessing import MinMaxScalerfrom kerasmodels import Sequentialfrom keraslayers import Dense LSTM# 读取数据data = pdread_csvtestcsv# 数据预处理data销售日期 = pd
这个错误是由于train_X的shape不正确导致的。在创建train_X时,使用了train_data的shape[2],但是train_data是一个二维数组,没有第三个维度。要解决这个问题,可以修改代码如下:
lookback = 3
train_X, train_Y = create_dataset(train_data.values, lookback)
test_X, test_Y = create_dataset(test_data.values, lookback)
这样,train_X和test_X将会是一个三维数组,第三个维度表示特征的数量。然后在构建模型时,将input_shape修改为(lookback, train_X.shape[2]):
model.add(LSTM(50, input_shape=(lookback, train_X.shape[2])))
这样就可以解决这个问题了。
原文地址: https://www.cveoy.top/t/topic/i2fl 著作权归作者所有。请勿转载和采集!