<big id="yeiyz"><ruby id="yeiyz"></ruby></big>
    <track id="yeiyz"></track>
    <track id="yeiyz"></track>
    <p id="yeiyz"><del id="yeiyz"></del></p><td id="yeiyz"><option id="yeiyz"></option></td>
    1. <p id="yeiyz"></p>

      <td id="yeiyz"></td>

      PyTorch 1.3 發布

      oschina
       oschina
      發布于 2019年10月12日
      收藏 5

      PyTorch 1.3 已經發布了,新的版本不僅能支持 Android/iOS 移動端部署,甚至還能讓用戶去對手 Google 的 Colab 上調用云 TPU。此外還有一大波新工具,涉及可解釋性、加密、以及關于圖像語音的諸多功能。PyTorch 1.3 帶來了三個實驗性的新功能:

      命名張量

      允許用戶給張量維度命名,從而讓張量更易用,這樣就可以直接喊他們的名字,不用根據位置來跟蹤張量維度。

      升級之前,你需要在代碼里寫注釋來給張量命名:

      # Tensor[N, C, H, W]
       images = torch.randn(32, 3, 56, 56)
       images.sum(dim=1)
       images.select(dim=1, index=0)

      升級之后,就直接能在代碼里寫了,這樣可讀性大大提高:

      NCHW = [‘N’, ‘C’, ‘H’, ‘W’]
         images = torch.randn(32, 3, 56, 56, names=NCHW)
         images.sum('C')
         images.select('C', index=0)

      另外,這項功能還能自動檢查 API 是否被正確的使用,提升了安全性,還可以直接用名字來重新排列尺寸。

      量化支持

      開發 ML 應用程序時,有效利用服務器端和設備上的計算資源非常重要。

      為了支持在服務器和邊緣設備上進行更有效的部署,PyTorch 1.3 現在支持用 eager 模式進行 8 位模型量化。所謂量化,是指降低精度執行計算和存儲的技術。

      當前處于實驗性的量化功能包括對后訓練量化(post-training quantization)、動態量化(dynamic quantization)和量化感知訓練(quantization-aware training)的支持。它分別利用了 x86 和 ARM CPU 的 FBGEMM 和 QNNPACK 最新的量化內核后端,這些后端與 PyTorch 集成在一起,并且現在共享一個通用 API。

      移動端

      另外,為了在邊緣設備上高效的運行機器學習,PyTorch 1.3 支持端到端的工作流,從 Python 到部署在 iOS 和安卓端。

      當然,這個功能還是早期實驗版本,針對端到端做了優化,新版本重點在:

      1. 大小優化,根據用戶需要構建級別優化和選擇性編譯。
      2. 提升了移動 CPU 和 GPU 上的性能。
      3. 高級 API:擴展移動原生 API,覆蓋常用預處理、將機器學習合并到移動應用需要的集成任務,比如計算機視覺或者 NLP 的任務。

      新工具

      • 可解釋性工具 Captum:Captum 可以幫助使用 PyTorch 的開發者了解為什么他們的模型生成某個特定輸出。Captum 提供了先進的工具來理解特定神經元和層如何影響模型做出的預測。下面的案例展示了如何在預訓練的ResNet模型上應用模型可解釋性算法,然后通過將每個像素的屬性疊加在圖像上,使其可視化:
      noise_tunnel = NoiseTunnel(integrated_gradients)
      
      attributions_ig_nt, delta = noise_tunnel.attribute(input, n_samples=10, nt_type='smoothgrad_sq', target=pred_label_idx)
      _ = viz.visualize_image_attr_multiple(["original_image", "heat_map"],
                                            ["all", "positive"],
                                            np.transpose(attributions_ig_nt.squeeze().cpu().detach().numpy(), (1,2,0)),
                                            np.transpose(transformed_img.squeeze().cpu().detach().numpy(), (1,2,0)),
                                            cmap=default_cmap,
                                            show_colorbar=True)

       

      • 加密工具 Cryp Ten:這是一個新的基于社區的研究平臺,用于推動隱私保護 ML 領域的發展。

      多模 AI 系統工具

      • Detectron2:Detectron2 是在 PyTorch 中實現的目標檢測庫。它以增強的靈活性幫助計算機視覺研究,并改善可維護性和可伸縮性,以支持在生產中的用
      • Fairseq 的語音擴展:語言翻譯和音頻處理是系統和應用程序(例如搜索,翻譯,語音和助手)中的關鍵組件。由于變壓器等新架構的發展以及大規模的預訓練方法的發展,最近在這些領域取得了巨大的進步。

      云端支持

      • 谷歌云 TPU:在 Facebook、Google 和 Salesforce 的工程師共同努力下,新版的 PyTorch 加入對了云 TPU 支持,包括對超級計算機云 TPU Pods 的實驗性支持。谷歌 Colab 還提供了對云 TPU 的 PyTorch 支持。
      • 阿里云:阿里云的集成涉及 PyTorch 1.x 的一鍵式解決方案,數據科學 Workshop notebook 服務,使用 Gloo/NCCL 進行的分布式訓練,以及與阿里巴巴 IaaS(如 OSS、ODPS 和 NAS)的無縫集成。

      • 硬件生態擴展:除了主要的 GPU 和 CPU 合作伙伴之外,PyTorch 生態系統還支持專用的機器學習加速器。比如英特爾不久前推出的 NNP-I 推理芯片、Habana Labs 的 AI 處理器

      參考:量子位 

      本站文章除注明轉載外,均為本站原創或編譯。歡迎任何形式的轉載,但請務必注明出處,尊重他人勞動共創開源社區。
      轉載請注明:文章轉載自 OSCHINA 社區 [http://www.url23.com]
      本文標題:PyTorch 1.3 發布
      加載中
      返回頂部
      頂部
      聚看影院