尝试在Google Collab中运行Deep Q网络时出现错误“ NameError:名称'base'未定义”

时间:2020-03-13 01:53:38

标签: python python-3.x tensorflow2.0

有人知道如何解决此问题吗?我正在使用Google Collab尝试运行我的代码,但似乎无法解决此问题。 注意:我在Pycharm中有一个Environment设置,其中没有出现此问题,并且代码运行(由于经过严格的培训,非常缓慢)。 当前在Tensorflow 2.0和Python 3.7上运行

    NameError                                 Traceback (most recent call last)
<ipython-input-5-14174aa69df8> in <module>()
    666 
    667     # Find Initial State
--> 668     cur_state = env.reset()
    669     dqn_agent = DQN(env, cur_state.shape)
    670     dqn_agent.save_model('models/deepq.h5')

4 frames
<ipython-input-5-14174aa69df8> in reset(self)
    303         self.car = Car(self.world, *self.track[0][1:4])
    304 
--> 305         return self.step(None)[0]
    306 
    307     def step(self, action):

<ipython-input-5-14174aa69df8> in step(self, action)
    319         self.t += 1.0 / FPS
    320 
--> 321         self.state = self.render("state_pixels")
    322 
    323         step_reward = 0

<ipython-input-5-14174aa69df8> in render(self, mode)
    340         assert mode in ['human', 'state_pixels', 'rgb_array']
    341         if self.viewer is None:
--> 342             from gym.envs.classic_control import rendering
    343             self.viewer = rendering.Viewer(WINDOW_W, WINDOW_H)
    344             self.score_label = pyglet.text.Label('0000', font_size=36,

/usr/local/lib/python3.6/dist-packages/gym/envs/classic_control/rendering.py in <module>()
     25 
     26 try:
---> 27     from pyglet.gl import *
     28 except ImportError as e:
     29     raise ImportError('''

/usr/local/lib/python3.6/dist-packages/pyglet/gl/__init__.py in <module>()
    223 elif compat_platform == 'darwin':
    224     from .cocoa import CocoaConfig as Config
--> 225 del base  # noqa: F821
    226 
    227 # XXX remove

NameError: name 'base' is not defined

链接到代码-https://github.com/eoinmca/Final_Year_Project/blob/master/google_collab_version.py

如果有人尝试重现此错误,则需要确保collab正在运行tf2而不是tf1

设置协作的先决条件

!pip install box2d-py
!pip install gym[Box_2D]

print(tf.__version__)
# Run next lines if not on tf2
!pip uninstall tensorflow
!pip install tensorflow==2.0.0

0 个答案:

没有答案