强化学习笔记(3)--TF==2.8 keras==2.8 tf-agents==0.12.0 环境下官网教程勘误

引入kersa库方法错误

官网上引入方法

from tensorflow import keras
from tensorflow.keras import layers

不会报错,但是vscode上的代码会给报出黄色波浪线找不到
vscode报错提示为:Import “tensorflow.keras” can’t be resolved

解决办法:
在笔者运行的时候是不会出现任何报错的,而且也和官网上说的教程结果是一样的。问题应该是处在vscode中的Pylance上。如果想彻底解决问题的话,请使用下面的两条对上面进行替代

import tensorflow.python.keras as keras
from tensorflow.python.keras import layers

{注}: 这里有一个坑, 如果在系统中下载了keras的话在pip list中是可以找到一个keras的库的, 而且还可以直接import keras引用,但是这个keras库和tf.keras是不一样的,比如说你使用 keras.losses.MeanSquaredError就会报错,而使用tf.keras.losses.MeanSquaredError是不会报错的

使用tf_py_environment.TFPyEnvironment转换python环境为tf环境时报错

报错代码为:

env_name = 'CartPole-v0'
env = suite_gym.load(env_name)
train_py_env = suite_gym.load(env_name)
train_env = tf_py_environment.TFPyEnvironment(train_py_env) # 错误在此

报错为:

Exception ignored in: <function Pool.__del__ at 0x7f876f0023a0>
Traceback (most recent call last):
  File "/usr/lib/python3.8/multiprocessing/pool.py", line 268, in __del__
  File "/usr/lib/python3.8/multiprocessing/queues.py", line 362, in put
AttributeError: 'NoneType' object has no attribute 'dumps'

解决办法:原因tf-agent下载版本错误,最初下载的tf-agent是用

pip install tf-agents

要解决这个问题必须先卸载原来的版本使用下面的指令重新下载一遍

pip install tf-agents[reverb]

引入tf.keras.optimizer的问题

和第一个问题一样,当我在设法引入Adam优化器的时候官方给出的代码中没有代码自动补全,而且编辑器会报错。根据文档的引用方法应该是

from tensorflow.keras import optimizers
opt=optimizers.Adam(learning_rate=0.1)

问题解决:

from tensorflow.python.keras import optimizer_v1
opt=optimizer_v1.Adam(lr=0.1)

注意这些optimizer的参数需要自己在官网API说明中一个一个找

(待续)

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值