Атрибут inputs
Атрибут inputs класса Model возвращает список входных тензоров модели.
Он доступен после того, как модель была построена: либо через явное указание
входов при создании функциональной модели, либо автоматически после первого
вызова метода build или fit. Атрибут не принимает параметров и
возвращает список объектов KerasTensor. Если у модели один вход,
список будет содержать один элемент. Для моделей, еще не построенных,
значение атрибута может быть пустым списком.
Синтаксис
model.inputs
Пример
Давайте создадим функциональную модель с двумя входами и посмотрим,
что вернет атрибут inputs:
import tensorflow as tf
input_a = tf.keras.Input(shape=(3,), name='input_a')
input_b = tf.keras.Input(shape=(3,), name='input_b')
merged = tf.keras.layers.Concatenate()([input_a, input_b])
output = tf.keras.layers.Dense(1)(merged)
model = tf.keras.Model(inputs=[input_a, input_b], outputs=output)
print(model.inputs)
Результат выполнения кода:
[<KerasTensor shape=(None, 3), dtype=float32, sparse=False, name=input_a>, <KerasTensor shape=(None, 3), dtype=float32, sparse=False, name=input_b>]
Пример
Давайте получим имена и формы входных тензоров модели:
Результат выполнения кода:
input_a (None, 5)
Пример
Давайте проверим, что вернет атрибут inputs у последовательной
модели до ее построения:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(4, input_shape=(3,)),
tf.keras.layers.Dense(1)
])
print(model.inputs)
Результат выполнения кода:
[]
После первого вызова модели или метода build атрибут заполнится
входными тензорами.