save - 在 R_ py_call_impl(callable, dots$args, dots$keywords) 中导入模型:AttributeError: 'NoneType' object has no attribute 'get'
问题描述
我使用 Keras 包在 R 中生成了一个人工神经网络(架构 10x30x1,激活函数 = ReLU)。我想保存这个模型,以便我可以在任何其他时间导入它而无需训练它。我用来保存它的代码如下:
模型 %>% save_model_tf("模型")
文件已生成并出现在目录中。
list.files("model") [1] "assets" "saved_model.pb" "variables"
但是,在导入它时,使用以下代码:
new_model <- load_model_tf(“模型”)
它给了我这个错误:
py_call_impl (callable, dots$args, dots$keywords) 中的错误:AttributeError: 'NoneType' 对象没有属性 'get'
我不知道你能否给我一个线索,告诉我我做错了什么,或者我是否错过了中间的一步。
谢谢!
解决方案
今天刚刚遇到这个错误,我找到了一个解决方案。
您没有提供示例代码,但从语法来看,它改编自Rstudio tensorflow 教程。
我在 Github 上找到了这个帖子,很多复制粘贴该代码的人在加载模型时遇到了类似的问题。
https://github.com/rstudio/tfdatasets/issues/53
事实证明,有问题的项目是normalizer_fn
in spec
。摆脱它在我的系统上工作。
代替:
spec <- feature_spec(train_df, label ~ . ) %>%
step_numeric_column(all_numeric(), normalizer_fn = scaler_standard()) %>%
fit()
和:
spec <- feature_spec(train_df, label ~ . ) %>%
step_numeric_column(all_numeric()) %>%
fit()
至于为什么?不知道。我今天真的开始使用 tensorflow。
推荐阅读
- azure - 无法查询可用的提供程序包
- python - python中sympy中微分的数值
- django - Django 设置的 Amazon S3 存储桶配置问题。
AccessDenied
- nginx - 为 Nginx 执行这种重写和代理传递的正确方法是什么?
- c - 在不更改新创建的数组的值时,我是否遇到了需求分页?
- sqlalchemy - 在 fastapi sqlalchemy 会话中,列表追加不起作用
- python - Flask 中的@app.route 和@app.get 有什么区别?
- python - Django 在 url 中添加了一个额外的“/”?
- php - Laravel Passport - 无法获得令牌字符串作为响应?
- javascript - 在 Reactjs 中提交时防止表单刷新