華文網

年度最大更新!PyTorch 0.4:完全改變API,官方支持Windows

【新智元導讀】今天,PyTorch官方在GitHub發佈0.4.0版本,最重要的改進是支援Windows系統。

新版本完全改變了API,是本年度最重大的升級。

TensorFlow依舊有王者榮耀,但PyTorch虎視眈眈。

今天,PyTorch官方在GitHub發佈0.4.0版本,最重要的改進是支援Windows系統。

PyTorch是在2017年1月由Facebook推出的。它是經典機器學習庫Torch框架的一個埠,Torch二進位檔案包裝於GPU加速的Python。

除了GPU加速和記憶體使用的高效外,

PyTorch受歡迎的主要因素是動態計算圖的使用。已經有其他一些不太知名的深度學習框架使用動態計算圖,例如Chainer。

動態圖的優點在於,圖(graph)是由run定義(“define by run”),而不是傳統的“define and run”。特別是,在輸入可以變化的情況下,例如文本這樣的非結構化資料,這非常有用而且高效。

以下為更新內容目錄:

主要核心變更

Tensor/Variable合併

零維張量

dtypes

遷移指南

新功能

張量

全面支援高級索引

快速傅立葉轉換

神經網路

權衡記憶體計算

bottleneck - 一個在你的代碼中識別hotspots的工具

torch.distributions

24個基本概率分佈

增加了cdf,方差,熵,困惑度(perplexity)等。

分散式訓練

易於使用的Launcher utility

NCCL2後端

C ++擴展

Windows支援

ONNX改進

RNN支援

性能改進

Bug修復

主要核心變化

以下是用戶每天使用的最重要的核心功能的更新。

主要變化和潛在的重要更新:

Tensors 和 Variables已經合併

有些操作會返回0維(標量)Tensors

棄用了 volatile flag

改進:

添加了 dtypes,devices和 Numpy 風格的 Tensor 創建函數

支援編寫與device無關的代碼

PyTorch團隊編寫了一個遷移指南,説明使用者將代碼轉換為新的API和style。 如果您想要遷移以前版本的PyTorch中的代碼。

遷移指南:http://pytorch.org/2018/04/22/0_4_0-migration-guide.html

本部分的內容(主要核心變更)包含在遷移指南中。

合併 Tensor 和 Variable 類

torch.autograd.Variable 和 torch.Tensor 現在是同一類。更確切地說,torch.Tensor 能夠跟蹤歷史並像舊的 Variable 一樣運行;Variable 的換行繼續像以前一樣工作,

但返回的物件類型變成 torch.Tensor。這意味著你不再需要將代碼中的任何 Variable wrapper。

Tensor 的 type( ) 已經改變

還要注意 Tensor 的 type( ) 不再反映資料類型。使用isinstance()或 x.type()來代替:

Windows支持

PyTorch現在正式支持Windows!我們為Python 3.5和3.6提供預編譯的Conda二進位檔案和pip wheels。Windows上的PyTorch不支持分散式訓練,可能比Linux / OSX慢一點,因為Visual Studio支持較早版本的OpenMP。

與往常一樣,你可以使用http://pytorch.org上的命令在Windows上安裝PyTorch。

這裡有一個常見問題解答,可以解答你在Windows上可能遇到的大多數問題:http://pytorch.org/docs/stable/notes/windows.html

更多細節,

請參考PyTorch的GitHub頁面:https://github.com/pytorch/pytorch/releases/tag/v0.4.0

【加入社群】

新智元 AI 技術 + 產業社群招募中,歡迎對 AI 技術 + 產業落地感興趣的同學,加小助手微信號: aiera2015_1 入群;通過審核後我們將邀請進群,加入社群後務必修改群備註(姓名 - 公司 - 職位;專業群審核較嚴,敬請諒解)。