Spec-Zone.ru › TensorFlow 2.4

tf.keras.layers.Conv2DTranspose

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

Слой транспонированной свёртки (иногда называется обратной свёрткой).

Наследуется от: Conv2D, Layer, Module

Просмотр псевдонимов

Основные псевдонимы

tf.keras.layers.Convolution2DTranspose

Псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.keras.layers.Conv2DTranspose, tf.compat.v1.keras.layers.Convolution2DTranspose

tf.keras.layers.Conv2DTranspose(
    filters, kernel_size, strides=(1, 1), padding='valid',
    output_padding=None, data_format=None, dilation_rate=(1, 1), activation=None,
    use_bias=True, kernel_initializer='glorot_uniform',
    bias_initializer='zeros', kernel_regularizer=None,
    bias_regularizer=None, activity_regularizer=None, kernel_constraint=None,
    bias_constraint=None, **kwargs
)

Потребность в транспонированных свёртках обычно возникает из-за желания использовать преобразование, направленное в противоположном направлении нормальной свёртки, т. е. из чего-то, имеющего форму выходных данных некоторой свёртки, в нечто, имеющее форму её входных данных, при сохранении шаблона связей, совместимого с данной свёрткой.

При использовании этого слоя в качестве первого слоя в модели, укажите ключевой аргумент input_shape (кортеж целых чисел, не включая ось образца), например, input_shape=(128, 128, 3) для изображений 128x128 RGB в data_format="channels_last".

Аргументы
filters Целое число, размерность выходного пространства (т. е. количество выходных фильтров в свёртке).
kernel_size Целое число или кортеж/список из 2 целых чисел, определяющий высоту и ширину окна 2D-свёртки. Может быть одним целым числом для задания одного и того же значения для всех пространственных измерений.
strides Целое число или кортеж/список из 2 целых чисел, определяющий шаги свёртки по высоте и ширине. Может быть одним целым числом для задания одного и того же значения для всех пространственных измерений. Указание любого значения шага != 1 несовместимо с указанием любого значения dilation_rate != 1.
padding одно из "valid" или "same" (регистр не имеет значения). "valid" означает отсутствие заполнения. "same" приводит к равномерному дополнению слева/справа или сверху/снизу входных данных таким образом, что выходные данные имеют такие же размеры высоты/ширины, как и входные данные.
output_padding Целое число или кортеж/список из 2 целых чисел, определяющий количество заполнения по высоте и ширине выходного тензора. Может быть одним целым числом для задания одного и того же значения для всех пространственных измерений. Количество выходного заполнения по данному измерению должно быть меньше шага по тому же измерению. Если установлено значение None (по умолчанию), форма вывода определяется неявно.
data_format Строка, одно из channels_last (по умолчанию) или channels_first. Порядок измерений ввода. channels_last соответствует вводам с формой (batch_size, height, width, channels), в то время как channels_first соответствует вводам с формой (batch_size, channels, height, width). По умолчанию используется значение image_data_format в вашем файле конфигурации Keras по адресу ~/.keras/keras.json. Если вы никогда его не устанавливали, он будет равен "channels_last".
dilation_rate целое число или кортеж/список из 2 целых чисел, определяющий скорость расширения для использования расширенной свёртки. Может быть одним целым числом для задания одного и того же значения для всех пространственных измерений. В настоящее время указание любого значения dilation_rate != 1 несовместимо с указанием любого значения шага != 1.
activation Функция активации для использования. Если вы ничего не укажете, активация не применяется (см. keras.activations).
use_bias Булево значение, указывающее, использует ли слой вектор смещения.
kernel_initializer Инициализатор для матрицы весов kernel (см. keras.initializers).
bias_initializer Инициализатор вектора смещения (см. keras.initializers).
kernel_regularizer Функция регуляризации, применяемая к матрице весов kernel (см. keras.regularizers).
bias_regularizer Функция регуляризации, применяемая к вектору смещения (см. keras.regularizers).
activity_regularizer Функция регуляризации, применяемая к выводу слоя (его "активации") (см. keras.regularizers).
kernel_constraint Функция ограничения, применяемая к матрице ядра (см. keras.constraints).
bias_constraint Функция ограничения, применяемая к вектору смещения (см. keras.constraints).

Форма входа:

4D тензор с формой: (batch_size, channels, rows, cols) если data_format='channels_first' или 4D тензор с формой: (batch_size, rows, cols, channels) если data_format='channels_last'.

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

4D тензор с формой: (batch_size, filters, new_rows, new_cols) если data_format='channels_first' или 4D тензор с формой: (batch_size, new_rows, new_cols, filters) если data_format='channels_last'. Значения rows и cols могут измениться из-за заполнения. Если output_padding указан:

new_rows = ((rows - 1) * strides[0] + kernel_size[0] - 2 * padding[0] +
output_padding[0])
new_cols = ((cols - 1) * strides[1] + kernel_size[1] - 2 * padding[1] +
output_padding[1])
Возвращает
4D тензор, представляющий activation(conv2dtranspose(inputs, kernel) + bias).
Возбуждает
ValueError если padding равно "causal".
ValueError если оба strides > 1 и dilation_rate > 1.

Ссылки:

  • Руководство по арифметике свёрток для глубокого обучения
  • Деконволюционные сети

© 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/r2.4/api_docs/python/tf/keras/layers/Conv2DTranspose

Spec-Zone.ru

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