【问题标题】:I keep getting this error "ValueError: Error when checking input: expected dense_8_input to have 2 dimensions, but got array with shape (705, 66, 1)"我不断收到此错误“ValueError:检查输入时出错:预期dense_8_input有2维,但得到的数组形状为(705、66、1)”
【发布时间】:2021-06-17 07:32:41
【问题描述】:

'MLP'

'在训练数据集上定义和拟合模型'

def fit_model(trainX, trainy, testX, testy):
    'define model'
    model = Sequential()
    model.add(Dense(5, input_dim=2, activation='relu', kernel_initializer='he_uniform'))
    model.add(Dense(5, activation='relu', kernel_initializer='he_uniform'))
    model.add(Dense(3, activation='softmax'))
    'compile model'
    model.compile(loss='categorical_crossentropy', optimizer='sgd', metrics=['acc'])
    'fit model'
    history = model.fit(trainX, trainy, validation_data=(testX, testy), epochs=100, batch_size=66, verbose=0)
    return model, history

# fit model on train dataset
model, history = fit_model(trainX, trainy, testX, testy)
# evaluate model behavior
summarize_model(model, history, trainX, trainy, testX, testy)
# save model to file
model.save('model.h5')

【问题讨论】:

标签: python keras tensor valueerror mlp


【解决方案1】:

你必须将它们作为列表传递,你不能有 4 个不同的参数

def fit_model(train, test):

然后像这样调用 fit


fit_model([trainX, trainy], [testX, testy], batch_size=16, epochs=100)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-04
    • 2021-12-19
    • 2022-10-16
    • 1970-01-01
    • 2020-04-11
    • 2020-05-17
    • 2020-11-22
    • 1970-01-01
    相关资源
    最近更新 更多