【问题标题】:Error in Input Dimensions - Keras输入尺寸错误 - Keras
【发布时间】:2018-02-18 00:04:36
【问题描述】:

我正在用 keras 训练一个神经网络,输入数据的形状为 (116, 2, 3, 58),输出数据的形状为 (116, 2)。我收到此错误:

ValueError: Error when checking target: expected dense_3 to have 4 dimensions, but got array with shape (116, 2)

我可能做错了什么?这是我的代码:

trainingInput = np.load("trainingInput.npy")
trainingOutput = np.load("trainingOutput.npy")

inp = Input(batch_shape=(116, 2, 3, 58))
d1 = Dense(16, activation='relu')(inp)
d2 = Dense(32, activation='relu')(d1)
out = Dense(2, activation='softmax')(d2)

model = Model(inputs=inp, outputs=out)
lrSet = SGD(lr=0.01)

model.compile(loss='categorical_crossentropy', optimizer=lrSet, metrics=['accuracy'])
model.fit(trainingInput, trainingOutput, batch_size=16, epochs=50, verbose=1, validation_split=0.1)

【问题讨论】:

    标签: machine-learning keras dimensions keras-layer


    【解决方案1】:

    Dense 是一个全连接层。它不会改变输入的形状。如果你想使用 Dense,你应该调整 (116,2,3,68) -> (116,2*3*68)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-18
      • 1970-01-01
      • 2018-03-06
      • 2017-08-30
      • 1970-01-01
      • 2018-09-01
      • 2019-05-25
      相关资源
      最近更新 更多