上一期我們介紹了CUDA下載安裝以及其總結,這一期教大家如何在Anaconda中使用CUDA來進行加速、神經網絡依賴cuDNN的下載安裝,以及下載和安裝Pytorch-GPU安裝包的三種方式(conda、pip、輪子)。
還未下載安裝 CUDA 和 Anaconda,請看往期文章,是全套系列的總結,包你不用開很多網頁,然而只為了下載安裝一個工具而已。。。。
Anaconda中使用
在CUDA安裝完之后,如果想要學習深度學習中的神經網絡的話,則額外下載安裝cuDNN,可幫助我們加快神經網絡的運算,cuDNN是一個常見的神經網絡層加速庫文件,能夠很大程度把加載到顯卡上的網絡層數據進行優化計算,而CUDA就像一個很粗重的加速庫,其主要依靠的是顯卡。cuDNN需要在有CUDA的基礎上進行,可以在CUDA基礎上加速2倍以上。
下載安裝之前,這里再簡要介紹幾個關鍵概念
NVIDIA的顯卡驅動器與CUDA
NVIDIA的顯卡驅動程序和CUDA完全是兩個不同的概念,CUDA是NVIDIA推出的用於自家GPU的並行計算框架,也就是說CUDA只能在NVIDIA的GPU上運行,而且只有當要解決的計算問題是可以大量並行計算的時候才能發揮CUDA的作用。
NVIDIA顯卡驅動和CUDA工具包本身是不具有捆綁關系的,也不是一一對應的關系,CUDA本質上只是一個工具包而已,所以我可以在同一個設備上安裝很多個不同版本的CUDA工具包,一般情況下,我只需要安裝最新版本的顯卡驅動,然后根據自己的選擇選擇不同CUDA工具包就可以了。
CUDA和cuDNN關系
CUDA看作是一個工作台,上面配有很多工具,如錘子、螺絲刀等。cuDNN是基於CUDA的深度學習GPU加速庫,有了它才能在GPU上完成深度學習的計算。它就相當於工作的工具,比如它就是個扳手。但是CUDA這個工作台買來的時候,並沒有送扳手。想要在CUDA上運行深度神經網絡,就要安裝cuDNN,就像你想要擰個螺帽就要把扳手買回來。這樣才能使GPU進行深度神經網絡的工作,工作速度相較CPU快很多。
注意:cuDNN是一個SDK,是一個專門用於神經網絡的加速包,它跟我們的CUDA沒有一一對應的關系,即每一個版本的CUDA可能有好幾個版本的cuDNN與之對應,但一般有一個最新版本的cuDNN版本與CUDA對應更好。
CuDNN支持的算法
- 卷積操作、相關操作的前向和后向過程
- pooling的前向后向過程
- softmax的前向后向過程
- 激活函數的前向后向過程,如(Relu、Sigmoid、Tanh )等
cuDNN的下載與安裝
第一步:官網下載cuDNN的安裝包,地址:https://developer.nvidia.com/cudnn,這里需要你注冊一個賬號,按照要求注冊完就可以下載安裝包了,這里我的CUDA安裝的是10.2版本的,我就安裝與我CUDA對應的cuDNN了。

第二步:下載好安裝包后,利用解壓軟件解壓出來

第三步:復制粘貼 bin、include、lib三個文件到CUDA的安裝目錄進行覆蓋替換,

cuDNN到此安裝成功!
下面我介紹Pytorch-GPU的下載安裝的三種方式
- Conda安裝(官網命令下載速度慢,設置鏡像源后可加速)
- Pip安裝(設置鏡像源,設置鏡像源后可加速)
- 輪子安裝(官網下載輪子,輪子安裝)
第一步:打開Anaconda Navigator中新建一個虛擬環境,選擇Enviroments->Creat->點擊,自己設置環境名(這里我設為py35)和Python版本,也可以用命令創建環境

第二步:創建完后,點擊py35旁邊的綠色三角形箭頭,選擇Open Terminal,在命令行中打開,我們就可以使用命令的方式在該虛擬環境py35中安裝Pytorch-GPU了


第一種:Conda安裝
第一步:首先我們來到Pytorch-GPU的官網,選擇CUDA的安裝平台以及版本、Conda或者Pip安裝,在下方粘貼復制安裝命令即可,但是這里下載速度極慢,很容易出現CondaHTTPError,因為默認的鏡像是官方的,由於官網的鏡像在境外,訪問太慢或者不能訪問,為了能夠加快訪問的速度,我們更改Conda下載安裝包的鏡像源

第二步:這里我們首先設置一下Conda下載安裝包的鏡像源,輸入以下命令:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes

第三步:添加完后,在用戶目錄下,如:C:\Users\11703 ,找到 .condarc 文件,使用記事本打開,刪除里面的 defaults,這樣能快點,或者在其前面加#號注釋掉。

注意:用conda安裝包的標准語法格式為:conda install -c <channel><packagename>,而pytorch官網中conda給的命令行是上圖那樣的,有-c選項,就說明已經指定了官方下載源,所以自己配置的鏡像源不管用, 所以應該把-c pytorch去掉,就可以從鏡像源下載文件了。

輸入y,即正式下載和安裝

友情提示:如果你想再次換源安裝,需要使用以下命令conda config --remove-key channels恢復默認源的命令,否則會報錯,然后再次配置你想要的鏡像源。
第二種:Pip安裝

pip添加源安裝,等待一段時間安裝完成即可,安裝命令:
pip install torch===1.5.0 torchvision===0.6.0 -f https://download.pytorch.org/whl/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple

第三種:輪子安裝
pytorch輪子文件下載地址:https://download.pytorch.org/whl/torch_stable.html,分別下載安裝torch和torchvision安裝包,這里請注意自己安裝的CUDA、以及torch、torchvision版本匹配,最后創建的Python環境請和下載的一致。如下圖舉例

下完輪子文件之后,命令窗口到相應虛擬環境以及輪子安裝目錄下,命令安裝輪子,我的輪子文件放在了D盤,

這里注意: 安裝Pytorch需要依賴包numpy、future,可以提前安裝好,安裝torch檢測到沒有numpy時,會自動幫我們下載安裝依賴包numpy、future,不用擔心,但是過程緩慢,建議提前安裝后numpy、future。


下載安裝torch完成后,我們開始安裝torchvision,torchvision需要安裝依賴包pillow,這里教大家提前安裝的方法,使用如下命令,如果出現問題加上信任選項 trusted host,pip install-i https://pypi.tuna.tsinghua.edu.cn/simple--trusted-hostpypi.tuna.tsinghua.edu.cn pillow

安裝torchvision

最后我們檢測Pytorch-GPU是否安裝完成
先使用命令pip list查看已安裝的包列表,再輸入命令python,然后 torch.cuda.is_available(),輸出True,即安裝成功

本期教程至此就結束了,覺得不錯的點個贊吧,整理不易,希望大家支持,想要pytorch輪子安裝包,關注我即可獲取
更多有關python、深度和計算機編程的精彩內容,可以關注我的微信公眾號:碼農的后花園