在各個平臺系統中安裝Pytorch
本文系轉載,出處:https://blog.csdn.net/sunqiande88/article/details/80085569。
PyTorch簡介
在2017年1月18日,facebook
下的Torch7
團隊宣佈PyTorch
開源後就引來了劇烈的反響。PyTorch
是 Torch
在 Python
上的衍生版本。Torch
是一個使用 Lua
語言的神經網路庫, Torch
很好用, 但是 Lua
流行度不夠, 所以facebook
開發團隊將 Lua
的 Torch
Python
上,推出了PyTorch
。
PyTorch
是一個Python
優先的深度學習框架,是一個和tensorflow,Caffe,MXnet
一樣,非常底層的框架。先說下PyTorch
相比於Tensorflow
的三大優勢:
一.Python優先支援
PyTorch主推的特性之一,就是支援Python(官方的提法:puts Python first
)。因為直接構建自 Python C API,PyTorch
從細粒度上直接支援python的訪問。相比於原生Python
實現,引入的新概念很少,這不僅降低了 Python
Python
實現一致。事實上,開發者可以直接用原生 Python
程式碼擴充套件 PyTorch
的 operation
。
而Tensorflow
總有一種用 Python
呼叫 C++
寫的第三方動態連結庫的感覺;寫模型需要更多程式碼,無法貫徹 Python
的簡約風格;而且寫新的 operation
必須用 C++
開發。
二.動態圖的良好支援
Tensorflow
執行必須提前建好靜態計算圖,然後通過feed
run
重複執行建好的圖。但是Pytorch
卻不需要這麼麻煩:PyTorch
的程式可以在執行時動態構建/調整計算圖。相對來說,pytorch具有更好的靈活性。這得益於PyTorch
直接基於 Python C API
構建的 Python
介面。
TensorFlow
飽受詬病的痛點就是隻支援靜態圖模型。也就是說,在處理資料前必須預先定義好一個完整的模型。如果資料非常規整,那還好。但實際工程和研究專案中的資料,難免有一些邊角的情況。很多專案,其實需要大量實驗才能選擇正確的圖模型。這就很痛苦了。因此,很多專案轉而採用了PyTorch
等支援動態圖模型的框架,以便在執行程式的時候動態修正模型。
不過在2017年10月31日萬聖節這天,Google
釋出了TensorFlow Eager Execution
(貪婪執行),為TensorFlow
添加了指令式程式設計的介面。啟用貪婪執行後,TensorFlow
操作會立刻執行,不用通過Session.run()
執行一個預先定義的圖。相信在不久的TensorFlow1
版本,谷歌會正式為TensorFlow
加入動態圖的支援!
三.易於Debug
Pytorch在執行時可以生成動態圖,開發者就可以在堆疊跟蹤中看到哪一行程式碼導致了錯誤。你甚至可以在偵錯程式中停掉直譯器並看看某個層會產生什麼。
PyTorch的官方Windows支援
2018年4月25日,PyTorch
官方釋出 0.4.0 版本,該版本的PyTorch
有多項重大更新,其中最重要的改進是支援 Windows
系統。Windows
使用者能直接通過conda
、pip
和原始碼編譯三種方式來安裝Pytorch,不過需要強調Windows
下的Pytorch
僅支援Python3.5
和Python3.6
,不支援其他的Python3
版本,也不支援Python2
。我們在官網就能看到相應的安裝方式:
方法一:pip安裝
Python3.6+pip安裝cpu版本
pip install http://download.pytorch.org/whl/cpu/torch-0.4.0-cp36-cp36m-win_amd64.whl
Python3.5+pip安裝cpu版本
pip install http://download.pytorch.org/whl/cpu/torch-0.4.0-cp35-cp35m-win_amd64.whl
Python3.6+pip安裝gpu版本
目前gpu
版本支援cuda8.0
,cuda9.0
和cuda9.1
,請選擇對應的版本下載安裝,不要同時執行下面三個命令!
pip install http://download.pytorch.org/whl/cu80/torch-0.4.0-cp36-cp36m-win_amd64.whl pip install http://download.pytorch.org/whl/cu90/torch-0.4.0-cp36-cp36m-win_amd64.whl pip install http://download.pytorch.org/whl/cu91/torch-0.4.0-cp36-cp36m-win_amd64.whl
Python3.5+pip安裝gpu版本
目前gpu
版本支援cuda8.0
,cuda9.0
和cuda9.1
,請選擇對應的版本下載安裝,不要同時執行下面三個命令!
pip install http://download.pytorch.org/whl/cu80/torch-0.4.0-cp35-cp35m-win_amd64.whl pip install http://download.pytorch.org/whl/cu90/torch-0.4.0-cp35-cp35m-win_amd64.whl pip install http://download.pytorch.org/whl/cu91/torch-0.4.0-cp35-cp35m-win_amd64.whl
方法二:Conda安裝
如果你是Anaconda|Python
使用者,就不需要區分Python3.5
和Python3.6
,執行命令:
conda install pytorch -c pytorch
就可以完成安裝。不過這個預設安裝的是cuda8.0
的gpu
版本,如果你需要安裝cuda9.0
或cuda1.0
的gpu
版本,請執行:
conda install pytorch cuda90 -c pytorch
或者
conda install pytorch cuda91 -c pytorch
來進行安裝。
測試安裝是否成功
import torch print(torch.__version__)
如果輸出0.4.0
,那麼恭喜Windows下的PyTorch0.4.0
安裝成功!
最後需要安裝 torchvision
:
pip install torchvision
一般gpu
版本配置需要cuDNN
,而cuDNN
需要註冊才能下載,下載速度太慢,有網友提供兩個百度雲的下載連結,cuDNN安裝教程見這裡。