当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.saved_model.SaveOptions用法及代码示例


保存到 SavedModel 的选项。

用法

tf.saved_model.SaveOptions(
    namespace_whitelist=None, save_debug_info=False, function_aliases=None,
    experimental_io_device=None, experimental_variable_policy=None,
    experimental_custom_gradients=True
)

参数

  • namespace_whitelist 保存模型时要列入白名单的包含操作命名空间的字符串列表。保存使用命名空间操作的对象必须将所有命名空间显式添加到白名单中。加载 SavedModel 时,必须将命名空间操作注册到框架中。如果没有提供白名单,则所有命名空间的操作都将被允许。
  • save_debug_info 指示是否保存调试信息的布尔值。如果为 True,则将使用 GraphDebugInfo 二进制协议缓冲区的内容写入 debug/saved_model_debug_info.pb 文件,该缓冲区包含所有已保存操作和函数的堆栈跟踪信息。
  • function_aliases Python 字典。从字符串映射到 @tf.function 返回的对象。单个 tf.function 可以生成多个 ConcreteFunction。如果下游工具想要引用单个 tf.function 生成的所有具体函数,您可以使用function_aliases参数来存储从别名到所有具体函数名的映射。例如:
    class Adder(tf.Module):
      @tf.function
      def double(self, x):
        return x + x
    model = Adder()
    model.double.get_concrete_function(
      tf.TensorSpec(shape=[], dtype=tf.float32, name="float_input"))
    model.double.get_concrete_function(
      tf.TensorSpec(shape=[], dtype=tf.string, name="string_input"))
    options = tf.saved_model.SaveOptions(
      function_aliases={'double':model.double})
    tf.saved_model.save(model, '/tmp/adder', options=options)
  • experimental_io_device String 。适用于分布式设置。用于访问文件系统的 TensorFlow 设备。如果None(默认)然后对于每个变量,从分配该变量的主机的 CPU:0 设备访问文件系统。如果指定,则改为从该设备访问文件系统以获取所有变量。

    例如,如果您想保存到本地目录,例如在分布式设置中运行时的"/tmp",这很有用。在这种情况下,为可以访问"/tmp" 目录的主机传递一个设备。

  • experimental_variable_policy 保存时应用于变量的策略。这是一个 saved_model.experimental.VariablePolicy 枚举实例或其值字符串之一(大小写不重要)。有关详细信息,请参阅该枚举文档。 None 的值对应于默认策略。
  • experimental_custom_gradients 布尔值。当为 True 时,将为 tf.custom_gradient 修饰的函数保存跟踪的梯度函数。默认为 True

属性

  • experimental_custom_gradients
  • experimental_io_device
  • experimental_variable_policy
  • function_aliases
  • namespace_whitelist
  • save_debug_info

此函数可用于保存 SavedModel (tf.saved_model.savetf.keras.models.save_model) 的函数中的 options 参数。

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.saved_model.SaveOptions。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。