問題描述
最近使用PyTorch訓練神經網絡,想要可視化一下訓練中的loss曲線。使用的電腦是Windows10系統,瀏覽器爲谷歌Chrome瀏覽器。安裝好tensorboard包後按照官網教程來敲代碼,然後執行。結果卻發現谷歌瀏覽器只有窗口頂部標題欄顯示“TensorBoard”,但是窗口中卻沒有內容。截圖如下:
解決方案探索
於是我搜索了大量的博客、論壇,確實有很多種解決方案:
(1)有的說是路徑問題的,於是我用各種路徑形式都試了一遍,各種相對路徑、絕對路徑,各種斜槓形式都試過了,結果就是不顯示。
(2)有的說是換瀏覽器,於是我使用IE、Edge、Chrome、FireFox等都試過了,各種兼容模式也都打開了,同樣不行,仍然不顯示內容。
(3)還有說是更改地址。因爲默認的網絡地址是“localhost:6006”,有的建議改爲“127.0.0.1::6006”,有的建議使用通過--port參數設置其他端口如--port=8080等。甚至還有一個朋友通過自己用CMD命令行調試,發現自己機器實際運行這個python程序的不是127.0.0.1,而是某一個別的地址,更改成此地址後顯示成功。但是採用上述方法,我的仍然不顯示內容。
於是不禁感嘆windows平臺怎麼這麼多坑,我換到自己的Mac筆記本上,按照官網教程直接一遍走通。到這裏,問題算是解決了一半。爲什麼呢?因爲在Mac本上沒有問題,證明代碼是沒有問題的,問題肯定是Windows環境導致的。既然這多麼時間花了,問題一定要解決!
接下來又改變搜索關鍵詞,無意中發現了一個論壇上說可能是瀏覽器腳本沒有執行,截圖如下:
於是按照這個朋友的說法,是tensorboard版本問題導致的。我檢測了一下我的版本,是tensorboard 2.1.1,和截圖中的2.1.0很接近,猜想我遇到的問題應該和這個朋友是差不多的。所以我按照他的建議,卸載當前的tensorboard,安裝較老的2.0.0版本的tensorboard。然後再執行tensorboard,果然奏效!
總結
如果你也遇到Windows上Tensorboard顯示異常的問題,可以嘗試我之前列出的一些方法,判斷自己的情況是屬於哪一類問題導致的。如果所有方案都試過了還是不行,那也可能是版本問題導致的。
慢慢踩坑前行吧,坑踩得多了,連在一起也就成了平坦的大道。