深度学习框架直接得到的模型太重,在移动端及CPU上直接部署不合适,因此将训练出的模型通过推理框架部署.
推理框架包括:模型优化器和推理引擎两部分.
推理框架选择:
- 带GPU的桌面系统,用TensorRt. nvidia自家的,还有量化
- 手机上选择,Tvm ,ncnn等arm opencl的优化成果。阿里腾讯,移动端切身所需。需要附加量化工具 (tvm文档更完整)
- MAC 、Windows、Linux等没有GPU桌面系统 用Openvino . intel自家优化x86,有量化
- 原生 libtensorflow libtorch 都不用!
问题
无论是intel的openvino还是nvidia的TensorRt都不直接提供对pytorch的支持;
解决方案:
pytorch---->onnx--->openvino
pytorch-----torch2trt----->TensorRT(或者pytorch----->onnx----->TensorRT)