移动设备上的模型优化与部署
1. 设备端机器学习的局限性
设备端机器学习虽然有诸多好处,但也存在一些局限性:
- 计算能力有限 :设备的计算能力有限,这意味着一些强大的模型无法在设备上运行。
- 框架兼容性问题 :许多设备端深度学习框架与一些创新或复杂的层不兼容。例如,TensorFlow Lite 不兼容自定义 LSTM 层,这使得使用该框架在移动设备上移植高级循环神经网络变得困难。
- 安全风险 :在设备上使用模型意味着要与用户共享模型的权重和架构。尽管有加密和混淆方法,但这仍增加了模型被逆向工程或被盗用的风险。
2. 设备端计算机视觉的特点
在移动设备上运行计算机视觉模型时,关注点从原始性能指标转移到用户体验。具体体现在以下两个方面:
- 资源使用优化 :在手机上运行模型时,需要尽量减少电池和磁盘的使用。建议使用较小的模型,因为它们参数少,占用磁盘空间小,且所需操作少,能降低电池消耗。
- 设备方向监测 :训练数据集中的图片大多方向正确,而手机的握持方式多样。因此,需要监测设备的方向,确保输入模型的图像方向正确。
3. 模型文件格式转换
3.1 生成 SavedModel
设备端机器学习通常用于推理,因此需要有一个训练好的模型。在 TensorFlow 2 中,中间格式选择 SavedModel,它包含模型架构(图)和权重。以下代码可将训练好的 Keras 模型导出为
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



