TensorFlow安裝常見問題和解決辦法


TensorFlow安裝常見問題和解決辦法

https://blog.csdn.net/qq_44725872/article/details/107558250

https://blog.csdn.net/MSJ_nb/article/details/117462928


剛好最近在看一些關於深度學習的書,然后就想着安裝tensorflow跑跑代碼加深一下印象,然后就遇見了很多問題,想着不能就這么算了就查找csdn的一些大佬們的博客,幸好都有解決方法,經歷了幾個小時終於是弄好了,下面是我遇到的一些問題和解決方法。

問題一
安裝python庫首選用pip,但總會出現下載超時的問題,這里我用了豆瓣鏡像來下載,會快很多,命令行運行代碼。

pip install -i http://pypi.douban.com/simple --trusted-host pypi.douban.com tensorflow

問題二

下載安裝時會有一些問題,例如:

 

 

 

這個解決,我參考了“飄洋過海95”的博客,截圖也來自於他的博客。
博客鏈接安裝Tensorflow問題,ERROR: Cannot uninstall ‘wrapt’. It is a distutils installed project and thus…
問題1解決辦法:

pip install -U --ignore-installed wrapt enum34 simplejson netaddr

 

問題2解決辦法:

pip install --upgrade setuptools
完成上面兩步后,需要重新下載tensorflow,參考問題一

但是我遇到的要更復雜一些。輸入方案一的
pip install -U --ignore-installed wrapt enum34 simplejson netaddr

后仍然報錯:

 

 

根據 Building wheel for wrapt (setup.py) ... error 報錯,查找到的解決方法:

https://blog.csdn.net/weixin_43838785/article/details/103441963(此為方案二)

下載離線安裝包 :wrapt-1.12.1-cp37-cp37m-win_amd64.whl

再執行命令

H:\tmp>pip install wrapt-1.12.1-cp37-cp37m-win_amd64.whl

又返回報錯:

 

 這樣就陷入了兩個方案的死循環

方案1:

使用--ignore-installed,
解決了方案2的
--install ,報錯“error cannot uninstall 'wrapt'  ” 的問題

   但報錯:Building wheel for wrapt (setup.py) ... error——

方案2:使用離線安裝包,

    解決了方案1的

    “Building wheel for wrapt (setup.py) ... error”的問題

    但報錯:error cannot uninstall 'wrapt' ,

所以改進為

(base) H:\tmp>pip install -U --ignore-installed wrapt-1.12.1-cp37-cp37m-win_amd64.whl

即可!!再安裝

tensorflow-gpu

,成功

 

pip install --upgrade tensorflow-gpu

 

問題B2:module ‘keras.utils‘ has no attribute ‘to_categorical‘ 解決辦法

https://blog.csdn.net/MSJ_nb/article/details/117462928

 from keras import utils

改為

from keras.utils import np_utils
y_train = np_utils.to_categorical(y_train, num_classes)

版本:keras 2.4.3 tensorflow 2.5.0

 

問題B3:【TensorFlow2.0】This is probably because cuDNN failed to initialize.錯誤修正和cuDNN版本更新

https://blog.csdn.net/licui8068/article/details/104008618

今天在環境Ubuntu16.04+TensorFlow2.0+CUDA10.1+cuDNN7.5.0中訓練模型,本來是使用CPU計算的,但是后來數據量擴大后CPU已經不能滿足需求了,於是便安裝了TensorFlow2.0-gpu進行訓練。

錯誤
本來已經挺簡單的,因為之前在TensorFlow-gpu1.14+CUDA10.1+cuDNN7.5.0的環境下進行過訓練,但是沒想到會出現錯誤

Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.

看錯誤提示和查詢,發現這個錯誤有可能是我代碼的問題,也有可能是因為我的cuDNN版本不適配。一開始我以為是第一點,看了其他人的博客在代碼前面加上一些配置但不管用,於是只能采用第二個方法。

更新cuDNN過程
首先先使用命令 nvcc -V (注意V是大寫)確定自己的CUDA版本,然后進入cuDNN下載頁面

沒有賬號的話應注冊NVIDIA賬號,登錄后會看到以下頁面

 

 

 

根據自己的CUDA版本下載對應的cuDNN,有兩種安裝方式

 

 

 

上面橙色框線相當於下載一個裝載所有文件的壓縮包,具體需要你自己拷貝,而紅色框線則是可以直接安裝的Deb文件,對於ubuntu來說非常方便,推薦下面一種。

更新cuDNN分兩步,首先需要先卸載之前的版本通過dpkg卸載之前的libcudnn,卸載順序隨意

sudo dpkg -r libcudnn7-dev
sudo dpkg -r libcudnn7
第二步,安裝

sudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.1_amd64.deb
sudo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.1_amd64.deb
注意上面兩步的安裝順序不能更改,因為libcudnn7-dev_7.6.5.32-1+cuda10.1_amd64.deb的安裝依賴於libcudnn7_7.6.5.32-1+cuda10.1_amd64.deb

第三步,完成

接下來就可以開始愉快地訓練了~

 

 


————————————————
版權聲明:本文為CSDN博主「きりり」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/licui8068/article/details/104008618


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM