tf.keras.layers.TimeDistributed
| Просмотреть исходный код на GitHub |
Этот обертка позволяет применять слой к каждому временной срезу входных данных.
Наследуется от: Wrapper
tf.keras.layers.TimeDistributed(
layer, **kwargs
)
Входные данные должны быть как минимум 3D, а размерность индекса один будет рассматриваться как временная размерность.
Рассмотрим пакет из 32 образцов, где каждый образец представляет собой последовательность из 10 векторов по 16 измерений. Формат входных данных для слоя в пакете тогда (32, 10, 16), а input_shape, не считая размерность образцов, составляет (10, 16).
Затем вы можете использовать TimeDistributed для применения Dense слоя к каждому из 10 временных шагов независимо:
# as the first layer in a model model = Sequential() model.add(TimeDistributed(Dense(8), input_shape=(10, 16))) # now model.output_shape == (None, 10, 8)
Вывод будет иметь форму (32, 10, 8).
В последующих слоях нет необходимости в input_shape:
model.add(TimeDistributed(Dense(32))) # now model.output_shape == (None, 10, 32)
Вывод будет иметь форму (32, 10, 32).
TimeDistributed может использоваться с произвольными слоями, а не только с Dense, например, со слоем Conv2D:
model = Sequential()
model.add(TimeDistributed(Conv2D(64, (3, 3)),
input_shape=(10, 299, 299, 3)))
| Аргументы | |
|---|---|
layer | экземпляр слоя. |
Аргументы вызова:
-
inputs: Входной тензор. -
training: Булево значение Python, указывающее, должен ли слой работать в режиме обучения или в режиме вывода. Этот аргумент передаётся в обернутый слой (только если слой поддерживает этот аргумент). -
mask: Двоичный тензор формы(samples, timesteps), указывающий, должен ли быть замаскирован данный временной шаг. Этот аргумент передаётся в обернутый слой (только если слой поддерживает этот аргумент).
| Исключения | |
|---|---|
ValueError | Если инициализация не выполнена с экземпляром Layer. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/keras/layers/TimeDistributed