當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。