技術編輯:宗恩丨發自 SiFou Office
SegmentFault 思否報道丨公眾號:SegmentFault
自從 2012 年以來許多機器學習框架都爭先恐後地要成為研究人員和行業從業者的新寵。從早期的學術性的 Caffe(卷積神經網絡框架)和 Theano(一個基於 Python 的深度學習庫),到業界支持的大規模 PyTorch 和 TensorFlow,深度學習框架層出不窮。
到了 2019 年,機器學習框架大戰只剩下了兩個主要競爭者,那就是 PyTorch 和 TensorFlow。越來越多的研究人員表示 PyTorch 未來會成為機器學習領域最受歡迎的框架。
最近 PyTorch 大幅更新,主要內容為提供標籤索引,增加主題分類,更新後內容更加清晰對新手更為友好。
以下為更新內容的詳細解讀:
提供標籤索引
對於 PyTorch 的新用戶,填加了易於發現的按鈕,可以直接將他們帶到 「60分鐘突擊訓練」。在它的旁邊,還有一個按鈕可以查看所有的索引,這些索引的設計是為了通過實例快速教授特定的功能。
除了現有的左側導航欄外,教程現在可以通過多選標籤快速過濾。比方說你想查看所有與「生產」和「量化」相關的教程。您可以選擇「生產」和「量化」過濾器,如下圖所示。
還可以在「教程」主頁的底部找到以下其他資源:
PyTorch 備忘單
PyTorch 示例
GitHub 上的教程
PyTorch 官方也增加了新的「使用指南」,比如:
PyTorch 數據加載(LOADING DATA IN PYTORCH)
CAPTUM 的模型可解釋性(MODEL INTERPRETABILITY USING CAPTUM)
如何在 PyTorch 中使用 Tensorboard(HOW TO USE TENSORBOARD WITH PYTORCH)
增加主題分類
本部分包括為 PyTorch 新手用戶設計的教程。根據社區反饋,他們對當前的深度學習與 PyTorch 進行了更新。A 60 分鐘突擊教程,這是最受歡迎的初學者教程之一。
完成後,人們可以理解什麼是 PyTorch 和神經網絡,並能夠構建和訓練一個簡單的圖像分類網絡。更新內容包括添加解釋以澄清輸出含義,並連結到用戶可以在文檔中閱讀更多的內容,清理容易混淆的語法錯誤,以及重構和解釋新的概念,使其更容易閱讀。
在生產中部署模型
本部分包括針對希望將其 PyTorch 模型投入生產的開發人員的教程。這些教程包括:
通過帶有 Flask 的 REST API 在 Python 中部署 PyTorch
Torch 簡介
在 C ++ 中加載 Torch 模型
探索從 PyTorch 到 ONNX 的模型並使用 ONNX Runtime 運行它
前端 API
PyTorch 提供了許多前端 API 功能,可以幫助開發人員更有效地編碼,調試和驗證其模型。本節包括一些教程,這些教程教這些功能是什麼以及如何使用它們。一些教程重點介紹:
PyTorch 中的命名張量簡介
使用 PyTorch C ++ 前端
使用自定義 C ++ 運算符擴展 Torch
使用自定義 C ++類擴展 Torch
C ++ 前端中的 Autograd
模型優化
深度學習模型由於其複雜性,通常會消耗大量的內存,功能和計算資源。本節提供模型優化的教程:
修剪
BERT 上的動態量化
在 PyTorch 中使用 Eager 模式進行靜態量化
並行和分布式培訓
PyTorch 提供了可以提高研究和生產性能的功能,例如對集體操作的異步執行的本機支持以及可從 Python 和 C ++ 訪問的對等通信。本節包括有關並行和分布式培訓的教程:
單機模型並行最佳實踐
分布式數據並行入門
分布式 RPC 框架入門
使用分布式 RPC 框架實現參數伺服器