PyTorch 1.0預(yù)覽版發(fā)布:Facebook最新的AI開源框架
Facebook 在人工智能項(xiàng)目中廣泛使用自己的開源 AI 框架 PyTorch,最近,他們已經(jīng)發(fā)布了 PyTorch 1.0 的預(yù)覽版本。
如果你尚不了解,PyTorch 是一個(gè)基于 Python 的科學(xué)計(jì)算庫(kù)。
PyTorch 利用 GPU 超強(qiáng)的運(yùn)算能力 來(lái)實(shí)現(xiàn)復(fù)雜的 張量 計(jì)算 和 深度神經(jīng)網(wǎng)絡(luò)。 因此, 它被世界各地的研究人員和開發(fā)人員廣泛使用。
這一新的可以投入使用的 預(yù)覽版 已于 2018 年 10 月 2 日周二在舊金山 The Midway 舉辦的 PyTorch 開發(fā)人員大會(huì) 宣布。
PyTorch 1.0 候選版本的亮點(diǎn)
候選版本中的一些主要新功能包括:
1、 JIT
JIT 是一個(gè)編譯工具集,使研究和生產(chǎn)更加接近。 它包含一個(gè)基于 Python 語(yǔ)言的叫做 Torch Script 的腳本語(yǔ)言,也有能使現(xiàn)有代碼與它自己兼容的方法。
2、 全新的 torch.distributed 庫(kù): “C10D”
“C10D” 能夠在不同的后端上啟用異步操作, 并在較慢的網(wǎng)絡(luò)上提高性能。
3、 C++ 前端 (實(shí)驗(yàn)性功能)
雖然它被特別提到是一個(gè)不穩(wěn)定的 API (估計(jì)是在預(yù)發(fā)行版中), 這是一個(gè) PyTorch 后端的純 C++ 接口, 遵循 API 和建立的 Python 前端的體系結(jié)構(gòu),以實(shí)現(xiàn)高性能、低延遲的研究和開發(fā)直接安裝在硬件上的 C++ 應(yīng)用程序。
想要了解更多,可以在 GitHub 上查看完整的 更新說(shuō)明。
第一個(gè) PyTorch 1.0 的穩(wěn)定版本將在夏季發(fā)布。(LCTT 譯注:此信息可能有誤)
在 Linux 上安裝 PyTorch
為了安裝 PyTorch v1.0rc0, 開發(fā)人員建議使用 conda, 同時(shí)也可以按照本地安裝頁(yè)面所示,使用其他方法可以安裝,所有必要的細(xì)節(jié)詳見文檔。
前提
- Linux
- Pip
- Python
- CUDA (對(duì)于使用 Nvidia GPU 的用戶)
我們已經(jīng)知道如何安裝和使用 Pip,那就讓我們來(lái)了解如何使用 Pip 安裝 PyTorch。
請(qǐng)注意,PyTorch 具有 GPU 和僅限 CPU 的不同安裝包。你應(yīng)該安裝一個(gè)適合你硬件的安裝包。
安裝 PyTorch 的舊版本和穩(wěn)定版
如果你想在 GPU 機(jī)器上安裝穩(wěn)定版(0.4 版本),使用:
pip install torch torchvision
使用以下兩個(gè)命令,來(lái)安裝僅用于 CPU 的穩(wěn)定版:
pip install http://download.pytorch.org/whl/cpu/torch-0.4.1-cp27-cp27mu-linux_x86_64.whl
pip install torchvision
安裝 PyTorch 1.0 候選版本
使用如下命令安裝 PyTorch 1.0 RC GPU 版本:
pip install torch_nightly -f https://download.pytorch.org/whl/nightly/cu92/torch_nightly.html
如果沒有GPU,并且更喜歡使用 僅限 CPU 版本,使用如下命令:
pip install torch_nightly -f https://download.pytorch.org/whl/nightly/cpu/torch_nightly.html
驗(yàn)證 PyTorch 安裝
使用如下簡(jiǎn)單的命令,啟動(dòng)終端上的 python 控制臺(tái):
python
現(xiàn)在,按行輸入下面的示例代碼以驗(yàn)證您的安裝:
from __future__ import print_function
import torch
x = torch.rand(5, 3)
print(x)
你應(yīng)該得到如下輸出:
tensor([[0.3380, 0.3845, 0.3217],
[0.8337, 0.9050, 0.2650],
[0.2979, 0.7141, 0.9069],
[0.1449, 0.1132, 0.1375],
[0.4675, 0.3947, 0.1426]])
若要檢查是否可以使用 PyTorch 的 GPU 功能, 可以使用以下示例代碼:
import torch
torch.cuda.is_available()
輸出結(jié)果應(yīng)該是:
True
支持 PyTorch 的 AMD GPU 仍在開發(fā)中, 因此, 尚未按報(bào)告提供完整的測(cè)試覆蓋,如果您有 AMD GPU ,請(qǐng)?jiān)?a class="ext" rel="external nofollow" target="_blank">這里提出建議。
現(xiàn)在讓我們來(lái)看看一些廣泛使用 PyTorch 的研究項(xiàng)目:
基于 PyTorch 的持續(xù)研究項(xiàng)目
- Detectron: Facebook AI 研究院的軟件系統(tǒng), 可以智能地進(jìn)行對(duì)象檢測(cè)和分類。它之前是基于 Caffe2 的。今年早些時(shí)候,Caffe2 和 PyTorch 合力創(chuàng)建了一個(gè)研究 + 生產(chǎn)的 PyTorch 1.0
- Unsupervised Sentiment Discovery: 廣泛應(yīng)用于社交媒體的一些算法
- vid2vid: 逼真的視頻到視頻的轉(zhuǎn)換
- DeepRecommender 我們?cè)谶^(guò)去的網(wǎng)飛的 AI 文章中介紹了這些系統(tǒng)是如何工作的
領(lǐng)先的 GPU 制造商英偉達(dá)在更新這方面最近的發(fā)展,你也可以閱讀正在進(jìn)行的合作的研究。
我們應(yīng)該如何應(yīng)對(duì)這種 PyTorch 的能力?
想到 Facebook 在社交媒體算法中應(yīng)用如此令人驚嘆的創(chuàng)新項(xiàng)目, 我們是否應(yīng)該感激這一切或是感到驚恐?這幾乎是天網(wǎng)! 這一新改進(jìn)的發(fā)布的 PyTorch 肯定會(huì)推動(dòng)事情進(jìn)一步向前! 在下方評(píng)論,隨時(shí)與我們分享您的想法!