首页 > 解决方案 > 如何仅将 Tensorflow Lite 模型中的特定层更新到 Android 应用程序中?

问题描述

我有一个自定义的tensorflow.keras.models.ModelCNN 模型,其中包含我打算使用 Tensorflow Litetensorflow.keras.layers部署在Android 应用程序中的层。

我目前正在my_model.save(path_save)使用Python API从已保存的模型(包含 .pb 文件的文件夹、资产文件夹和变量文件夹 - 创建自)转换此模型:

import tensorflow as tf

converter = tf.lite.TFLiteConverter.from_saved_model('./my_model')
tflite_model = converter.convert()
with tf.io.gfile.GFile('my_model.tflite', 'wb') as f:
  f.write(tflite_model)

然后,我使用Firebase 及其 ML Kit在我的应用程序上下载此 TFLite 模型。

但是,我想定期更新此模型(仅涉及几层的更改)而不必全部下载(这是我现在正在做的):这是对资源的浪费,因为我的模型很重,大部分图层根本不会改变。

有没有办法做到这一点?理想情况下,它只会收到一个描述要更改的层的文件。

标签: pythonandroidfirebasetensorflowtensorflow-lite

解决方案


推荐阅读