【发布时间】:2021-09-02 23:41:13
【问题描述】:
我正在尝试测试一个简单的卷积层,其中输入图像(1 个波段 = 灰度)是存储在列表中的 numpy 数组,目标存储在 pandas 数据帧中。输入图像的大小为 16x16。 model.fit 的输出是“层顺序需要 1 个输入,但它收到 239 个输入张量”的错误。我还检查了this link,但仍然找不到答案。谁能帮我解决这个错误?
(trainY, testY, trainX, testX) = train_test_split(df, images, test_size=0.20, random_state=42)
print (np.shape(trainY),np.shape(testY),np.shape(trainX),np.shape(testX))
result: (239, 1) (60, 1) (239, 16, 16) (60, 16, 16)
model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(16, 16, 1),name='Layer1'))
model.add(layers.Flatten())
model.add(layers.Dense(16, activation='relu',name='layer2'))
model.add(layers.Dense(1,activation='linear',name='Layer3'))
model.summary()
model.compile(optimizer='adam',
loss='mean_squared_error',
metrics=['mae'])
history = model.fit(trainX, trainY, epochs=10,
validation_split=.2, batch_size=4)
【问题讨论】:
标签: python keras regression conv-neural-network