机器学习模型部署都有哪些坑?剑桥研究者梳理了99篇相关研究

MODNet:实时人像抠图模型-onnx python部署

在部署onnx时,将要推理的图像做简单的前处理,如果采用pytorch的transform则还需要安装pytorch,导致软件过大。此时,应该自己实现图像预处理程序。如normalize和resize

  • def normalize(self, im, mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]):
    im = im.astype(np.float32, copy=False) / 255.0
    im -= mean
    im /= std
    return im
  • def resize(self, im, target_size=608, interp=cv2.INTER_LINEAR):
    if isinstance(target_size, list) or isinstance(target_size, tuple):
    w = target_size[0]
    h = target_size[1]
    else:
    w = target_size
    h = target_size
    im = cv2.resize(im, (w, h), interpolation=interp)

一步一步解读神经网络编译器TVM(一)——一个简单的例子
一步一步解读神经网络编译器TVM(二)——利用TVM完成C++端的部署

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐