Spec-Zone.ru › TensorFlow

tf.keras.layers.ConvLSTM2D

Двумерный свёрточный LSTM.

Наследует: RNN, Layer, Operation

tf.keras.layers.ConvLSTM2D(
    filters,
    kernel_size,
    strides=1,
    padding='valid',
    data_format=None,
    dilation_rate=1,
    activation='tanh',
    recurrent_activation='sigmoid',
    use_bias=True,
    kernel_initializer='glorot_uniform',
    recurrent_initializer='orthogonal',
    bias_initializer='zeros',
    unit_forget_bias=True,
    kernel_regularizer=None,
    recurrent_regularizer=None,
    bias_regularizer=None,
    activity_regularizer=None,
    kernel_constraint=None,
    recurrent_constraint=None,
    bias_constraint=None,
    dropout=0.0,
    recurrent_dropout=0.0,
    seed=None,
    return_sequences=False,
    return_state=False,
    go_backwards=False,
    stateful=False,
    **kwargs
)

Подобно слою LSTM, но как преобразования входных данных, так и рекуррентные преобразования являются свёрточными.

Аргументы
filters Целое число, размерность пространства выходных данных (количество фильтров свёртки).
kernel_size Целое число или кортеж/список из 2 целых чисел, задающих размер окна свёртки.
strides Целое число или кортеж/список из 2 целых чисел, задающих шаг свёртки. strides > 1 несовместим с dilation_rate > 1.
padding Строка: "valid" или "same" (без учёта регистра). "valid" означает отсутствие дополнения. При значении "same" дополнение равномерно добавляется слева и справа либо сверху и снизу входных данных, чтобы высота и ширина выходных данных совпадали с высотой и шириной входных данных.
data_format Строка: "channels_last" или "channels_first". Порядок размерностей во входных данных. "channels_last" соответствует входным данным с формой (batch, steps, features), а "channels_first" — входным данным с формой (batch, features, steps). По умолчанию используется значение image_data_format из файла конфигурации Keras по пути ~/.keras/keras.json. Если значение не задано, используется "channels_last".
dilation_rate Целое число или кортеж/список из 2 целых чисел, задающих коэффициент разреженной свёртки.
activation Используемая функция активации. По умолчанию применяется гиперболический тангенс (tanh(x)).
recurrent_activation Функция активации для рекуррентного шага.
use_bias Логическое значение, указывающее, использует ли слой вектор смещения.
kernel_initializer Инициализатор матрицы весов kernel, используемой для линейного преобразования входных данных.
recurrent_initializer Инициализатор матрицы весов recurrent_kernel, используемой для линейного преобразования рекуррентного состояния.
bias_initializer Инициализатор вектора смещения.
unit_forget_bias Логическое значение. Если задано True, при инициализации к смещению вентиля забывания добавляется 1. Используйте вместе с bias_initializer="zeros". Это рекомендуется в работе Jozefowicz et al., 2015.
kernel_regularizer Функция регуляризации, применяемая к матрице весов kernel.
recurrent_regularizer Функция регуляризации, применяемая к матрице весов recurrent_kernel.
bias_regularizer Функция регуляризации, применяемая к вектору смещения.
activity_regularizer Функция регуляризации, применяемая к.
kernel_constraint Функция ограничения, применяемая к матрице весов kernel.
recurrent_constraint Функция ограничения, применяемая к матрице весов recurrent_kernel.
bias_constraint Функция ограничения, применяемая к вектору смещения.
dropout Число с плавающей точкой от 0 до 1. Доля элементов, отбрасываемых при линейном преобразовании входных данных.
recurrent_dropout Число с плавающей точкой от 0 до 1. Доля элементов, отбрасываемых при линейном преобразовании рекуррентного состояния.
seed Начальное значение генератора случайных чисел для dropout.
return_sequences Логическое значение. Возвращать ли последний выход последовательности или всю последовательность. По умолчанию: False.
return_state Логическое значение. Возвращать ли последнее состояние вместе с выходными данными. По умолчанию: False.
go_backwards Логическое значение (по умолчанию: False). Если задано True, входная последовательность обрабатывается в обратном порядке и возвращается перевёрнутая последовательность.
stateful Логическое значение (по умолчанию False). Если задано True, последнее состояние каждого примера с индексом i в пакете будет использоваться как начальное состояние примера с индексом i в следующем пакете.
unroll Логическое значение (по умолчанию: False). Если задано True, сеть будет развёрнута; в противном случае будет использоваться символический цикл. Развёртывание может ускорить RNN, однако обычно требует больше памяти. Оно подходит только для коротких последовательностей.
Аргументы вызова
inputs Тензор размерности 5.
mask Двоичный тензор формы (samples, timesteps), указывающий, следует ли маскировать заданный временной шаг.
training Логическое значение Python, указывающее, должен ли слой работать в режиме обучения или вывода. Этот параметр важен только в том случае, если заданы dropout или recurrent_dropout.
initial_state Список тензоров начальных состояний, передаваемых при первом вызове ячейки.

Форма входных данных:

  • Если data_format='channels_first': тензор размерности 5 с формой: (samples, time, channels, rows, cols)
  • Если data_format='channels_last': тензор размерности 5 с формой: (samples, time, rows, cols, channels)

Форма выходных данных:

  • Если return_state: список тензоров. Первый тензор — выходной. Остальные тензоры — последние состояния; каждый из них имеет размерность 4 и форму (samples, filters, new_rows, new_cols) при data_format='channels_first' или форму (samples, new_rows, new_cols, filters) при data_format='channels_last'. Значения rows и cols могли измениться из-за дополнения.
  • Если return_sequences: тензор размерности 5 с формой (samples, timesteps, filters, new_rows, new_cols) при data_format='channels_first' или формой (samples, timesteps, new_rows, new_cols, filters) при data_format='channels_last'.
  • Иначе: тензор размерности 4 с формой (samples, filters, new_rows, new_cols) при data_format='channels_first' или формой (samples, new_rows, new_cols, filters) при data_format='channels_last'.

Ссылки:

  • Shi et al., 2015 (текущая реализация не включает обратную связь по выходу ячеек).
Атрибуты
activation
bias_constraint
bias_initializer
bias_regularizer
data_format
dilation_rate
dropout
filters
input Возвращает входной тензор или тензоры символьной операции.

Возвращает только тензор или тензоры, соответствующие первому вызову операции.

kernel_constraint
kernel_initializer
kernel_regularizer
kernel_size
output Возвращает выходной тензор или тензоры слоя.

Возвращает только тензор или тензоры, соответствующие первому вызову операции.

padding
recurrent_activation
recurrent_constraint
recurrent_dropout
recurrent_initializer
recurrent_regularizer
strides
unit_forget_bias
use_bias

Методы

from_config

Просмотреть исходный код

@classmethod
from_config(
    config
)

Создаёт слой на основе его конфигурации.

Этот метод является обратным к get_config и позволяет создать такой же слой на основе словаря конфигурации. Он не обрабатывает связи между слоями (это делает Network) и веса (это делает set_weights).

Аргументы
config Словарь Python, обычно являющийся результатом вызова get_config.
Возвращает
Экземпляр слоя.

get_initial_state

Просмотреть исходный код

get_initial_state(
    batch_size
)

inner_loop

Просмотреть исходный код

inner_loop(
    sequences, initial_state, mask, training=False
)

reset_state

Просмотреть исходный код

reset_state()

reset_states

Просмотреть исходный код

reset_states()

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/ConvLSTM2D

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API