tf.keras.layers.TimeDistributed
Эта оболочка позволяет применять слой к каждому временному срезу входных данных.
Наследует: Wrapper, Layer, Operation
tf.keras.layers.TimeDistributed(
layer, **kwargs
)
Используется в блокнотах
| Используется в руководствах |
|---|
Каждый входной тензор должен иметь размерность не менее 3, а размерность с индексом 1 первого входного тензора считается временной.
Рассмотрим пакет из 32 видеосэмплов, где каждый сэмпл представляет собой RGB-изображение размером 128x128 с форматом данных 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 и позволяет создать тот же слой из словаря конфигурации. Он не обрабатывает связи слоёв (это делает Network) и веса (это делает 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