tensorflow lite 转换失败。 “未定义符号:_ZTIN10tensorflow6DeviceE”发生

Posted

技术标签:

【中文标题】tensorflow lite 转换失败。 “未定义符号:_ZTIN10tensorflow6DeviceE”发生【英文标题】:tensorflow lite conversion failed. "undefined symbol : _ZTIN10tensorflow6DeviceE" occured 【发布时间】:2020-04-16 19:37:31 【问题描述】:
tflite_model = converter.convert()
tflite_model_file = 'converted_model.tflite'

with open(tflite_model_file, "wb") as f:
  f.write(tflite_model)

当我最终在点转换方法中转换模型时, 我遇到了一些错误。

错误信息:

ValueError: Failed to parse the model: /tensorflow-2.1.0/python3.6/tensorflow_core/lite/python/optimize/_tensorflow_lite_wrap_calibration_wrapper.so: undefined symbol: _ZTIN10tensorflow6DeviceE.

源代码:

https://colab.research.google.com/github/tensorflow/examples/blob/master/courses/udacity_intro_to_tensorflow_lite/tflite_c02_transfer_learning.ipynb#scrollTo=BbTF6nd1KG2o

即使我没有找到是什么

_ZTIN10tensorflow6DeviceE

如何转换迁移学习模型?

【问题讨论】:

【参考方案1】:

我遇到了同样的问题 - 安装 nightly build(当前为“2.1.0-dev20200104”)解决了它。

!pip3 uninstall tensorflow
!pip3 install tf-nightly

【讨论】:

以上是关于tensorflow lite 转换失败。 “未定义符号:_ZTIN10tensorflow6DeviceE”发生的主要内容,如果未能解决你的问题,请参考以下文章

TensorFlow Lite GPU委托失败

如何将冻结图转换为 TensorFlow lite

面临从 tensorflow core 转换为 tensorflow lite 的问题

将保存的tensorflow模型转换为tensorflow Lite的正确方法是啥

如何创建可轻松转换为 TensorFlow Lite 的模型?

在 Tensorflow 中,将 Google 的 BigTransfer 模型转换为 Tensorflow Lite 时出现错误