Spec-Zone.ru › TensorFlow 2.4

tf.compat.v1.nn.depthwise_conv2d_native

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

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, высота, ширина, каналы]. В качестве альтернативы, формат может быть "NCHW", порядок хранения данных: [batch, каналы, высота, ширина].
dilations Необязательный список ints. По умолчанию [1, 1, 1, 1]. 1-мерный тензор длиной 4. Коэффициент расширения для каждой размерности input. Если задано k > 1, между каждым элементом фильтра по данной размерности будет k-1 пропущенных ячеек. Порядок размерностей определяется значением data_format, см. подробности выше. Расширения по размерностям пакет и глубина должны быть 1.
name Имя операции (необязательно).
Возвращаемые значения
A Tensor. Имеет тот же тип, что и input.

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

Spec-Zone.ru

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