Spec-Zone.ru › TensorFlow 2.9

tf.compat.v1.nn.depthwise_conv2d_native

Вычисляет 2-мерную свертку по глубине.

tf.compat.v1.nn.depthwise_conv2d_native(
    input,
    filter,
    strides,
    padding,
    data_format='NHWC',
    dilations=[1, 1, 1, 1],
    name=None
)

Учитывая входной тензор формы [batch, in_height, in_width, in_channels] и тензор фильтра/ядра формы [filter_height, filter_width, in_channels, channel_multiplier], содержащий in_channels сверточных фильтров глубиной 1, depthwise_conv2d применяет к каждому входному каналу отдельный фильтр (расширяя с 1 канала до channel_multiplier каналов для каждого), а затем конкатенирует результаты вместе. Таким образом, выход имеет in_channels * channel_multiplier каналов.

for k in 0..in_channels-1
  for q in 0..channel_multiplier-1
    output[b, i, j, k * channel_multiplier + q] =
      sum_{di, dj} input[b, strides[1] * i + di, strides[2] * j + dj, k] *
                        filter[di, dj, k, q]

Должно выполняться условие strides[0] = strides[3] = 1. Для наиболее распространённого случая одинаковых горизонтальных и вертикальных шагов, strides = [1, stride, stride, 1].

Аргументы
input A Tensor. Должен быть одного из следующих типов: half, bfloat16, float32, float64.
filter A Tensor. Должен иметь тот же тип, что и input.
strides Список ints. 1-мерный массив длиной 4. Шаг скользящего окна для каждого измерения input.
padding Управляет тем, как заполнять изображение перед применением свертки. Может быть строкой "SAME" или "VALID" для указания типа алгоритма заполнения, или списком, указывающим явное заполнение в начале и конце каждого измерения. Когда используется явное заполнение и data_format равно "NHWC", это должно быть в форме [[0, 0], [pad_top, pad_bottom], [pad_left, pad_right], [0, 0]]. Когда используется явное заполнение и data_format равно "NCHW", это должно быть в форме [[0, 0], [0, 0], [pad_top, pad_bottom], [pad_left, pad_right]].
data_format Необязательный string из: "NHWC", "NCHW". По умолчанию "NHWC". Указывает формат данных входных и выходных данных. С параметром по умолчанию "NHWC" данные хранятся в порядке: [batch, height, width, channels]. В качестве альтернативы, формат может быть "NCHW", порядок хранения данных: [batch, channels, height, width].
dilations Необязательный список ints. По умолчанию [1, 1, 1, 1]. 1-мерный тензор длиной 4. Коэффициент дилатации для каждого измерения input. Если задано k > 1, между каждым элементом фильтра в этом измерении будет k-1 пропущенных ячеек. Порядок измерений определяется значением data_format, см. подробности выше. Дилатации в измерениях batch и depth должны быть 1.
name Имя операции (необязательно).
Возвращаемое значение
A Tensor. Имеет тот же тип, что и input.

© 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/compat/v1/nn/depthwise_conv2d_native

Spec-Zone.ru

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