筆者最近安裝tensorflow遇到了各種坑,花了不少時間解決,這裏總結一下,紀念被他折騰的那段時間⊙﹏⊙
安裝環境
該篇文章是深度學習GPU工作站配置的系列文章之一,在上兩篇文章中,筆者介紹了anaconda,jupyter,cuda,cudnn等各種基本運行條件,讀者可以看看前面兩篇文章
深度學習圖形工作站環境安裝與配置(1)CUDA和cuDNN的安裝
深度學習圖形工作站環境安裝與配置(2)anaconda的安裝與配置和jupyterlab的部署,開機自啓動
我們的環境主要是基於Ubuntu 18.04 ,Anaconda 3等環境進行的
錯誤一:
找不到庫,各種千奇百怪的錯誤
這個提示找不到庫的錯誤主要是因爲cuda和cudnn的版本和tensorflow所支持的版本不符,不能夠兼容產生的錯誤,讀者可以在tensorflow的官網找到相關的安裝環境要求
cuda cudnn tensorflow的版本必須相對應,不能過高或過低,爲此tensorflow給出了適合的編譯環境
安裝版本要求
你可以參照筆者的第一篇文章進行安裝cuda等軟件操作,或者升級到適應的版本
錯誤二:
使用
nvidia-smi
查看GPU使用情況
使用
top
查看CPU使用情況
發現雖然顯存佔了,但是GPU使用率幾乎爲0
這個錯誤是由於tensorflow版本>=tensorflow-gpu的版本
優先使用第一個CPU版
你可以使用
pip list
來檢查版本以確定是不是這個錯誤,卸載掉cpu版或者將gpu版升級,cpu版降級都可以修好
直接卸載tensorflow cpu版比較方便,關於升降級見下
pip uninstall tensorflow
再此查看pip包列表,如果卸載了就ok了
錯誤三:
提示tf沒有xx函數,程序明明在另一臺電腦可以運行,但在這就不行了
這實際上是因爲tf版本過高或過低,你需要安裝合適的版本
首先把安裝的tensorflow都卸載乾淨
pip uninstall tensorflow
pip uninstall tensorflow-gpu
安裝你原來使用的指定版本
如果只有cpu的話
pip install tensorflow==版本號
如果需要用gpu版,不要安裝cpu版了,執行
pip install tensorflow-gpu==版本號
注意cuda,cudnn,tf等的兼容問題,可以看看錯誤一
終極大招
可能讀者會問,我是小白怎麼辦,搞不清各種關係。或者實驗室又有老師用的tf版本不同,這個時候你可以使用docker安裝tf鏡像,相當於一個虛擬機,詳見:
深度學習圖形工作站環境安裝與配置(5)Tensorflow兼容性終極解決方案,用Docker安裝多版本Tensorflow,Docker19.03以後版本安裝Tensorflow-gpu