我有一个tf.saved_model.save保存的tensorflow模型。它生成一个保存saved_model.pb文件的目录。我可以用这样的输入推断
model_loaded=tf.saved_model.load(model_directory)
infer = model_loaded.signatures["serving_default"]
infer(inputs)model_directory保存这些文件夹和文件-- assets、saved_model.pb、variables。
我还可以使用以下方法列出model_loaded对象的属性
print(dir(model_loaded))产出如下:
['__call__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_add_trackable_child', '_add_variable_with_custom_getter', '_checkpoint_dependencies', '_default_save_signature', '_deferred_dependencies', '_delete_tracking', '_deserialization_dependencies', '_deserialize_from_proto', '_export_to_saved_model_graph', '_gather_saveables_for_checkpoint', '_get_legacy_saved_model_children', '_handle_deferred_dependencies', '_list_extra_dependencies_for_serialization', '_list_functions_for_serialization', '_lookup_dependency', '_map_resources', '_maybe_initialize_trackable', '_name_based_attribute_restore', '_name_based_restores', '_no_dependency', '_object_identifier', '_preload_simple_restoration', '_restore_from_checkpoint_position', '_restore_from_tensors', '_self_name_based_restores', '_self_saveable_object_factories', '_self_setattr_tracking', '_self_unconditional_checkpoint_dependencies', '_self_unconditional_deferred_dependencies', '_self_unconditional_dependency_names', '_self_update_uid', '_serialize_to_proto', '_serialize_to_tensors', '_setattr_tracking', '_single_restoration_from_checkpoint_position', '_tf_api_names', '_tf_api_names_v1', '_track_trackable', '_trackable_children', '_unconditional_checkpoint_dependencies', '_unconditional_dependency_names', '_update_uid', 'call_and_return_all_conditional_losses', 'graph_debug_info', 'keras_api', 'layer-0', 'layer-1', 'layer-10', 'layer-11', 'layer-12', 'layer-13', 'layer-14', 'layer-15', 'layer-2', 'layer-3', 'layer-4', 'layer-5', 'layer-6', 'layer-7', 'layer-8', 'layer-9', 'layer_with_weights-0', 'layer_with_weights-1', 'layer_with_weights-2', 'layer_with_weights-3', 'layer_with_weights-4', 'layer_with_weights-5', 'optimizer', 'regularization_losses', 'signatures', 'tensorflow_git_version', 'tensorflow_version', 'trainable_variables', 'variables']我是否可以加载模型体系结构对象和模型权重(可能是一个可以显示像这个model.summary()这样的模型体系结构的对象)。
发布于 2022-08-30 17:02:32
您单独使用tensorflow保存了它,但是,如果有机会,您可以使用keras将它加载回。
来自TensorFlow 文档
Keras模型是可跟踪的,因此可以保存到SavedModel中。
tf.saved_model.load返回的对象不是Keras对象(即没有.fit、.predict等方法)。一些属性和函数仍然可用:.variables、.trainable_variables和.__call__。 使用tf.keras.models.load_model恢复Keras模型。
此时,您应该得到所需的所有额外的keras函数。
https://stackoverflow.com/questions/73526749
复制相似问题