部署與效率
行動裝置推論
行動裝置推論是邊緣部署中特殊而極常見的情況:在智慧型手機與類似的嵌入式系統單晶片(SoC)上執行視覺模型。手機的能力出人意料——它們內建專用的神經加速器,如 Apple 的 Neural Engine、Qualcomm 的 Hexagon NPU 與 Google 的 Tensor——但要在電池與散熱預算內達到互動速度,你必須把輕量模型與正確的執行環境搭配,並讓加速器來幹活。
行動 SoC 是異質的:它有 CPU、GPU、DSP 與 NPU,而執行環境決定每個運算子在哪裡執行——這個過程稱為委派(delegation)。常見堆疊有 TFLite(搭配 NNAPI、GPU、Core ML 或 Hexagon 委派)、iOS 上的 Core ML、PyTorch 的 ExecuTorch,以及 MNN/NCNN/TNN。模型通常做 int8 量化,因為 NPU 以整數為優先;並採用對行動友善的架構——MobileNet 的深度可分離卷積、ShuffleNet、EfficientNet-Lite、MobileViT——以及蒸餾、量化後的偵測器與分割器。
陷阱很具體。NPU 的運算子支援並不完整,因此不支援的運算會退回 CPU,可能拖垮端到端延遲;量化常是強制的,因為有些 NPU 根本不能跑浮點;而散熱降頻意味著短暫的基準測試衝刺遠快於持續的影片處理。請務必在多家廠商、多代 SoC 的真實裝置上做效能剖析,而不只在單一旗艦手機上。
固定功能的 NPU 快但僵硬:單一不支援的運算子,或一個非預期的動態形狀,就可能強制退回 CPU,抹去加速器的優勢。請把模型設計與量化成完全落在 NPU 所支援的運算子集合內。
又称