Edge側でのInferenceて、どうなっているかと資料。。。
TensorFlow、ONNX、mxnet、Caffe、Caffe2などのフレームワークからのモデルから
・Converters/Graph Parsers を使って内部モデルに変換 ・Graph Optimizersにて、汎用的なグラフの最適化 ・推論の実行時のランタイム ・実行時のAOT Compilersというような構成。。。
・学習済みのTensorFLowモデル => TFLite Converter =< TEFlite Model (.tflite) => App ・学習済みのTensorFLow or ONNXモデル => Quallcomm Neural Processing SDK (Converter => DLC) => App ・学習済みのTensorFLow or ONNXモデル => ARM NN (ARM Compute Library (ACL)
の2つのパスがあるようです。
QuallcommのNeural Processing SDK vs TFLite
・CPU : NEON (Qualcomm Math Libraries) <=> NEON (Kernels) ・GPU : OpenCL (Kernels) <=> GPU (Kernels) ・DSP : HVX (Qualcomm exagon NN) <=> NNAPI (Vendor/NNHAL)
NNAPI経由でQuallcommのNeural Processing SDKを使うことも可能の模様。。ただし、端末がサポートしていれば。