当前位置: 首页 > 知识库问答 >
问题:

Tensorflow Lite模型输出的值比Tensorflow模型更大

丁慈
2023-03-14

我在Tensorflow中训练了一个模型,因此可以产生的最大产出值为1.0。然后我将其转换为Tensorflow Lite以安装在android上,现在Tensorflow Lite模型产生的值远大于1.0。我可以做些什么来解决这个问题?

我用的是Tensorflow 2.5

tf模型-

converter = tf.lite.TFLiteConverter.from_saved_model("/content/drive/MyDrive/savedmodel")
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_quant_model = converter.convert()
ite_models_dir = pathlib.Path("/content/drive/MyDrive/tflite_models/")
tflite_models_dir.mkdir(exist_ok=True, parents=True)

tflite_model_quant_file = tflite_models_dir/"model_temp_quant.tflite"
tflite_model_quant_file.write_bytes(tflite_quant_model)

共有2个答案

戚晨
2023-03-14

我找到了解决方案。在我的Tensorflow模型中,我有一些无法转换为Tensorflow Lite模型的操作。这是关于操作转换的指南https://www.tensorflow.org/lite/guide/ops_compatibility.我现在更改了它们,一切都转换正确。

魏航
2023-03-14

您应该显示有关如何转换模型的更多详细信息,可能是预处理和后处理。错误的输出可能来自它们。

 类似资料:
  • 我训练了一个模型,输入了张量:输入形状:[150]输入类型: 在输出中,该张量为:输出形状:[1 50 17]输出类型: 如何在Java中创建这些?在Android设备上使用它?谢谢

  • 模板输出 模型数据的模板输出可以直接把模型对象实例赋值给模板变量,在模板中可以直接输出,例如: <?php namespace app\index\controller; use app\index\model\User; use think\Controller; class Index extends Controller { public function index()

  • 我使用的是tensorflow 1.10 Python 3.6 我的代码基于TensorFlow提供的预制虹膜分类模型。这意味着,我使用的是一个Tensorflow DNN预制的分类器,区别如下: 10个功能改为4个。 5个类改为3个。 我做了一个代码将这个分类器导出为tflite格式,但是python模型中的准确率高于75%,但是当导出时,准确率大约下降到45%,这意味着大约30%的准确率丢失了

  • 问题内容: 我在Keras的最后一层中使用一些tensorflow函数(reduce_sum和l2_normalize)构建模型,而遇到此问题。我一直在寻找解决方案,但所有解决方案都与“ Keras张量”有关。 这是我的代码: 然后是错误: ValueError:模型的输出张量必须是TensorFlow的输出(因此保留过去的层元数据)。找到:Tensor(“ l2_normalize_3:0”,s

  • 假设在一个在线商店的应用系统中需要一个HTML页面,和下面这个页面类似: <html> <head> <title>Welcome!</title> </head> <body> <h1>Welcome John Doe!</h1> <p>Our latest product: <a href="products/greenmouse.html">green mouse</a>!