在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
TensorFlow Lite是TensorFlow针对移动和嵌入式设备的轻量级解决方案。它使设备上的机器学习预测具有低延迟和小的二进制大小。 TensorFlow Lite还支持硬件加速Android神经网络API。 TensorFlow Lite使用许多技术来实现低延迟,如优化移动应用程序的内核,pre-fused激活以及允许更小和更快的(fixed-point数学)模型的量化内核。 目前,我们的TensorFlow Lite文档大部分在Github上。 TensorFlow Lite包含什么?TensorFlow Lite支持一系列数量化和浮点的核心运算符,这些核心运算符已针对移动平台进行了优化。它们结合pre-fused激活和偏差来进一步提高性能和量化精度。此外,TensorFlow Lite还支持在模型中使用自定义操作。 TensorFlow Lite定义了一个新的模型文件格式,基于FlatBuffers。 FlatBuffers是一个开源的高效的跨平台序列化库。它与协议缓冲区类似,但主要区别在于,FlatBuffers在访问数据之前不需要解析/解包步骤到二级表示,通常与per-object内存分配结合使用。此外,FlatBuffers的代码尺寸比协议缓冲区小一个数量级。 TensorFlow Lite有一个新的基于移动设备优化的解释器,其主要目标是保持应用程序的精简和快速。解释器使用静态图形排序和自定义(less-dynamic)内存分配器来确保最小的负载,初始化和执行延迟。 TensorFlow Lite提供了一个接口来利用硬件加速(如果在设备上可用)。它是通过Android神经网络库,作为Android O-MR1的一部分发布的。 为什么我们需要一个新的移动专用(mobile-specific)库?机器学习正在改变计算模式,我们看到了移动和嵌入式设备上新用例的新趋势。消费者的期望也趋向于与他们的设备自然而友好地互动,由相机和语音交互模式驱动。 有几个因素促成了这个领域的兴趣:
我们相信下一波机器学习应用将在移动和嵌入式设备上进行重要的处理。 TensorFlow Lite开发人员预览亮点TensorFlow Lite可作为开发人员预览的点,包括以下内容:
入门建议使用上述的pre-tested模型试用TensorFlow Lite。如果有一个现有的模型,则需要测试模型是否兼容转换器和支持的操作集。要测试你的模型,请看GitHub上的文档。 为自定义数据集重新设置Inception-V3或MobileNet上面提到的pre-trained模型已经在ImageNet数据集上进行了训练,该数据集由1000个预定义的类组成。如果这些类不适合您的用例,那么您需要重新训练这些模型。这种技术被称为转移学习(transfer learning),它从一个已经被训练过的问题的模型开始,然后在类似的问题上进行再训练。从头开始深入学习可能需要几天,但转移学习可以很快完成。为了做到这一点,您需要生成标有相关类的自定义数据集。 TensorFlow for Poets codelab 一步一步走读了这个过程。再训练代码支持浮点和量化推理的再训练。 TensorFlow Lite架构下图显示了TensorFlow Lite的架构设计: 从训练有素的TensorFlow模型开始,您将把模型转换为TensorFlow Lite文件格式( 部署TensorFlow Lite模型文件使用:
您也可以使用解释器可以使用的C++ API来实现定制的内核。 未来的工作在未来的版本中,TensorFlow Lite将支持更多的模型和内置运算符,包含定点和浮点模型的性能改进,改进工具以简化开发人员工作流程以及支持其他更小的设备等等。随着我们的不断发展,我们希望TensorFlow Lite能够大大简化针对小型设备定位模型的开发者体验。 未来的计划包括使用专门的机器学习硬件,以获得特定设备上特定型号的最佳性能。 下一步对于开发人员的预览,我们的大部分文档都在GitHub上。请看看TensorFlow Lite库在GitHub上获取更多信息和代码示例,演示应用程序等等。 参考资料
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13