我正在尝试创建一个卷积神经网络来对CIFAR10数据集进行分类。目标是更改各种超参数,在我的例子中是优化器、学习率和批量大小。只有改变优化器和学习率才能正常工作,但是添加批处理大小会引发标题中引用的值错误。任何帮助不胜感激:下面是我代码的一部分。我希望这是相关的部分,但我仍在学习,所以不确定。
到目前为止,我试图将字典param_grid中的键更改为"batchsize",因为我认为这可能是语法错误。我还检查了互联网上允许哪些参数用于 GridSearchCV 参数函数param_grid,唉我没有找到它。
model = KerasClassifier(
build_fn=create_model,
epochs=epochs,
verbose=1)
optimizer_candidates = [Adam, RMSprop]
lr_candidates = [1e-3, 5e-3, 1e-4]
batch_size = [128, 64]
param_grid = {
"optimizer": optimizer_candidates,
"lr": lr_candidates,
"batch-size": batch_size}
grid = GridSearchCV(
estimator=model,
param_grid=param_grid,
n_jobs=1,
verbose=1,
cv=3)
grid_result = grid.fit(x_train, y_train)
param_grid
中的批大小名称应为 "batch_size"
,而不是 "batch-size"
。
它可能应该是"batch_size"而不是"批量大小"。