0

我在运行用于构建 CNN 的 SGD 优化器时出现以下错误

--> 146 optimizer = SGD(0.01, 0.8, 0.0005, nesterov=True) 147 model.compile(optimizer=optimizer, loss='categorical_crossentropy', metrics=['accuracy']) 148 #训练模型

TypeError:init()为参数“nesterov”获得了多个值

4

2 回答 2

0

keras SGD优化器有 3 个参数,并且它接受 kwargs,因此最好为您的参数提供密钥。

tf.keras.optimizers.SGD(learning_rate=0.01, momentum=0.0, nesterov=False, name="SGD")
于 2021-12-11T20:56:04.727 回答
0

如果改代码后问题没有解决。您必须升级 Keras 并以这种方式使用它

optimizer = SGD(lr=0.01, momentum=0.8, decay=0.0005, nesterov=True)
model.compile(optimizer=optimizer, loss='categorical_crossentropy', metrics=['accuracy']) 
于 2021-12-11T21:14:11.453 回答