Spec-Zone.ru › TensorFlow

tf.keras.layers.ConvLSTM2D

2D Сверточная 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). По умолчанию используется значение, найденное в файле конфигурации 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 Случайное семя для дропаута.
return_sequences Булево значение. Возвращает ли слой только последний вывод в последовательности вывода или всю последовательность. По умолчанию: False.
return_state Булево значение. Возвращает ли слой последнее состояние помимо вывода. По умолчанию: False.
go_backwards Булево (по умолчанию: False). Если True, обрабатывайте входную последовательность в обратном порядке и возвращайте обращенную последовательность.
stateful Булево (по умолчанию False). Если True, последнее состояние для каждого образца в индексе i в партии будет использоваться в качестве начального состояния для образца в индексе i в следующей партии.
unroll Булево (по умолчанию: False). Если True, сеть будет развернута, в противном случае будет использоваться символический цикл. Развертывание может ускорить RNN, хотя оно, как правило, более ресурсоёмкое. Развертывание подходит только для коротких последовательностей.
Аргументы вызова
inputs 5D тензор.
mask Бинарный тензор формы (samples, timesteps), указывающий, должен ли быть замаскирован данный временной шаг.
training Булево значение Python, указывающее, должен ли слой работать в режиме обучения или в режиме вывода. Это актуально только если dropout или recurrent_dropout установлены.
initial_state Список тензоров начального состояния, которые должны быть переданы в первый вызов ячейки.

Форма ввода:

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

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

  • Если return_state: список тензоров. Первый тензор — это вывод. Остальные тензоры — это последние состояния, каждый 4D тензор с формой: (samples, filters, new_rows, new_cols), если data_format='channels_first', или формой: (samples, new_rows, new_cols, filters), если data_format='channels_last'. Значения rows и cols могут измениться из-за заполнения.
  • Если return_sequences: 5D тензор с формой: (samples, timesteps, filters, new_rows, new_cols), если data_format='channels_first', или формой: (samples, timesteps, new_rows, new_cols, filters), если data_format='channels_last'.
  • В противном случае, 4D тензор с формой: (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, способным создать тот же слой из словаря конфигурации. Он не обрабатывает соединение слоёв (это обрабатывает сеть), а также веса (это обрабатывает set_weights).

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

get_initial_state

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

get_initial_state(
    batch_size
)

Внутренний цикл

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

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

Сброс состояния

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

reset_state()

Сброс состояний

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

reset_states()

Символический вызов

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

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