运行 Hierarchical Reinforcement Learning for Course Recommendation in MOOCs代码时报错AttributeError: ‘Session’ object has no attribute ‘_session’
Traceback (most recent call last):
File "D:/semester3/user profile/HRL-master/Train.py", line 235, in <module>
with tf.Session(config=config) as sess:
File "D:\Program\anaconda3\envs\py36\lib\site-packages\tensorflow\python\client\session.py", line 1494, in __init__
super(Session, self).__init__(target, graph, config=config)
File "D:\Program\anaconda3\envs\py36\lib\site-packages\tensorflow\python\client\session.py", line 615, in __init__
'config must be a tf.ConfigProto, but got %s' % type(config))
TypeError: config must be a tf.ConfigProto, but got <class 'google.protobuf.pyext.cpp_message.GeneratedProtocolMessageType'>
Exception ignored in: <bound method BaseSession.__del__ of <tensorflow.python.client.session.Session object at 0x000001922CF83E48>>
Traceback (most recent call last):
File "D:\Program\anaconda3\envs\py36\lib\site-packages\tensorflow\python\client\session.py", line 684, in __del__
if self._session is not None:
AttributeError: 'Session' object has no attribute '_session'
查了一天bug,以为是tensorflow版本有问题,卸载又安装了好几次tensorflow完全没有用。
最后男朋友帮忙查发现
config = tf.ConfigProto
改成
config = tf.ConfigProto()
就好了
另外插一句,tensorflow2运行tensorflow1写的程序只需要在import时
import tensorflow as tf
改成
import tensorflow.compat.v1 as tf
程序员真是太不好当了,一壶茶,一个人,一个bug改一天