ONNX - 環境設定



設定用於處理 ONNX 的環境對於建立、轉換和部署機器學習模型至關重要。在本教程中,我們將學習安裝 ONNX、其依賴項以及設定 ONNX 執行時以實現高效模型推理。

ONNX 環境設定包括安裝 ONNX 執行時、其依賴項以及轉換和執行 ONNX 格式機器學習模型所需的工具。

為 Python 設定 ONNX

Python 是最常用的 ONNX 開發語言。要在 Python 中設定 ONNX 環境,您需要安裝 ONNX 和針對 PyTorch、TensorFlow 和 Scikit-learn 等常用框架的模型匯出庫。ONNX 對於將模型轉換並匯出為 ONNX 格式是必需的。

pip install onnx

安裝 ONNX 執行時

ONNX 執行時是執行 ONNX 格式模型的主要工具。它適用於 CPU 和 GPU(CUDA 和 ROCm)環境。

安裝適用於 CPU 的 ONNX 執行時

要安裝 CPU 版本的 ONNX 執行時,只需在您的終端中執行以下命令:

pip install onnxruntime

這將安裝適用於 CPU 執行的基本 ONNX 執行時包。

安裝適用於 GPU 的 ONNX 執行時

如果您想利用 GPU 加速,ONNX 執行時同時支援 CUDA(NVIDIA)和 ROCm(AMD)平臺。ONNX 執行時支援的預設 CUDA 版本為 11.8。

pip install onnxruntime-gpu

這將安裝適用於 CUDA 11.x 的 ONNX 執行時。

安裝模型匯出庫

根據您使用的框架,安裝相應的模型轉換庫。

  • PyTorch:ONNX 支援內置於 PyTorch 中。以下是命令。

    pip install torch
    
  • TensorFlow:安裝 tf2onnx 來轉換 TensorFlow 模型。

    pip install tf2onnx
    
  • Scikit-learn:使用 skl2onnx 匯出 Scikit-learn 模型。

    pip install skl2onnx
    

為其他語言設定 ONNX

C#/C++/WinML

對於 C# 和 C++ 專案,ONNX 執行時提供對 Windows ML (WinML) 和 GPU 加速的原生支援。我們可以使用以下命令在C#中安裝適用於 CPU 的 ONNX 執行時:

dotnet add package Microsoft.ML.OnnxRuntime

同樣,使用以下命令安裝適用於 GPU(CUDA)的 ONNX 執行時:

dotnet add package Microsoft.ML.OnnxRuntime.Gpu

JavaScript

ONNX 執行時也適用於瀏覽器和 Node.js 環境中的 JavaScript。以下是安裝適用於瀏覽器的 ONNX 執行時的命令:

npm install onnxruntime-web

同樣,要安裝適用於 Node.js 的 ONNX 執行時,請使用以下命令:

npm install onnxruntime-node

為移動裝置 (iOS/Android) 設定 ONNX

ONNX 執行時可以設定為移動平臺,包括 iOS 和 Android。

  • iOS:將 ONNX 執行時新增到您的 Podfile 並執行 pod install

    pod 'onnxruntime-c'
    
  • Android:在您的 Android Studio 專案中,將 ONNX 執行時新增到您的 build.gradle 檔案:

    dependencies {
       implementation 'com.microsoft.onnxruntime
       :onnxruntime-android:latest.release'
    }
    
廣告
© . All rights reserved.