python - Keras 中的“未知 RProp 优化器”
问题描述
我正在尝试使用此问题和此问题中详述的 RProp 优化器来训练模型。
我从这个 Github 存储库下载了rprop.py
脚本并将其添加到我的 Keras/tf 代码库中,位于.C:\mini\envs\aiml3\Lib\site-packages\tensorflow_core\python\keras\optimizer_v2
在我的 R 脚本(在 RStudio 中运行)中,我运行以下命令来创建我的模型:
model <- keras_model_sequential() %>%
layer_dense(units = 2, activation = "sigmoid", input_shape = c(2)) %>% #logistic, input
layer_dense(units = 1, activation = "sigmoid") #output
model %>% compile(
optimizer = "rprop",
loss = "binary_crossentropy",
metrics = c("accuracy")
)
但我收到以下回溯的错误:
Error in py_call_impl(callable, dots$args, dots$keywords) :
ValueError: Unknown optimizer: rprop
Detailed traceback:
File "C:\mini\envs\aiml3\lib\site-packages\tensorflow_core\python\training\tracking\base.py", line 457, in _method_wrapper
result = method(self, *args, **kwargs)
File "C:\mini\envs\aiml3\lib\site-packages\tensorflow_core\python\keras\engine\training.py", line 251, in compile
self._set_optimizer(optimizer)
File "C:\mini\envs\aiml3\lib\site-packages\tensorflow_core\python\keras\engine\training.py", line 1454, in _set_optimizer
self.optimizer = optimizers.get(optimizer)
File "C:\mini\envs\aiml3\lib\site-packages\tensorflow_core\python\keras\optimizers.py", line 848, in get
return deserialize(config)
File "C:\mini\envs\aiml3\lib\site-packages\tensorflow_core\python\keras\optimizers.py", line 817, in deserialize
printable_module_name='optimizer')
File "C:\mini\envs\aiml3\lib\site-packages\tensorflow_core\python\keras\utils\generic_utils.py", line 180, in deserialize_keras_object
config,
看起来我的脚本无法识别优化器。我不确定如何在我的模型中实例化它。
解决方案
基本上问题在于 Keras 中没有“rprop”优化器。您可以在此处找到可用优化器的列表:https ://keras.io/api/optimizers/
作为具体的解决方法,您可以改用 rmsprop。查看文档以获取使用示例。
推荐阅读
- excel - 如何将单个单元格 nr 写入多个单元格但设置结束 nr 的位置。在excel中
- sumologic - SumoLogic — 从日志中的“状态”json 消息中绘制数据
- typescript - 从现有类型添加属性到类型
- google-cloud-platform - 如何通过控制台过滤具有特定标签值的 GCP 数据目录条目?
- sql - Sqlite:多次内连接两个表
- graphql - 在 apollo graphQl 服务器中获取标题/上下文
- reactjs - 如何在外部存储库中使用顺风?类不工作
- c - 如何摆脱这个 Valgrind 警告并使用 argv[]?
- powershell - 如果 powershell 中的条件有什么问题?
- apache-spark - 从 azure blob 存储中读取数据,无需在 spark scala 中使用 Sas 令牌和主密钥