PacktPublishing / Deep-Reinforcement-Learning-Hands-On

Hands-on Deep Reinforcement Learning, published by Packt
MIT License
2.83k stars 1.28k forks source link

Chapter03/03_atari_gan.py crashes #51

Closed jtiscione closed 5 years ago

jtiscione commented 5 years ago

Running 03_atari_gan.py with all dependencies properly installed dumps this to the screen. Traceback (most recent call last): File "03_atari_gan.py", line 9, in from tensorboardX import SummaryWriter File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboardX/init.py", line 4, in from .writer import FileWriter, SummaryWriter File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboardX/writer.py", line 24, in from .src import event_pb2 File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboardX/src/event_pb2.py", line 16, in from tensorboard.src import summary_pb2 as tensorboard_dot_src_dot_summarypb2 File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/init.py", line 4, in from .writer import FileWriter, SummaryWriter File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/writer.py", line 28, in from .summary import scalar, histogram, image, audio, text File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/summary/init.py", line 25, in from tensorboard.summary import v1 File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/summary/v1.py", line 24, in from tensorboard.plugins.audio import summary as _audio_summary File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/plugins/audio/summary.py", line 36, in from tensorboard.plugins.audio import metadata File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/plugins/audio/metadata.py", line 21, in from tensorboard.compat.proto import summary_pb2 File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/compat/proto/summary_pb2.py", line 15, in from tensorboard.compat.proto import tensor_pb2 as tensorboard_dot_compat_dot_proto_dot_tensor__pb2 File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/compat/proto/tensor_pb2.py", line 15, in from tensorboard.compat.proto import resource_handle_pb2 as tensorboard_dot_compat_dot_proto_dot_resourcehandlepb2 File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/tensorboard/compat/proto/resource_handle_pb2.py", line 22, in serialized_pb=_b('\n.tensorboard/compat/proto/resource_handle.proto\x12\x0btensorboard\"r\n\x13ResourceHandleProto\x12\x0e\n\x06\x64\x65vice\x18\x01 \x01(\t\x12\x11\n\tcontainer\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x11\n\thash_code\x18\x04 \x01(\x04\x12\x17\n\x0fmaybe_type_name\x18\x05 \x01(\tBn\n\x18org.tensorflow.frameworkB\x0eResourceHandleP\x01Z=github.com/tensorflow/tensorflow/tensorflow/go/core/framework\xf8\x01\x01\x62\x06proto3') File "/home/jason/anaconda3/envs/nn/lib/python3.7/site-packages/google/protobuf/descriptor.py", line 878, in new__ return _message.default_pool.AddSerializedFile(serialized_pb) TypeError: Couldn't build proto file into descriptor pool! Invalid proto descriptor for file "tensorboard/compat/proto/resource_handle.proto": tensorboard.ResourceHandleProto.device: "tensorboard.ResourceHandleProto.device" is already defined in file "tensorboard/src/resource_handle.proto". tensorboard.ResourceHandleProto.container: "tensorboard.ResourceHandleProto.container" is already defined in file "tensorboard/src/resource_handle.proto". tensorboard.ResourceHandleProto.name: "tensorboard.ResourceHandleProto.name" is already defined in file "tensorboard/src/resource_handle.proto". tensorboard.ResourceHandleProto.hash_code: "tensorboard.ResourceHandleProto.hash_code" is already defined in file "tensorboard/src/resource_handle.proto". tensorboard.ResourceHandleProto.maybe_type_name: "tensorboard.ResourceHandleProto.maybe_type_name" is already defined in file "tensorboard/src/resource_handle.proto". tensorboard.ResourceHandleProto: "tensorboard.ResourceHandleProto" is already defined in file "tensorboard/src/resource_handle.proto".

Martellacci commented 5 years ago

I have the same problem

colinwarn commented 5 years ago

Same problem here.

nishanth-shetty commented 5 years ago

Same problem.

Shmuma commented 5 years ago

Hi! Can anybody send the output of pip list? Can't reproduce this on my env

nishanth-shetty commented 5 years ago

Here's a screenshot of the pip list Screenshot (116)

Shmuma commented 5 years ago

You have so many unneded packages, which might conflict. My enivronment has only those and works fine:

Package             Version  
------------------- ---------
absl-py             0.7.1    
astor               0.8.0    
atari-py            0.1.6    
certifi             2019.6.16
chardet             3.0.4    
cycler              0.10.0   
future              0.17.1   
gast                0.2.2    
grpcio              1.21.1   
gym                 0.10.9   
h5py                2.9.0    
idna                2.8      
Keras-Applications  1.0.8    
Keras-Preprocessing 1.1.0    
kiwisolver          1.1.0    
Markdown            3.1.1    
matplotlib          3.0.2    
numpy               1.15.4   
opencv-python       3.4.3.18 
Pillow              6.0.0    
pip                 19.1.1   
protobuf            3.8.0    
ptan                0.3      
pybullet            2.3.6    
pyglet              1.3.2    
pyparsing           2.4.0    
python-dateutil     2.8.0    
requests            2.22.0   
scipy               1.1.0    
setuptools          41.0.1   
six                 1.12.0   
tensorboard         1.12.0   
tensorboard-pytorch 0.7.1    
tensorflow          1.12.0   
termcolor           1.1.0    
torch               0.4.1    
torchvision         0.2.1    
urllib3             1.25.3   
Werkzeug            0.15.4   
wheel               0.32.1  

I suggest to create new virtual env and setup only what is needed (by running pip install -r requirements.txt from repo root).

Another issue I noticed from stacktrace is python 3.7, which is too fresh for the repo. You should use python 3.6. In case of anaconda, this command should be used for env creation conda create -n env_name python=3.6