首页 > 解决方案 > 了解 LSTM 网络的输入形状

问题描述

我有一个形状的数据:(753,8,1)这是为数据构建的 LSTM 模型:

model = Sequential()
model.add(LSTM(32,input_shape=(8,1)))
model.add(Dropout(0.25))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='mean_squared_error' , optimizer='adam' , metrics=['accuracy'] )

但是在数据上训练它: epochs_hist = model.fit(reshaped_segments , labels , batch_size=20 , epochs=5 , validation_split=0.2)

我收到以下错误:ValueError:检查模型目标时出错:您传递给模型的 Numpy 数组列表不是模型预期的大小。预计会看到 1 个数组,但得到了以下 753 个数组的列表:[array([[0]]), array([[0]]), array([[0]]), array([ [0]]), 数组([[1]]), 数组([[0]]), 数组([[0]]), 数组([[0]]), 数组([[1]]) , 数组([[1]]), 数组([[0]]), 数组([[1]]), 数组([[1]]), 数组([[0]]), arr...

标签: tensorflowkeraslstm

解决方案


尝试以这种方式展平您的标签:

labels = np.concatenate(labels).ravel()

最后labels.shape 必须是(753,)


推荐阅读