克隆函数或顺序Model
实例。
用法
tf.keras.models.clone_model(
model, input_tensors=None, clone_function=None
)
参数
-
model
Model
的实例(可以是函数模型或顺序模型)。 -
input_tensors
用于构建模型的输入张量或 InputLayer 对象的可选列表。如果未提供,将创建新的Input
对象。 -
clone_function
可调用以用于克隆目标模型中的每一层(InputLayer
实例除外)。它将要克隆的层实例作为参数,并返回要在模型副本中使用的相应层实例。如果未指定,则此可调用默认为以下序列化/反序列化函数:lambda layer:layer.__class__.from_config(layer.get_config())
。通过传递自定义可调用对象,您可以自定义模型副本,例如通过包装某些感兴趣的层(例如,您可能希望将所有LSTM
实例替换为等效的Bidirectional(LSTM(...))
实例)。
返回
-
Model
的一个实例,使用新实例化的权重在新输入张量之上再现原始模型的行为。如果自定义clone_function
修改图层,则克隆模型的行为可能与原始模型不同。
模型克隆类似于在新输入上调用模型,不同之处在于它创建新层(并因此产生新权重)而不是共享现有层的权重。
请注意,clone_model
不会保留模型内共享对象的唯一性(例如,附加到两个不同层的单个变量将恢复为两个单独的变量)。
例子:
# Create a test Sequential model.
model = keras.Sequential([
keras.Input(shape=(728,)),
keras.layers.Dense(32, activation='relu'),
keras.layers.Dense(1, activation='sigmoid'),
])
# Create a copy of the test model (with freshly initialized weights).
new_model = clone_model(model)
请注意,不能克隆子类模型,因为它们的内部层结构是未知的。要在子类模型的情况下实现与 clone_model
等效的函数,只需确保模型类实现 get_config()
(以及可选的 from_config()
),然后调用:
new_model = model.__class__.from_config(model.get_config())
相关用法
- Python tf.keras.models.save_model用法及代码示例
- Python tf.keras.models.model_from_json用法及代码示例
- Python tf.keras.models.load_model用法及代码示例
- Python tf.keras.models.model_from_config用法及代码示例
- Python tf.keras.metrics.Mean.merge_state用法及代码示例
- Python tf.keras.metrics.Hinge用法及代码示例
- Python tf.keras.metrics.SparseCategoricalAccuracy.merge_state用法及代码示例
- Python tf.keras.metrics.RootMeanSquaredError用法及代码示例
- Python tf.keras.metrics.SparseCategoricalCrossentropy.merge_state用法及代码示例
- Python tf.keras.metrics.sparse_categorical_accuracy用法及代码示例
- Python tf.keras.metrics.FalseNegatives用法及代码示例
- Python tf.keras.metrics.TrueNegatives用法及代码示例
- Python tf.keras.metrics.RecallAtPrecision.merge_state用法及代码示例
- Python tf.keras.metrics.SpecificityAtSensitivity用法及代码示例
- Python tf.keras.metrics.Mean用法及代码示例
- Python tf.keras.metrics.poisson用法及代码示例
- Python tf.keras.metrics.LogCoshError用法及代码示例
- Python tf.keras.metrics.MeanSquaredLogarithmicError用法及代码示例
- Python tf.keras.metrics.FalsePositives.merge_state用法及代码示例
- Python tf.keras.metrics.OneHotMeanIoU.merge_state用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.keras.models.clone_model。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。