使用 PyTorch 和 Windows ML 進行影像分類
注意
為了獲得更大的功能, PyTorch 也可以與 Windows 上的 DirectML 搭配使用。
本教學課程將示範如何使用 PyTorch 定型影像分類神經網路模型、將模型匯出至 ONNX 格式,並將其部署在 Windows 裝置本機執行的 Windows 機器學習 應用程式中。
需要 Python 和 C# 程式設計語言的基本知識。 先前在機器學習中的經驗是較佳的,但並非必要。
如果您想要直接移至安裝,請參閱 安裝 PyTorch。
如果您已經設定 PyTorch,請取得 數據來啟動模型轉譯程式。
準備好使用數據之後,您就可以開始 定型模型,然後將 它轉換成 ONNX 格式。
如果您有 ONNX 模型,而且想要瞭解如何從頭開始建立 WinML 應用程式,請瀏覽以 部署您的模型。
注意
如有需要,您可以複製 Windows 機器學習 範例存放庫,並執行本教學課程的已完成程式代碼。 您可以在這裡找到 PyTorch 定型解決方案,或在這裡找到已完成的 Windows ML 應用程式。 如果您使用 PyTorch 檔案,請務必在執行 PyTorch 之前設定相關的 PyTorch 解釋器。
案例
在本教學課程中,我們將建立可在任何 Windows 裝置上執行的機器學習影像分類應用程式。 模型會定型以辨識模式類型,並將從所選定型集中分類 10 個影像標籤。
PyTorch 的必要條件 - 模型定型:
下列 Windows 發行版支援 PyTorch:
- Windows 7 和更新版本。 建議使用 Windows 10 或更新版本。
- Windows Server 2008 r2 和更新版本
若要在 Windows 上使用 Pytorch,您必須安裝 Python 3.x。 不支援 Python 2.x。
Windows ML 應用程式部署的必要條件
若要建立及部署 WinML 應用程式,您需要下列專案:
- Windows 10 版本 1809(組建 17763) 或更高版本。 您可以透過 [執行] 命令
(Windows logo key + R)
執行winver
來檢查組建版本號碼。 - 適用於組建 17763 或更高版本的 Windows SDK。 您可以在這裡取得 SDK。
- Visual Studio 2017 15.7 版或更新版本。 建議您改用 Visual Studio 2019,如果您改用 VS2017,本教學課程中的某些螢幕快照可能會不同。 您可以在這裡取得 Visual Studio。
- Windows ML 程式代碼產生器 (mlgen) Visual Studio 擴充功能。 下載 VS 2019 或 VS 2017。
- 您也需要 在電腦上啟用開發人員模式
注意
Windows ML API 內建於最新版的 Windows 10(1809 或更高版本)和 Windows Server 2019 中。 如果您的目標平臺是舊版 Windows,您可以將 WinML 應用程式移植到可轉散發的 NuGet 套件(Windows 8.1 或更高版本)。
後續步驟
重要
PyTorch、PyTorch 標誌及所有相關的標記均為 Facebook,Inc. 的商標。