- 是一组工具,使得模型可以在移动设备上运行
- 好处:没有延迟,隐私性,离线,省电(联网耗电大)
- 两个主要的组件:
interpreter
负责跑模型
converter
负责模型转换
主要特性
- API支持多种语言 Java, Swift, Objective-C, C++, Python
- 在特定的设备上支持硬件加速
- 模型优化工具quantization,可以在不降低准确性的前提下减小模型大小,提升性能。
-
FlatBuffers
一种高效存储模型的格式
基本流程
- 选择模型
可以是自定义的,也可以是预训练过的,根据需要重新训练 - 转换模型
如果是自定义的模型,使用converter
进行转换 - 部署
调用API,使用interpreter
在设备上运行 - 优化模型
使用model optimization toolkit优化模型
局限性
- 目前
interpreter
只支持的Tensorflow operators是有限的,也就意味着,转换某些模型需要额外的步骤。