visdom
if self.display_id > 0: # connect to a visdom server given <display_port> and <display_server> import visdom self.ncols = opt.display_ncols self.vis = visdom.Visdom(server=opt.display_server, port=opt.display_port, env=opt.display_env) if not self.vis.check_connection(): self.create_visdom_connections()
display_env: main display_freq: 400 display_id: 1 display_ncols: 4 display_port: 8097 display_server: http://localhost display_winsize: 256
visdomを、Google colabで動かす方法
これで、動いてるのかな?
! npm install -g localtunnel !python3 -m pip install visdom !python3 -m visdom.server -port 6006 >> visdomlog.txt 2>&1 & !lt --port 6006 >> url.txt 2>&1 & #get_ipython().system_raw('/usr/local/bin/python3 -m pip install visdom') #get_ipython().system_raw('/usr/local/bin/python3 -m visdom.server -port 6006 >> visdomlog.txt 2>&1 &') #get_ipython().system_raw('lt --port 6006 >> url.txt 2>&1 &') import time time.sleep(5) ! cat url.txt import visdom time.sleep(5) vis = visdom.Visdom(port='6006') print(vis) time.sleep(3) vis.text('testing') ! cat visdomlog.txt
How to run Visdom on colab? · Issue #419 · facebookresearch/visdom · GitHub
ログは、エラーが出てない。
/tools/node/bin/lt -> /tools/node/lib/node_modules/localtunnel/bin/client + localtunnel@1.9.1 updated 1 package in 0.832s Requirement already satisfied: visdom in /usr/local/lib/python3.6/dist-packages (0.1.8.8) Requirement already satisfied: tornado in /usr/local/lib/python3.6/dist-packages (from visdom) (4.5.3) Requirement already satisfied: torchfile in /usr/local/lib/python3.6/dist-packages (from visdom) (0.1.0) Requirement already satisfied: pyzmq in /usr/local/lib/python3.6/dist-packages (from visdom) (17.0.0) Requirement already satisfied: scipy in /usr/local/lib/python3.6/dist-packages (from visdom) (1.1.0) Requirement already satisfied: six in /usr/local/lib/python3.6/dist-packages (from visdom) (1.11.0) Requirement already satisfied: pillow in /usr/local/lib/python3.6/dist-packages (from visdom) (4.0.0) Requirement already satisfied: websocket-client in /usr/local/lib/python3.6/dist-packages (from visdom) (0.54.0) Requirement already satisfied: numpy>=1.8 in /usr/local/lib/python3.6/dist-packages (from visdom) (1.14.6) Requirement already satisfied: requests in /usr/local/lib/python3.6/dist-packages (from visdom) (2.18.4) Requirement already satisfied: olefile in /usr/local/lib/python3.6/dist-packages (from pillow->visdom) (0.46) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.6/dist-packages (from requests->visdom) (2018.11.29) Requirement already satisfied: idna<2.7,>=2.5 in /usr/local/lib/python3.6/dist-packages (from requests->visdom) (2.6) Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.6/dist-packages (from requests->visdom) (3.0.4) Requirement already satisfied: urllib3<1.23,>=1.21.1 in /usr/local/lib/python3.6/dist-packages (from requests->visdom) (1.22) your url is: https://odd-panther-75.localtunnel.me your url is: https://big-grasshopper-66.localtunnel.me your url is: https://stupid-insect-7.localtunnel.me WARNING:root:Setting up a new session... <visdom.Visdom object at 0x7f70c54be240> /usr/bin/python2: No module named visdom /bin/bash: /usr/local/bin/python3: No such file or directory INFO:root:Application Started INFO:tornado.access:200 POST /env/main (::1) 1.27ms INFO:tornado.access:101 GET /vis_socket (::1) 0.85ms INFO:root:Opened visdom socket from ip: ::1 INFO:tornado.access:200 POST /events (::1) 0.89ms
ポートを8097に変えたところ、以下のエラーがでる。
ERROR:visdom:[Errno 111] Connection refused
最終的に、以下を実行したあと、train.pyを動かせばいいと思う。
サーバーは、バックグラウンドで動いているので
"ps -efl"で確認した。
! npm install -g localtunnel !python3 -m pip install visdom !python3 -m visdom.server -port 8076 >> visdomlog.txt 2>&1 & <==サーバーを動かす !lt --port 8076 >> url.txt 2>&1 & <==ポートを中継する import time time.sleep(5) ! cat url.txt <==開くべきURL
TypeError: initial_value must be str or None, not bytes
Traceback (most recent call last): File "train.py", line 70, in <module> tf.app.run() File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/platform/app.py", line 125, in run _sys.exit(main(argv)) File "train.py", line 66, in main flip_labels=args.flip_labels) File "/content/zi2zi/model/unet.py", line 539, in train for bid, batch in enumerate(train_batch_iter): File "/content/zi2zi/model/dataset.py", line 68, in batch_iter processed = [process(e[1]) for e in batch] File "/content/zi2zi/model/dataset.py", line 68, in <listcomp> processed = [process(e[1]) for e in batch] File "/content/zi2zi/model/dataset.py", line 40, in process img = bytes_to_file(img) File "/content/zi2zi/model/utils.py", line 27, in bytes_to_file return StringIO(bytes_img) TypeError: initial_value must be str or None, not bytes