2017年,I / O开发者大会的众多公告之一就是移动设备上的机器学习的TensorFlow Lite。从今天开始,Android和iOS优化版的ML库现在可以作为开发者预览版了。
谷歌I/O开发者大会
谷歌称这款名为“TensorFlow”的Lite版本在TensorFlow Mobile的基础上进行了演变,该公司将在移动和嵌入式设备上部署机器学习模型。Android工程副总裁戴夫·伯克指出,这是“在多种多样芯片生态系统中实现硬件加速神经网络处理的关键一步。”
TensorFlow Lite的内存占用很低,这使得它对移动设备上可用的有限资源的征税减少,同时也减少了处理器的密集性,以使应用程序快速运行。
TensorFlow Lite被视为TensorFlow Mobile的替代品,但考虑到预览状态,TensorFlow Mobile是目前稳定应用的选择。TensorFlow Mobile允许开发人员在移动设备上集成在桌面环境中工作的TensorFlow模型。然而,使用TensorFlow Lite创建的应用程序将比使用TensorFlow Mobile的类似应用程序更轻、更快。但并不是所有的用例都得到了TensorFlow Lite的支持,目前有三种模式进行了训练和优化。
模型
目前它仍然在“积极开发”中,这个最初的版本关注的是关键模型的性能,也就是说,它是经过优化和培训的:
MobileNet:一种能够识别1000个不同对象类的视觉模型,专门为在移动和嵌入式设备上高效执行而设计
Inception v3:一个图像识别模型,功能类似于MobileNet,虽然体积大了些,但它能提供更高的准确性
Smart Reply:一种设备上的对话模式,能够在接收到聊天信息之后,提供触发性应答。第一方和第三方的通信应用可以在Android Wear上使用
TensorFlow Lite专注于三个领域:
轻量级:支持对设备机器学习模型进行一个小型二进制规模和快速初始化/启动的要求满足
跨平台:可以在许多不同的平台上运行,先从Android和iOS开始
高速:对移动设备进行快速优化,包括显著提高模型加载次数,支持硬件加速
架构
组件
TensorFlow 模型:一个保存在磁盘上训练好的TensorFlow 模型
TensorFlow Lite转换器:一个将模型转换为TensorFlow Lite文件格式的程序
TensorFlow 模型文件:基于FlatBuffers格式的模型文件,已针对最大速度和最小尺寸进行了优化
现在越来越多的移动设备使用特制的定制硬件来更有效地处理ML的工作负载”。因此,它支持使用Android 8.1开发者预览版的Android神经网络API。即使没有加速器硬件,TensorFlow Lite也可以在CPU上运行。
虽然你可以通过基于TensorFlow Lite的应用程序来处理设备上的新数据,但在这一点上,实际上不可能在设备本身上训练新的机器学习模型。在它目前的形式中,TensorFlow Lite支持推理而不是训练。