【问题标题】:TensorFlow Lite: Update existing model or add new one in deployed appTensorFlow Lite:更新现有模型或在部署的应用程序中添加新模型
【发布时间】:2021-04-07 16:39:19
【问题描述】:

我正在创建一个需要使用 TensorFlow Lite 模型进行离线推理的移动应用(使用 Flutter,了解更多详情)。这需要离线的事实意味着模型需要随 APP 一起提供。

我知道如何使用 APP 部署模型(例如,请参阅 this tutorial;那里有很多模型)但是,由于这些模型可能会随着时间的推移而改变 - 例如重新训练以获得更好的新数据准确性,甚至添加了新模型来分析不同的事物 - 找到一种无需更新整个应用程序的方法会很好。

到目前为止,我发现动态更新/添加模型的唯一选项要求 APP 连接到托管模型的外部服务,例如 Firebase,但是当 APP 需要离线运行时,这还不够好。

您对如何做到这一点有什么建议吗?

非常感谢, 迭戈

【问题讨论】:

    标签: flutter tensorflow-lite


    【解决方案1】:

    抱歉,您是说要在没有互联网连接(或网络连接)的情况下更新应用程序(应用程序的一部分)吗?从 Play 商店/应用商店更新应用需要互联网连接。

    • 手动安装新的应用程序更新。这将更新整个应用程序,而不仅仅是模型文件,但这很好,您无需更改任何代码。

      • 在 Android 上:安装新的 APK adb install,然后
      • 在 iOS 上:使用 Adhoc 分发
    • 模型文件选择器和手动模型选择: 或者,您可以在应用程序中添加文件选择器来选择本地模型文件。此模型文件需要在设备上,您可以手动将其复制到设备上(例如,Android 上的 adb push model.tflite,iOS 上的 Airdrop)。

    • 本地网络托管模型:或者您可以从本地网络自动下载模型(仍然“离线”/没有互联网连接)。

    【讨论】:

    • 不,不。要更新应用程序 - 或模型 - 可以连接互联网。我不想要的是需要互联网连接才能使用该应用程序。当一个模型发生变化时更新整个应用程序是我想要避免的:我想将模型保留在设备中,以便它们可以独立更新(或添加新的)。我将研究您建议的第二个和第三个选项,并了解如何动态选择模型文件。
    • 听起来您应该将所有模型与您的应用程序捆绑在一起,然后在它们之间切换。然后你可以让你的逻辑在它们之间切换。您必须提前编写代码。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-02
    相关资源
    最近更新 更多