Talmaj/onnx2pytorch
Transform ONNX model to PyTorch representation
解決的問題
允許使用者將神經網路模型從 ONNX 格式轉換為 PyTorch。這使得開發者能夠利用 PyTorch 的後端及其豐富的神經網路操作功能,對原本匯出至 ONNX 的模型進行處理。
工作原理
該程式庫提供一個 ConvertModel 類別,接收一個載入的 ONNX 模型作為輸入,並轉換為 PyTorch 模型。它將 ONNX 操作符對應至其 PyTorch 等效操作符,確保無法在 PyTorch 中表達的操作符或屬性會引發錯誤,而非產生錯誤結果。
適用對象
擁有 ONNX 格式模型,並希望將其遷移至 PyTorch 生態系統中用於推論或進一步操作的開發者與研究人員。
主要特色
- 廣泛模型支援:成功轉換多種架構,包括 MobileNet、ResNet、BERT-Squad 與 YOLOv4。
- 差異測試:在不同 schema 版本下,操作符均經過
onnxruntime與 ONNX 的ReferenceEvaluator測試。 - 除錯模式:包含除錯旗標,可用於比較 PyTorch 版本與原始 ONNX 執行環境的激活值,以精確定位差異。
- 推論就緒:支援大於 1 的批次大小,並對 BatchNorm 層使用推論模式。
相關
- 專案
- 專案
- 專案
- 專案
- 專案