2020.4.1更新:
colab現在自帶tensorboard的魔術方法了,用這個命令就能展示tensorboard
%load_ext tensorboard
%tensorboard --logdir './log/train'# 加載一次后,如果要重新加載,就需要使用reload方法
%reload_ext tensorboard
%tensorboard --logdir './log/train'
一、為什么colab打不開tensorboard

!tensorboard --logdir=logs --host=127.0.0.1
以上命令為什么打不開tensorboard呢?這是因為tensorboard生成的“127.0.0.1:6006”網址的本地是谷歌主機,而不是我們自己的電腦,因此在我們電腦上打開這個網址或者“localhost:6006”當然顯示的是“無法訪問此網站”
二、如何在colab上打開tensorboard?
- 首先我們用keras訓練一個手寫數字識別的神經網絡
from tensorflow.keras.callbacks import TensorBoard
tbCallBack = TensorBoard(log_dir='./log', histogram_freq=1,write_graph=True,write_grads=True,batch_size=batch_size,write_images=True)model.fit(x_train, y_train,batch_size=batch_size,epochs=epochs,verbose=1,validation_data=(x_test, y_test),callbacks=[tbCallBack])
- 安裝ngrok
!wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
!unzip ngrok-stable-linux-amd64.zip
- run TensorBoard on Colab
在colab notebook中依次執行以下命令
LOG_DIR = './log'
get_ipython().system_raw('tensorboard --logdir {} --host 0.0.0.0 --port 6006 &'.format(LOG_DIR)
)
-------------------------------------------------------------------------------------------------
get_ipython().system_raw('./ngrok http 6006 &')
-------------------------------------------------------------------------------------------------
! curl -s http://localhost:4040/api/tunnels | python3 -c "import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"
- 打開鏈接查看效果
