Error in importing trained TensorFlow SavedModel using importTensorFlowNetwork function
29 ビュー (過去 30 日間)
古いコメントを表示
I am trying to import a trained tensoflow neural network model. Initially the trained model is in checkpoint format (ckpt). I was able to convert the ckpt to savedModel (pb) format for use in importTensorFlowNetwork function. While running the function I obtain the following error:
>>
unzip('EXP1_pb_model.zip')
net = importTensorFlowNetwork('EXP1_pb_model');
The python code I used to convert the ckpt to pb is as follow:
import os
import tensorflow as tf
trained_checkpoint_prefix = '/exp_1/model.ckpt'
export_dir = os.path.join('model', 'EXP1_model')
graph = tf.Graph()
with tf.compat.v1.Session(graph=graph) as sess:
# Restore from checkpoint
loader = tf.compat.v1.train.import_meta_graph(trained_checkpoint_prefix + '.meta')
loader.restore(sess, trained_checkpoint_prefix)
# Export checkpoint to SavedModel
builder = tf.compat.v1.saved_model.builder.SavedModelBuilder(export_dir)
builder.add_meta_graph_and_variables(sess,
[tf.saved_model.TRAINING, tf.saved_model.SERVING],
strip_default_attrs=True)
builder.save()
Attached are the both the ckpt and pb models.
I would appericiate any help in resolving this issue.
Thanks
0 件のコメント
採用された回答
Anshika Chaurasia
2021 年 9 月 14 日
Hi Iman,
We currently support the import of TF models saved using the Sequential and Funtional Keras Model APIs (https://keras.io/guides/sequential_model/ & https://keras.io/guides/functional_api/ ) . But the models in your case do not use that API to save the model.
The importTensorFlowNetwork look for a graph called "object_graph_def" in the saved model and does not find it if the model was saved as it is in your case (hence the "Unrecognized field" error).
Hope it helps!
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Image Data Workflows についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!