Spec-Zone.ru › TensorFlow 2.9

tf.keras.layers.Conv3DTranspose

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

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

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

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

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

tf.keras.layers.Convolution3DTranspose

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

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

tf.compat.v1.keras.layers.Conv3DTranspose, tf.compat.v1.keras.layers.Convolution3DTranspose

tf.keras.layers.Conv3DTranspose(
    filters,
    kernel_size,
    strides=(1, 1, 1),
    padding='valid',
    output_padding=None,
    data_format=None,
    dilation_rate=(1, 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 (кортеж целых чисел или None, не включая ось образца), например, input_shape=(128, 128, 128, 3) для объёма 128x128x128 с 3 каналами, если data_format="channels_last".

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

Форма входа:

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

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

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

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

Ссылки:

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

Методы

convolution_op

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

convolution_op(
    inputs, kernel
)

© 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/versions/r2.9/api_docs/python/tf/keras/layers/Conv3DTranspose

Spec-Zone.ru

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