Метод get_layer
Метод get_layer класса Model возвращает объект слоя, входящего в состав модели. Первым параметром передаётся имя слоя в виде строки или его порядковый индекс в списке слоёв. Вторым необязательным параметром можно передать индекс, который используется, если слой был вызван несколько раз и имеет несколько узлов в графе вычислений.
Синтаксис
model.get_layer(name=None, index=None)
Пример
Давайте создадим простую модель с несколькими слоями и получим первый слой по его имени:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(4, name='hidden'),
tf.keras.layers.Dense(2, name='output')
])
model.build(input_shape=(None, 3))
layer = model.get_layer('hidden')
print(layer)
Результат выполнения кода:
<keras.src.layers.core.dense.Dense object at 0x...>
Пример
Давайте получим слой по его индексу и выведем его имя:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(4, name='hidden'),
tf.keras.layers.Dense(2, name='output')
])
model.build(input_shape=(None, 3))
layer = model.get_layer(index=1)
print(layer.name)
Результат выполнения кода:
"output"
Пример
Давайте получим слой по имени и выведем количество его параметров:
<+python+>
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(4, name='hidden'),
tf.keras.layers.Dense(2, name='output')
])
model.build(input_shape=(None, 3))
layer = model.get_layer('hidden')
print(len(layer.get_weights()))
<-python+>
Результат выполнения кода:
2
Смотрите также
-
класс
Model,
который представляет модель TensorFlow -
атрибут
layers,
который содержит список слоёв модели -
метод
summary,
который выводит структуру модели -
метод
get_weights,
который возвращает веса слоёв модели