Spec-Zone.ru › TensorFlow

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, высота, ширина, каналы]. В качестве альтернативы, формат может быть "NCHW", порядок хранения данных: [batch, каналы, высота, ширина].
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/api_docs/python/tf/compat/v1/nn/depthwise_conv2d_native

Spec-Zone.ru

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