這篇文章主要為大家展示了“PyTorch 1.3有什么新功能”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“PyTorch 1.3有什么新功能”這篇文章吧。
網(wǎng)站設計制作過程拒絕使用模板建站;使用PHP+MYSQL原生開發(fā)可交付網(wǎng)站源代碼;符合網(wǎng)站優(yōu)化排名的后臺管理系統(tǒng);成都網(wǎng)站設計、成都網(wǎng)站制作收費合理;免費進行網(wǎng)站備案等企業(yè)網(wǎng)站建設一條龍服務.我們是一家持續(xù)穩(wěn)定運營了十載的成都創(chuàng)新互聯(lián)公司網(wǎng)站建設公司。
2019.10.10日,PyTorch 開發(fā)者大會在美國舊金山開幕,會上發(fā)布了PyTorch 1.3。這次更新最大的亮點在于對移動設備的支持(Mobile Supported)、命名張量(Named Tensors),量化(Quantization),類型提升(Type Promotion)等。另外,PyTorch 官方還開源了很多新工具和庫,涉及可解釋性、加密、以及關于圖像語音的諸多功能。下面會逐一介紹。
Windows的CPU版本安裝:
pip3 install torch==1.3.0+cpu torchvision==0.4.1+cpu -f https://download.pytorch.org/whl/torch_stable.html
其他版本安裝請參考:
https://pytorch.org/get-started/locally/
PyTorch 1.3也增加了Cloud TPU和阿里云支持。
移動端支持(Mobile Support)
PyTorch 1.3 支持TorchScript直接在移動端進行推理(inference),而不需要任何轉換。當然移動端訓練(train)目前還是不支持的。
另外,針對fp32和int8做了一些優(yōu)化:
- 一些fp32的運算在ARM的CPU上做了特定優(yōu)化(基于Caffe2Go)
- 一些int8的運算在ARM的CPU上做了特定優(yōu)化(基于QNNPACK)
PyTorch移動端支持的特色在于沒有為移動端建立新的框架(對比TensorFlow lite),所有TorchScript的API都可以直接在Android/iOS上運行。
但目前只是試驗性質(zhì)的發(fā)布,仍需要不斷發(fā)展使得PyTorch對于特定的場景更小,更快。
命名張量(Named Tensor)
Named Tensor對Tensor的每一個維度指定具體的名字,這樣可以使Tensor易用性更好。例如:
>>> tensor = torch.zeros(2, 3, names=('C', 'N'))
tensor([[0., 0., 0.],
[0., 0., 0.]], names=('C', 'N'))
這樣就新建了一個dim=2的Tensor,兩個維度分別為’C’和’N’,這樣后續(xù)就可以直接使用’C’和’N’對Tensor進行操作,而不用使用以前的axis=0或者axis=1這種可讀性不好的操作。
量化支持
PyTorch 1.3支持Tensor的量化操作,用戶可以方便地
x = torch.rand(10,1, dtype=torch.float32)
# xq 是量化后的向量,數(shù)據(jù)類型記為 quint8
xq = torch.quantize_per_tensor(x, scale = 0.5, zero_point = 8, dtype=torch.quint8)
# 再轉換回浮點數(shù)
xdq = x.dequantize()
以上是“PyTorch 1.3有什么新功能”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!