複製鏈接
請複製以下鏈接發送給好友

PyTorch

鎖定
PyTorch是一個開源的Python機器學習庫,基於Torch,用於自然語言處理應用程序。PyTorch既可以看作加入了GPU支持的numpy,同時也可以看成一個擁有自動求導功能的強大的深度神經網絡。除了Facebook外,它已經被Twitter、CMU和Salesforce等機構採用 [1] 
外文名
PyTorch
提出時間
2017年1月
研發機構
Facebook人工智能研究院

PyTorch發展歷史

PyTorch的前身是Torch,其底層和Torch框架一樣,但是使用Python重新寫了很多內容,不僅更加靈活,支持動態圖,而且提供了Python接口。它是由Torch7團隊開發,是一個以Python優先的深度學習框架,不僅能夠實現強大的GPU加速,同時還支持動態神經網絡。
2017年1月,由Facebook人工智能研究院(FAIR)基於Torch推出了PyTorch。它是一個基於Python的可續計算包,提供兩個高級功能:1、具有強大的GPU加速的張量計算(如NumPy)。2、包含自動求導系統的深度神經網絡
2022年9月,扎克伯格親自宣佈,PyTorch 基金會已新鮮成立,並歸入 Linux 基金會旗下。 [5] 

PyTorch運行環境

已兼容Windows(CUDA,CPU)、MacOS(CPU)、Linux(CUDA,ROCm [6]  ,CPU)

PyTorch優點

  • PyTorch是相當簡潔且高效快速的框架
  • 設計追求最少的封裝
  • 設計符合人類思維,它讓用户儘可能地專注於實現自己的想法
  • 與google的Tensorflow類似,FAIR的支持足以確保PyTorch獲得持續的開發更新
  • PyTorch作者親自維護的論壇 供用户交流和求教問題
  • 入門簡單 [2] 

PyTorch基礎環境

一台PC設備、一張高性能NVIDIA顯卡(可選)、Ubuntu系統。

PyTorch環境搭建

安裝Pytorch
PyTorch的安裝十分簡單,根據PyTorch官網,對系統選擇和安裝方式等靈活選擇即可。這裏以anaconda為例。
Pytorch的安裝經過了幾次變化,請大家以官網的安裝命令為準。另外需要説明的就是在1.2版本以後,Pytorch只支持cuda 9.2以上了,所以需要對cuda進行升級,部分顯卡都可以用,包括筆記本的MX250也是可以順利升級到cuda 10.1。此處使用Conda包管理器。
注意:如果使用鏡像站,請刪除“-c pytorch”;安裝CUDA(即GPU)版本時注意安裝CUDNN運行庫
# 全部通用,ROCm僅支持Linux
conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch	#CUDA 10.2
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch	#CUDA 11.3
conda install pytorch torchvision torchaudio cpuonly -c pytorch	#CPU
pip3 install torch torchvision==0.11.2 -f https://download.pytorch.org/whl/rocm4.2/torch_stable.html
# ROCm 4.2 (僅Linux)
驗證輸入python 進入
import torch
print(torch.__version__)	#Pytorch版本
print(torch.version.cuda)	#CUDA版本
print(torch.backends.cudnn.version())	#CUDNN版本
配置Jupyter Notebook
新建的環境是沒有安裝ipykernel的,所以無法註冊到Jupyter Notebook中,所以先要準備環境
#安裝ipykernel
conda install ipykernel
#寫入環境
python -m ipykernel install  --name pytorch --display-name "Pytorch for Deeplearning"
下一步:定製 Jupyter Notebook
#切換回基礎環境
activate base
#創建jupyter notebook配置文件
jupyter notebook --generate-config
## 這裏會顯示創建jupyter_notebook_config.py的具體位置
打開文件,修改
c.NotebookApp.notebook_dir = '' 默認目錄位置
c.NotebookApp.iopub_data_rate_limit = 100000000 這個改大一些否則有可能報錯
測試
至此,Pytorch 的開發環境安裝完成,可以在開始菜單中打開Jupyter Notebook 在New 菜單中創建文件時選擇Pytorch for Deeplearning 創建PyTorch的相關開發環境了 [3] 

PyTorch版本更新

TensorFlow更新後,PyTorch也迎來了最新的 1.4 版。
本次更新的重點是增加了很多重要的新特性,包括給用户提供Build級別的移動端定製化支持、增加分佈式模型並行訓練、讓Java程序能夠運行TorchScript等。此外還有JIT、C++、分佈式訓練、Eager前端、PyTorch Mobile等方面的功能改進和Bug修復。
本次PyTorch 更新是最後一個支持Python2的版本,同時也是最後一個支持C++11的版本。官方提示説,用户應當開始遷移到Python3,並使用C++14開始編譯工作 [4] 
參考資料