tf.keras.layers.TimeDistributed
Этот обертка позволяет применять слой ко всем временным срезам входных данных.
Наследуется от: Wrapper, Layer, Operation
tf.keras.layers.TimeDistributed(
layer, **kwargs
)
Используется в блокнотах
| Используется в руководствах |
|---|
Каждый вход должен быть как минимум 3D, и размерность индекса один первого входа будет рассматриваться как временная размерность.
Рассмотрим пакет из 32 видеопримеров, где каждый пример представляет собой 128x128 RGB-изображение с channels_last форматом данных, на 10 временных шагах. Формат входного пакета — (32, 10, 128, 128, 3).
Затем вы можете использовать TimeDistributed, чтобы применить тот же Conv2D слой к каждому из 10 временных шагов независимо:
inputs = layers.Input(shape=(10, 128, 128, 3), batch_size=32) conv_2d_layer = layers.Conv2D(64, (3, 3)) outputs = layers.TimeDistributed(conv_2d_layer)(inputs) outputs.shape (32, 10, 126, 126, 64)
Поскольку TimeDistributed применяет тот же экземпляр Conv2D к каждому из временных штампов, один и тот же набор весов используется в каждом временном штампе.
| Аргументы | |
|---|---|
layer | экземпляр keras.layers.Layer. |
| Аргументы вызова | |
|---|---|
inputs | Входной тензор формы (batch, time, ...) или вложенные тензоры, каждый из которых имеет форму (batch, time, ...). |
training | Булево значение Python, указывающее, должен ли слой работать в режиме обучения или в режиме инференции. Этот аргумент передается обернутому слою (только если слой поддерживает этот аргумент). |
mask | Двоичный тензор формы (samples, timesteps), указывающий, должен ли быть замаскирован данный временной шаг. Этот аргумент передается обернутому слою (только если слой поддерживает этот аргумент). |
| Атрибуты | |
|---|---|
input | Извлекает входной(ые) тензор(ы) символической операции. Возвращает только тензор(ы), соответствующий(ие) первому вызову операции. |
output | Извлекает выходной(ые) тензор(ы) слоя. Возвращает только тензор(ы), соответствующий(ие) первому вызову операции. |
Методы
from_config
@classmethod
from_config(
config, custom_objects=None
)
Создает слой из его конфигурации.
Этот метод является обратным get_config, способным создать тот же слой из словаря конфигурации. Он не обрабатывает связность слоев (обрабатывается сетью), а также веса (обрабатываются set_weights).
| Аргументы | |
|---|---|
config | Словарь Python, обычно выходной результат get_config. |
| Возвращаемое значение | |
|---|---|
| Экземпляр слоя. |
symbolic_call
symbolic_call(
*args, **kwargs
)
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/keras/layers/TimeDistributed