OSError:SavedModel 文件不存在于:C:\Users\Munib\New 文件夹/saved_model.pbtxt|saved_model.pb
Posted
技术标签:
【中文标题】OSError:SavedModel 文件不存在于:C:\\Users\\Munib\\New 文件夹/saved_model.pbtxt|saved_model.pb【英文标题】:OSError: SavedModel file does not exist at: C:\Users\Munib\New folder/saved_model.pbtxt|saved_model.pbOSError:SavedModel 文件不存在于:C:\Users\Munib\New 文件夹/saved_model.pbtxt|saved_model.pb 【发布时间】:2020-10-03 03:00:07 【问题描述】:我想在 android studio 中使用我的 keras 训练模型。我在互联网上获得了此代码,以将我的代码从 keras 转换为 tensorflow-lite。但是当我尝试代码时,我得到了这个错误:
OSError: SavedModel file does not exist at: C:\Users\Munib\New folder/saved_model.pbtxt|saved_model.pb
我从 keras 转换到 tensorflow-lite 时使用的代码:
import tensorflow as tf
# Converting a SavedModel to a TensorFlow Lite model.
saved_model_dir = r"C:\Users\Munib\New folder"
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
tflite_model = converter.convert()
# Converting a tf.Keras model to a TensorFlow Lite model.
converter = tf.lite.TFLiteConverter.from_keras_model(model)
tflite_model = converter.convert()
# Converting ConcreteFunctions to a TensorFlow Lite model.
converter = tf.lite.TFLiteConverter.from_concrete_functions([func])
tflite_model = converter.convert()
【问题讨论】:
你能解决这个问题吗? ,我也卡住了。 【参考方案1】:首先最好使用相对路径而不是绝对路径。其次,如果您使用model.save('my_model')
,那么 keras 将为您创建一个名为 my_model
的目录,您应该在其中找到一个扩展名为 pb
或 pbtxt
的文件,这是您应该用于 tflite 转换器的目录
【讨论】:
【参考方案2】:我在使用 google Colab 时也遇到了这个问题。看来,我的 Colab 丢失了模型所在的目录路径数据。只需再次运行这两行并重试。希望这能解决问题:
import os
os.chdir("/content/drive/My Drive/path/to/your/model")
【讨论】:
或者只是%cd /content/drive/My Drive/path/to/your/model
应该可以工作以上是关于OSError:SavedModel 文件不存在于:C:\Users\Munib\New 文件夹/saved_model.pbtxt|saved_model.pb的主要内容,如果未能解决你的问题,请参考以下文章
Tensorflow 2,将 .h5 模型转换为 .tflite,缺少 .pb 和 .pbtext
OSError:[Errno 2]没有这样的文件或目录。文件已存在于当前目录中
我应该为不存在的文件参数引发 ValueError 或 OSError 吗?
os.mkdir(path) 在目录不存在时返回 OSError
Python3基础 try-指定except-as reason 捕获打开一个不存在的文件的时候,会产生OSError异常的示例