微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

保存 Tensorflow 模型时出现分段错误

如何解决保存 Tensorflow 模型时出现分段错误

我有一个 python 代码,它从磁盘加载一个已经保存的 Tensorflow 模型,重新训练模型并将其保存回不同文件夹下的磁盘。但我得到 Segmentation fault 保存步骤中的错误。我将粘贴我的代码的一部分,用于表示流程:

# Load an already saved model
model = tf.keras.models.load_model('M1')

# Re-train the model on some newly available dataset.
# ds_train and ds_val are TF datasets
callback = tf.keras.callbacks.EarlyStopping(monitor='val_loss',patience=4,restore_best_weights=True)
model.fit(ds_train,epochs=30,validation_data=ds_val,callbacks=[callback])

# Save the re-trained model back to disk
# This is the part of code causing the error
model.save('M2')

模型的加载,模型的重新训练运行顺利。在保存模型时,我遇到了分段错误。在启用 faulthandler

后,我粘贴了下面获得的错误堆栈跟踪
Fatal Python error: Segmentation fault

Current thread 0x00007fa9f06c5740 (most recent call first):
File "lib/python3.5/site-packages/tensorflow/python/ops/resource_variable_ops.py",line 68 in get_resource_handle_data
File "lib/python3.5/site-packages/tensorflow/python/ops/custom_gradient.py",line 65 in copy_handle_data
File "lib/python3.5/site-packages/tensorflow/python/eager/function.py",line 590 in call
File "lib/python3.5/site-packages/tensorflow/python/eager/function.py",line 1938 in _call_flat
File "lib/python3.5/site-packages/tensorflow/python/eager/function.py",line 1848 in _filtered_call
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 846 in _call
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 780 in __call__
File "lib/python3.5/site-packages/tensorflow/python/training/tracking/tracking.py",line 262 in _creator
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 600 in wrapped_fn
File "lib/python3.5/site-packages/tensorflow/python/framework/func_graph.py",line 986 in func_graph_from_py_func
File "lib/python3.5/site-packages/tensorflow/python/eager/function.py",line 3075 in _create_graph_function
File "lib/python3.5/site-packages/tensorflow/python/eager/function.py",line 3213 in _maybe_define_function
File "lib/python3.5/site-packages/tensorflow/python/eager/function.py",line 2855 in _get_concrete_function_internal_garbage_collected
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 697 in _initialize
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 1073 in _get_concrete_function_garbage_collected
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 1167 in get_concrete_function
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 1012 in _list_all_concrete_functions
File "lib/python3.5/site-packages/tensorflow/python/eager/def_function.py",line 1030 in _list_all_concrete_functions_for_serialization
File "lib/python3.5/site-packages/tensorflow/python/saved_model/save.py",line 216 in __init__
File "lib/python3.5/site-packages/tensorflow/python/saved_model/save.py",line 1061 in _build_Meta_graph
File "lib/python3.5/site-packages/tensorflow/python/saved_model/save.py",line 976 in save
File "lib/python3.5/site-packages/tensorflow/python/keras/saving/saved_model/save.py",line 80 in save
File "lib/python3.5/site-packages/tensorflow/python/keras/saving/save.py",line 134 in save_model
File "lib/python3.5/site-packages/tensorflow/python/keras/engine/training.py",line 1979 in save
File "model_preparation.py",line 495 in save_model

我正在使用 python3.8tensorflow 2.3.0。我也尝试了 python3.5tensorflow 2.4.0 的组合,但它抛出了相同的错误

任何帮助将不胜感激。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。