Spec-Zone.ru › TensorFlow

tf.compat.v1.nn.separable_conv2d

Двумерная свёртка с разделимыми фильтрами.

tf.compat.v1.nn.separable_conv2d(
    input,
    depthwise_filter,
    pointwise_filter,
    strides,
    padding,
    rate=None,
    name=None,
    data_format=None,
    dilations=None
)

Выполняет глубинную свёртку, которая применяется отдельно к каналам, а затем точечную свёртку, которая смешивает каналы. Обратите внимание: разделение выполняется между измерениями [1, 2] и 3, а не является пространственным разделением между измерениями 1 и 2.

Подробнее, для формата NHWC по умолчанию:

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

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

Аргументы
input 4-мерный Tensor с формой согласно data_format.
depthwise_filter 4-мерный Tensor с формой [filter_height, filter_width, in_channels, channel_multiplier]. Содержит in_channels фильтров свёртки глубины 1.
pointwise_filter 4-мерный Tensor с формой [1, 1, channel_multiplier * in_channels, out_channels]. Точечный фильтр для смешивания каналов после того, как depthwise_filter выполнил пространственную свёртку.
strides Одномерный массив размера 4. Шаги глубинной свёртки для каждого измерения input.
padding Определяет, как дополнить изображение перед применением глубинной свёртки. Может быть строкой "SAME" или "VALID", указывающей тип используемого алгоритма дополнения, либо списком Python, задающим явные дополнения в начале и конце каждого измерения. При использовании явного дополнения и значении 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]].
rate Одномерный массив размера 2. Коэффициент разрежения, с которым выбираются входные значения вдоль измерений height и width при разреженной свёртке. Если он больше 1, все значения параметра strides должны быть равны 1.
name Имя этой операции (необязательно).
data_format Формат входных данных. "NHWC" (по умолчанию) или "NCHW".
dilations Псевдоним параметра rate.
Возвращает
4-мерный Tensor с формой, соответствующей 'data_format'. Например, при data_format="NHWC" форма имеет вид [batch, out_height, out_width, out_channels].

© 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/separable_conv2d

Spec-Zone.ru

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