强化学习代码运行出现问题:AttributeError: module ‘tensorflow’ has no attribute 'placeholder’与AttributeError: module ‘tensorflow’ has no attribute ‘set_random_seed’
最近在GitHub上获取的强化学习源码很多都是在TensorFlow1.0基础上做的,之前在安装包的时候装的Python3.8 TensorFlow 2.0。出现上述问题的根本在于版本的改动导致不兼容,其中有两个解决方法。
改import,利用兼容性的导入
import tensorflow as tf
改为=>
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
改函数及参数,与新版本对应上
tf.truncated_normal()
tf.placeholder()
tf.train.AdamOptimizer(alpha).minimize(self.cost)
tf.set_random_seed(self._seed)
改为=>
tf.random.truncated_normal()
tf.compat.v1.placeholder ()
tf.optimizers.Adam(alpha).minimize(self.cost)
tf.random.set_seed()