qualcomm/aimet

AIMET is a library that provides advanced quantization and compression techniques for trained neural network models.

AI Model Efficiency Toolkit (AIMET)

What it is – AIMET 是 Qualcomm 提供的一個開源軟體工具包,旨在縮小並加速深度學習模型,使其能夠在邊緣設備(手機、筆記型電腦、DSPs)上高效運行。它支援 PyTorch 和 ONNX 模型,並提供post‑training quantization (PTQ) 和 quantization‑aware training (QAT) 流水線,以及一些模型壓縮工具。

Why it matters – 使用整數(INT8/INT4)運算進行推理(inference)比使用浮點數(FP32)快得多,且佔用的記憶體也少得多。AIMET 自動化了將訓練好的模型轉換為低精度,同時保持極小精度損失的複雜過程。該工具包包含進階技術,例如 Data‑Free Quantization、AdaRound、Cross‑Layer Equalization 和 spatial SVD pruning,這些技術讓您在 Qualcomm Hexagon DSPs 上獲得 5-15 倍的加速,並將模型佔用空間縮小多達 4 倍。

Key capabilities

  • PTQ techniques – Calibration、AdaRound、SeqMSE、BatchNorm folding/re‑estimation、Cross‑Layer Equalization、AdaScale、OmniQuant、SpinQuant 等(在指示處支援 both ONNX and PyTorch)。
  • QAT support – 與 aimet‑torch 集成,因此您可以在模擬量化效果的同時繼續訓練模型。
  • Model compression – Spatial SVD decomposition、channel pruning 以及自動化的逐層壓縮率選擇。
  • Visualization tools – 檢查權重範圍和逐層壓縮敏感度,以引導優化。
  • Edge‑ready output – 量化後的模型可以部署在 Qualcomm Hexagon DSP、Kryo CPU 或任何執行整數推理的平台。

How to get started – 預建的 wheels 已發佈在 PyPI (aimet-onnx, aimet-torch)。README 指向了快速入門指南和針對想要最新原始碼的使用者的 Docker‑based build instructions。

Results snapshot – 該工具包可以量化 MobileNet‑v2、ResNet‑50、DeepLab‑v3、ADAS object‑detect,甚至像 DeepSpeech2 這樣的循環模型,且精度損失低於 1 %。例如,MobileNet‑v2 FP32 top‑1 71.72 % → INT8 71.08 %。AdaRound 可以為難以量化的模型恢復精度,甚至能在適度損失下實現 4‑bit 權重量化。

Community & licensing – 討論發生在 GitHub 和專用的 Slack channel。在 BSD‑3‑Clause 授權下歡迎貢獻。


Useful links