[TensorFlow] GlobalMaxPooling2D 예제

tf.keras.layers.GlobalMaxPooling2D 레이어는 각 채널별로 최대값을 추출하여 이미지의 공간 정보를 줄이는 역할을 합니다. 아래는 tf.keras.layers.GlobalMaxPooling2D 레이어를 사용한 예제입니다.

import tensorflow as tf

## 더미 이미지 데이터 생성
dummy_input = tf.random.normal(shape=(4, 10, 10, 3))  # 4개의 이미지, 각 이미지 크기: 10x10, 채널 개수: 3

## GlobalMaxPooling2D 레이어 정의
global_max_pooling_layer = tf.keras.layers.GlobalMaxPooling2D()

## GlobalMaxPooling2D 레이어 실행
pooled_data = global_max_pooling_layer(dummy_input)

print("Input shape:", dummy_input.shape)
print("Pooled data shape:", pooled_data.shape)` 

위 예제에서는 tf.keras.layers.GlobalMaxPooling2D 레이어를 사용하여 4개의 이미지에 대한 레이어를 정의하고 실행합니다. dummy_input은 4개의 이미지로 이루어져 있으며, 각 이미지 크기는 10x10이고 채널 개수는 3입니다.

실행 결과 예시:

Input shape: (4, 10, 10, 3)
Pooled data shape: (4, 3)` 

위에서 확인할 수 있듯이, 입력 데이터의 공간 차원이 줄어들고 채널 차원에 대해 최대값이 추출됩니다. 이렇게 전역 최대 풀링을 통해 이미지의 중요한 특징을 강조하면서 공간 정보를 줄일 수 있습니다.