Spec-Zone.ru › TensorFlow 2.9

tf.compat.v1.nn.conv2d

Вычисляет 2-мерную свёртку для тензоров размерности 4-D input и filter.

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

При заданном входном тензоре формы [batch, in_height, in_width, in_channels] и тензоре фильтра/ядра формы [filter_height, filter_width, in_channels, out_channels], эта операция выполняет следующее:

  1. Сжимает фильтр в 2-мерную матрицу формы [filter_height * filter_width * in_channels, output_channels].
  2. Извлекает фрагменты изображения из входного тензора, формируя виртуальный тензор формы [batch, out_height, out_width, filter_height * filter_width * in_channels].
  3. Для каждого фрагмента правым умножает матрицу фильтра и вектор фрагмента изображения.

В деталях, с форматом NHWC по умолчанию,

output[b, i, j, k] =
    sum_{di, dj, q} input[b, strides[1] * i + di, strides[2] * j + dj, q]

                    * filter[di, dj, q, k]

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

Аргументы
input A Tensor. Должен быть одного из следующих типов: half, bfloat16, float32, float64. 4-мерный тензор. Порядок измерения интерпретируется в соответствии со значением data_format, см. подробности ниже.
filter A Tensor. Должен иметь тот же тип, что и input. 4-мерный тензор формы [filter_height, filter_width, in_channels, out_channels]
strides Целое число или список ints, имеющий длину 1, 2 или 4. Шаг скользящего окна для каждой размерности input. Если указано одно значение, оно дублируется в размерностях H и W. По умолчанию размерности N и C устанавливаются в 1. Порядок размерностей определяется значением data_format, см. подробности ниже.
padding Либо string "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]].
use_cudnn_on_gpu Необязательный bool. По умолчанию True.
data_format Необязательный string из: "NHWC", "NCHW". По умолчанию "NHWC". Указывает формат данных входных и выходных данных. С форматом "NHWC" по умолчанию данные хранятся в порядке: [batch, высота, ширина, каналы]. В качестве альтернативы, формат может быть "NCHW", порядок хранения данных: [batch, каналы, высота, ширина].
dilations Целое число или список ints, имеющий длину 1, 2 или 4, по умолчанию 1. Коэффициент расширения для каждой размерности input. Если указано одно значение, оно дублируется в размерностях H и W. По умолчанию размерности N и C устанавливаются в 1. Если задано k > 1, между каждым элементом фильтра в этой размерности будет k-1 пропущенных ячеек. Порядок размерностей определяется значением data_format, см. выше для подробностей. Разрежения в размерностях batch и depth для тензора 4-d должны быть 1.
name Имя операции (необязательно).
filters Псевдоним для фильтра.
Возвращаемое значение
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/conv2d

Spec-Zone.ru

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