Метод from_config
Метод from_config класса Layer создает новый экземпляр слоя
на основе словаря конфигурации. Первым параметром метод принимает
словарь config, содержащий параметры слоя. Вторым необязательным
параметром передается функция custom_objects для регистрации
пользовательских объектов. Метод удобно использовать вместе с методом
get_config для сериализации и десериализации слоев.
Синтаксис
Layer.from_config(config, custom_objects=None)
Пример
Давайте создадим слой Dense, получим его конфигурацию
и восстановим слой из этой конфигурации:
import tensorflow as tf
layer = tf.keras.layers.Dense(3, activation='relu')
config = layer.get_config()
print(config)
restored = tf.keras.layers.Dense.from_config(config)
print(restored)
Результат выполнения кода:
{'name': 'dense', 'trainable': True, 'dtype': 'float32', 'units': 3, 'activation': 'relu', 'use_bias': True, 'kernel_initializer': {'module': 'keras.initializers', 'class_name': 'GlorotUniform', 'config': {'seed': None}, 'registered_name': None}, 'bias_initializer': {'module': 'keras.initializers', 'class_name': 'Zeros', 'config': {}, 'registered_name': None}, 'kernel_regularizer': None, 'bias_regularizer': None, 'activity_regularizer': None, 'kernel_constraint': None, 'bias_constraint': None}
<keras.src.layers.core.dense.Dense object at 0x...>
Пример
Давайте восстановим слой из конфигурации и применим его к тензору:
import tensorflow as tf
layer = tf.keras.layers.Dense(3, activation='relu')
config = layer.get_config()
restored = tf.keras.layers.Dense.from_config(config)
t = tf.constant([[1, 2, 3], [4, 5, 6]])
res = restored(t)
print(res)
Результат выполнения кода:
tf.Tensor(
[[0. 0. 0.]
[0. 0. 0.]], shape=(2, 3), dtype=float32)
Смотрите также
-
метод
get_config,
который возвращает конфигурацию слоя -
класс
Layer,
который является базовым классом для всех слоев -
метод
call,
который выполняет прямой проход слоя -
метод
build,
который создает веса слоя