РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
739 of 824 menu

Функция nn.max_pool

Функция nn.max_pool применяется к входным данным и выполняет операцию максимального пулинга. Первым параметром функция принимает входной тензор. Вторым параметром передается размер окна пулинга ksize. Третьим параметром задается шаг скольжения окна strides. Четвертым параметром указывается тип паддинга padding. Пятым параметром можно передать тип данных data_format.

Синтаксис

tf.nn.max_pool(input, ksize, strides, padding, [data_format])

Пример

Давайте создадим двумерный тензор и применим к нему максимальный пулинг с окном 2 и шагом 2:

import tensorflow as tf t = tf.constant([[[[1], [2], [3], [4]], [[5], [6], [7], [8]], [[9], [10], [11], [12]], [[13], [14], [15], [16]]]], dtype=tf.float32) res = tf.nn.max_pool(t, ksize=2, strides=2, padding='VALID') print(res)

Результат выполнения кода:

tf.Tensor( [[[[ 6.] [ 8.]] [[14.] [16.]]]], shape=(1, 2, 2, 1), dtype=float32)

Пример

Давайте применим максимальный пулинг с паддингом SAME и окном 3:

import tensorflow as tf t = tf.constant([[[[1], [2], [3], [4]], [[5], [6], [7], [8]], [[9], [10], [11], [12]], [[13], [14], [15], [16]]]], dtype=tf.float32) res = tf.nn.max_pool(t, ksize=3, strides=1, padding='SAME') print(res)

Результат выполнения кода:

tf.Tensor( [[[[11.] [12.] [12.] [12.]] [[15.] [16.] [16.] [16.]] [[15.] [16.] [16.] [16.]] [[15.] [16.] [16.] [16.]]]], shape=(1, 4, 4, 1), dtype=float32)

Пример

Давайте получим максимальные значения из каждого окна в виде обычного массива NumPy:

import tensorflow as tf t = tf.constant([[[[1], [2], [3], [4]], [[5], [6], [7], [8]], [[9], [10], [11], [12]], [[13], [14], [15], [16]]]], dtype=tf.float32) res = tf.nn.max_pool(t, ksize=2, strides=2, padding='VALID') print(res.numpy())

Результат выполнения кода:

[[[[ 6.] [ 8.]] [[14.] [16.]]]]

Смотрите также

  • функцию max_pool2d,
    которая выполняет максимальный пулинг для 2D-данных
  • функцию max_pool1d,
    которая выполняет максимальный пулинг для 1D-данных
  • функцию avg_pool,
    которая выполняет усредняющий пулинг
  • функцию conv2d,
    которая выполняет двумерную свертку
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить