當前位置:
首頁 > 新聞 > PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

新智元編譯

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

API 改變

  • torch.range 已被棄用,取代的是 torch.arange,這與 numpy 和 python 範圍一致。

  • 在稀疏張量上,contiguous 被重命名為 coalesce,coalesce 已經不合適。(注意 Sparse API 仍然是實驗性而且在演變中,所以我們不提供向後兼容性)。

新的特徵

新的層和函數

  • torch.topk 現在支持所有 CUDA 類型,不僅是 torch.cuda.FloatTensor。

  • 增加了一個 三路排序損失:nn.TripletMarginLoss

  • 增加了每個實例的歸一化層:nn.InstanceNorm1d, nn.InstanceNorm2d, nn.InstanceNorm3d

    每個通道都被作為一個實例進行歸一化處理,並進行均值消減和標準差。這在處理需要類似 BatchNorm 效果的較大的圖像和較小的 mini-batches 時很有用。

  • 增加了 nn.ZeroPad2d 和 nn.ConstantPad2d

  • 增加了 nn.Bilinear,計算 Y = X1 * W * X2 + b

支持所有函數的負維

使用維度參數的每個函數也允許採取負維(negative dimensions)。負維將索引上個維度的張量。

例如:

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

這裡,由於x具有3維,並且dim = -1,因此最後一個維度,即 dim = 3 被採用來得到平均值。

具有維度參數的函數有:

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

CUDA 支持稀疏張量,更快的 CPU sparse

新版本中 torch.sparse API 的一部分也支持 torch.cuda.sparse。* Tensor。

CUDA 支持的函數有:

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

利用這些稀疏函數,nn.Embedding 現在也在 CUDA 上支持 sparse(使用 sparse = True 標誌)。

一種新的混合矩陣乘法 hspmm,將稀疏矩陣與密集矩陣相乘,並以混合張量的形式(即1個稀疏維度,1個密集維度)返回1個矩陣。

幾個CPU稀疏函數具有更高效的實現。

這裡有一個嵌入式分類器訓練腳本,作者是@martinraison,我們可以對比 CUDA sparse 和 CUDA dense 的表現。(http://t.cn/RaZcltA)

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

named_parameters 過濾特定的參數類型

假設你想為模型除 biases 外的所有參數增加權重衰減(weight decay),怎樣只獲得模型的 biases?

這裡我們引入了 nn.Module.named_parameters,它結合 named_children 和 named_modules 來幫助過濾模型的特定屬性。

例子:過濾一個模型的 biases, weight_decay 為0

PyTorch 最新版發布:API 變動,增加新特徵,多項運算和載入速度提升

性能提升

  • 在適當的情況下,通過使用一些 thrust primitives,cumsum 和 cumprod 在GPU上顯著加快了。

  • 通過一個 fused kernel,LSTMCell 和 GRUCELL 在GPU上顯著加快了。

  • CuDNN 的默認演算法更改為 PRECOMP_GEMM,這是一個更快的演算法,需要的工作空間很小。這個之前是 IMPLICIT_GEMM,佔用的工作空間為0,但是慢很多。

  • 通過將 batches 直接整到共享內存中,數據載入速度提升了 5%~10%。

  • 通過分治法(sgesdd)在 GPU 上計算 SVD,加速了2~5倍。

  • 常用的函數 expand 移到 C,在較小的模型中具有更好的性能。

Bug 修復

  • Added contiguous checks on weight and bias for a large range of THNN functions

  • make the range of random_ correct when both lower and upper bound are specified

  • parallel_apply now can take arguments that are unhashable

  • Reshape grad correctly in the Dot function (inputs don"t have to be 1D vectors...)

  • Added Variable.type_as

  • Unify argument names of norm and renorm to have p=norm_type, dim=dim

  • btrisolve works on CPU doubles

  • ipython autocomplete for torch.nn.Module fixed via implementing __dir__

  • device_ids can now be None again in F.data_parallel and will use all available GPUs

  • workaround cudnn bugs in BatchNorm (<5.1.10) and Dilation (6.0.20)

  • Padding bugfix in Conv1d CPU

  • remainder and cremainder are fixed for integer types

  • fix memory leak in btrisolve and getri

  • If nn.Module"s source cant be retrieved because of any exception,

  • handle serialization to be non-fatal

  • collate_fn now retains the type of the numpy array

  • is_tensor and is_storage are now fixed for old-style Python classes

  • torch.cat now supports keyword arguments

  • CUDA collectives supported coalescing, but the inputs were all assumed

  • to be of the same Tensor type. This is fixed.

  • Fix a deadlock bug in autograd because of an underlying glibc bug in specific

  • linux distros (ArchLinux in particular)

  • abs is now fixed for char and short cuda types

  • fix torch.diag autograd when giving a dimension argument

  • fix grouped convolution on CPU when bias=False

  • expose dilated convolutions for ConvTranspose*d

  • Fix a bug in HingeEmbeddingLoss where margin can now be specified via kwargs

新智元招聘

職位:客戶經理

職位年薪:12 - 25萬(工資+獎金)

工作地點:北京-海淀區

所屬部門:客戶部

彙報對象:客戶總監

工作年限:3 年

語 言:英語 + 普通話

學歷要求:全日制統招本科

職位描述:

  1. 精準把握客戶需求和公司品牌定位,策劃撰寫合作方案;

  2. 思維活躍、富有創意,文字駕馭能力強,熟練使用PPT,具有良好的視覺欣賞及表現能力,PS 能力優秀者最佳;

  3. 熱情開朗,擅長人際交往,良好的溝通和協作能力,具有團隊精神;

  4. 優秀的活動籌備與執行能力,較強的抗壓能力和應變能力,適應高強度工作;

  5. 有4A、公關公司工作經歷優先

  6. 對高科技尤其是人工智慧領域有強烈興趣者加分。

崗位職責:

參與、管理、跟進上級指派的項目進展,確保計劃落實。制定、參與或協助上層執行相關的政策和制度。定期向公司提供準確的市場資訊及所屬客戶信息,分析客戶需求,維護與指定公司關鍵顧客的關係,積極尋求機會發展新的業務。建立並管理客戶資料庫,跟蹤分析相關信息。

應聘郵箱:jobs@aiera.com.cn

HR微信:13552313024

新智元歡迎有志之士前來面試,更多招聘崗位請點擊【新智元招聘】查看。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 新智元 的精彩文章:

TAG:新智元 |

您可能感興趣

Dirac在2018MWC發布第二代Dirac VR技術 動態HRTFs、多維度還原和更高效運算
谷歌開源TensorNetwork資料庫,加快運算速度百倍!
Facebook新研究優化硬體浮點運算,強化AI模型運行速率
國產芯首發升級Android 8.1 NNAPI SDK AI運算性能飆升
讓你的Photoshop 運算速度可提升最高 75%!蘋果Apple 推出首部 8 核 MacBook Pro
NVIDIA Tesla P40 24GB 深度學習 GPU運算卡 正品現貨
利用Chan-Vese模型和Sobel運算對重疊葉片進行圖像分割
Gyrfalcon Technology入局AI晶元戰場,研發存儲計算融合一體的本地並行AI運算架構
基於INTEL FPGA硬浮點DSP實現卷積運算
基於 Tensorflow 輕鬆實現 XOR 運算!| CSDN 博文精選
TITAN V 被曝科學運算 Bug
SQLite AND/OR 運算符
MongoDB 中的「加減乘除」運算
基於 Tensorflow 輕鬆實現 XOR 運算!
聯發科P90正式發布,AI算力升級,運算性能大幅度提高
Python入門基礎之面向對象四:運算符重載
英特爾建立生態圈,推動視覺運算平台OpenVINO
「嚇死人技術」榮耀Play搶先用華為GPU Turbo提升手機運算效率
黃仁勛悄然發布新運算顯卡 性能提升不止一個TITAN Xp
NVIDIA心涼涼 TITAN V翻車了 科學運算彈BUG