Spec-Zone.ru › TensorFlow

tf.compat.v1.nn.pool

Выполняет операцию пулинга N-го порядка.

tf.compat.v1.nn.pool(
    input,
    window_shape,
    pooling_type,
    padding,
    dilation_rate=None,
    strides=None,
    name=None,
    data_format=None,
    dilations=None
)

Если data_format не начинается с "NC", вычисления выполняются для 0 <= b < batch_size, 0 <= x[i] < output_spatial_shape[i], 0 <= c < num_channels:

output[b, x[0], ..., x[N-1], c] =
  REDUCE_{z[0], ..., z[N-1]}
    input[b,
          x[0] * strides[0] - pad_before[0] + dilation_rate[0]*z[0],
          ...
          x[N-1]*strides[N-1] - pad_before[N-1] + dilation_rate[N-1]*z[N-1],
          c],

где функция редукции REDUCE зависит от значения pooling_type, а pad_before определяется на основе значения padding, как описано в разделе «Возвращает» документации tf.nn.convolution. Редукция никогда не включает позиции за пределами допустимых границ.

Если data_format начинается с "NC", input и выходные данные просто транспонируются следующим образом:

pool(input, data_format, **kwargs) =
  tf.transpose(pool(tf.transpose(input, [0] + range(2,N+2) + [1]),
                    **kwargs),
               [0, N+1] + range(1, N+1))
Аргументы
input Тензор ранга N+2 и формы [batch_size] + input_spatial_shape + [num_channels], если data_format не начинается с "NC" (по умолчанию), или [batch_size, num_channels] + input_spatial_shape, если data_format начинается с "NC". Пулинг выполняется только по пространственным измерениям.
window_shape Последовательность из N целых чисел >= 1.
pooling_type Задает операцию пулинга; должно быть "AVG" или "MAX".
padding Алгоритм дополнения; должен быть "SAME" или "VALID". Подробности см. в разделе «Возвращает» документации tf.nn.convolution.
dilation_rate Необязательный параметр. Коэффициент дилатации. Список из N целых чисел >= 1. По умолчанию используется [1]*N. Если какое-либо значение dilation_rate > 1, все значения strides должны быть равны 1.
strides Необязательный параметр. Последовательность из N целых чисел >= 1. По умолчанию используется [1]*N. Если какое-либо значение strides > 1, все значения dilation_rate должны быть равны 1.
name Необязательное имя операции.
data_format Строка или None. Указывает, является ли измерение каналов в input и выходных данных последним измерением (по умолчанию или если data_format не начинается с "NC") или вторым измерением (если data_format начинается с "NC"). Для N=1 допустимы значения "NWC" (по умолчанию) и "NCW". Для N=2 допустимы значения "NHWC" (по умолчанию) и "NCHW". Для N=3 допустимы значения "NDHWC" (по умолчанию) и "NCDHW".
dilations Псевдоним для dilation_rate
Возвращает
Тензор ранга N+2 и формы [batch_size] + output_spatial_shape + [num_channels]

если data_format равно None или не начинается с "NC", либо

[batch_size, num_channels] + output_spatial_shape

если data_format начинается с "NC"; при этом output_spatial_shape зависит от значения padding:

Если padding = "SAME": output_spatial_shape[i] = ceil(input_spatial_shape[i] / strides[i])

Если padding = "VALID": output_spatial_shape[i] = ceil((input_spatial_shape[i] - (window_shape[i] - 1) * dilation_rate[i]) / strides[i]).

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

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

Spec-Zone.ru

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