Spec-Zone.ru › TensorFlow 2.9

tf.keras.layers.AveragePooling2D

Просмотреть исходный код на GitHub

Операция усредняющего пулинга для пространственных данных.

Наследуется от: Layer, Module

Просмотр псевдонимов

Основные псевдонимы

tf.keras.layers.AvgPool2D

Псевдонимы совместимости для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.keras.layers.AveragePooling2D, tf.compat.v1.keras.layers.AvgPool2D

tf.keras.layers.AveragePooling2D(
    pool_size=(2, 2),
    strides=None,
    padding='valid',
    data_format=None,
    **kwargs
)

Уменьшает размерность входных данных по пространственным измерениям (высота и ширина), вычисляя среднее значение по окну входных данных (размер которого определяется pool_size) для каждого канала входных данных. Окно смещается на strides по каждому измерению.

Результирующая форма выходных данных при использовании опции "valid" заполнения имеет размер (число строк или столбцов): output_shape = math.floor((input_shape - pool_size) / strides) + 1 (при input_shape >= pool_size)

Результирующая форма выходных данных при использовании опции "same" заполнения: output_shape = math.floor((input_shape - 1) / strides) + 1

Например, для strides=(1, 1) и padding="valid":

x = tf.constant([[1., 2., 3.],
                 [4., 5., 6.],
                 [7., 8., 9.]])
x = tf.reshape(x, [1, 3, 3, 1])
avg_pool_2d = tf.keras.layers.AveragePooling2D(pool_size=(2, 2),
   strides=(1, 1), padding='valid')
avg_pool_2d(x)
<tf.Tensor: shape=(1, 2, 2, 1), dtype=float32, numpy=
  array([[[[3.],
           [4.]],
          [[6.],
           [7.]]]], dtype=float32)>

Например, для stride=(2, 2) и padding="valid":

x = tf.constant([[1., 2., 3., 4.],
                 [5., 6., 7., 8.],
                 [9., 10., 11., 12.]])
x = tf.reshape(x, [1, 3, 4, 1])
avg_pool_2d = tf.keras.layers.AveragePooling2D(pool_size=(2, 2),
   strides=(2, 2), padding='valid')
avg_pool_2d(x)
<tf.Tensor: shape=(1, 1, 2, 1), dtype=float32, numpy=
  array([[[[3.5],
           [5.5]]]], dtype=float32)>

Например, для strides=(1, 1) и padding="same":

x = tf.constant([[1., 2., 3.],
                 [4., 5., 6.],
                 [7., 8., 9.]])
x = tf.reshape(x, [1, 3, 3, 1])
avg_pool_2d = tf.keras.layers.AveragePooling2D(pool_size=(2, 2),
   strides=(1, 1), padding='same')
avg_pool_2d(x)
<tf.Tensor: shape=(1, 3, 3, 1), dtype=float32, numpy=
  array([[[[3.],
           [4.],
           [4.5]],
          [[6.],
           [7.],
           [7.5]],
          [[7.5],
           [8.5],
           [9.]]]], dtype=float32)>
Аргументы
pool_size целое число или кортеж из 2 целых чисел, множители уменьшения масштаба (вертикальное, горизонтальное). (2, 2) уменьшит входные данные по обоим пространственным измерениям вдвое. Если указано только одно целое число, то одинаковая длина окна будет использоваться для обоих измерений.
strides Целое число, кортеж из 2 целых чисел или None. Значения шагов. Если None, оно будет по умолчанию pool_size.
padding Один из "valid" или "same" (регистр не учитывается). "valid" означает отсутствие заполнения. "same" приводит к равномерному дополнению слева/справа или сверху/снизу входных данных таким образом, что высота/ширина выходных данных совпадает с высотой/шириной входных данных.
data_format Строка, одна из channels_last (по умолчанию) или channels_first. Порядок измерений во входных данных. channels_last соответствует входным данным с формой (batch, height, width, channels), а channels_first соответствует входным данным с формой (batch, channels, height, width). По умолчанию используется значение image_data_format в файле конфигурации Keras по адресу ~/.keras/keras.json. Если вы его никогда не устанавливали, он будет "channels_last".

Форма входных данных:

  • Если data_format='channels_last': 4D тензор с формой (batch_size, rows, cols, channels).
  • Если data_format='channels_first': 4D тензор с формой (batch_size, channels, rows, cols).

Форма выходных данных:

  • Если data_format='channels_last': 4D тензор с формой (batch_size, pooled_rows, pooled_cols, channels).
  • Если data_format='channels_first': 4D тензор с формой (batch_size, channels, pooled_rows, pooled_cols).

© 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/keras/layers/AveragePooling2D

Spec-Zone.ru

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