TensorFlow Mobile

2025年3月17日 | 阅读 3 分钟

TensorFlow Mobile 主要用于 Android 和 iOS 等移动平台。它适用于拥有成功的 TensorFlow 模型的开发者,他们希望将模型集成到移动环境中。它也适用于无法使用 TensorFlow Lite 的开发者。任何人在将桌面环境模型集成到移动环境中时都可能遇到的主要挑战是

  • 了解如何使用 TensorFlow Mobile。
  • 他们正在为移动平台构建模型。
  • 他们正在将 TensorFlow 库添加到他们的移动应用程序中。
  • 准备模型文件。
  • 优化二进制文件大小、文件大小、RAM 使用率等。

使用移动机器学习的案例

与 TensorFlow 相关的开发人员在高性能 GPU 上使用它。但是,通过网络连接发送所有设备数据是一种非常耗时且昂贵的方式。在任何移动设备上运行它是一种简单的方法。

TensorFlow Mobile

1) TensorFlow 中的图像识别:这是一种检测或获取使用移动设备捕获的图像的方法。如果用户正在拍照以了解其中内容,则可以应用适当的滤镜或对其进行标记,以便在需要时找到它们。

2) TensorFlow 语音识别:可以使用语音驱动的界面构建各种应用程序。很多时候,用户无法提供指令,因此将其连续流式传输到服务器会造成很多问题。

3) TensorFlow 中的手势识别:它用于借助手或其他手势通过分析传感器数据来控制应用程序。我们借助 TensorFlow 来做到这一点。

光学字符识别 (OCR)、翻译、文本分类、语音识别等的示例。

TensorFlow Lite

TensorFlow Lite 是轻量级版本,专为移动平台和嵌入式设备设计。它为移动设备提供具有低延迟和小二进制大小的机器学习解决方案。

TensorFlow 支持一组已针对移动平台调整的核心操作符。它还支持模型中的自定义操作。

TensorFlow Lite 教程解释了一种基于 Flat Buffers 的新文件格式,它是一个开源平台序列化库。它包含任何新的移动解释器,用于保持应用程序更小、更快。它使用自定义内存分配器来最大限度地减少加载和执行延迟。

Tensorflow lite 的架构

TensorFlow Mobile 1

磁盘上经过训练的 TensorFlow 模型可以使用 TensorFlow Lite 转换器转换为 TensorFlow Lite 文件格式。然后,我们在移动应用程序中使用该转换后的文件。

用于部署 lite 模型文件

  • Java API:它是 Android 上 C++ API 的包装器。
  • C++ API:它可以加载 lite 模型并调用解释器。
  • 解释器:它执行模型。它使用选择性内核加载,这是 TensorFlow 中 Lite 的一个独特功能。

我们也可以使用 C++ API 实现自定义内核。

以下是关于 TensorFlow Lite 的几点

它支持一组已针对移动平台调整的操作符。 TensorFlow 还支持模型中的自定义操作。

  • 它是一种基于 Flat Buffers 的新文件格式。
  • 它是一个设备上的解释器,使用选择性加载技术。
  • 当所有支持的操作符都链接时,TensorFlow Lite 小于 300kb。
  • 它支持 Java 和 C++ API。

TensorFlow Lite vs. TensorFlow Mobile

正如我们所看到的,TensorFlow Lite 和 TensorFlow Mobile 是什么,以及它们如何在移动环境和嵌入式系统中支持 TensorFlow,我们知道它们之间的区别。以下给出了 TensorFlow Mobile 和 TensorFlow Lite 之间的区别

  • 它是 TensorFlow Mobile 的下一个版本。主要,在 TensorFlow lite 上开发的应用程序将比 TensorFlow Mobile 具有更好的性能和更小的二进制文件。
  • 它仍处于早期阶段,因此并非涵盖所有情况,而 TensorFlow Mobile 则不然。
  • TensorFlow Lite 支持特定的一组操作符。因此,并非所有模型都将默认在 TensorFlow Lite 上运行。