作用:池化操作用于减少卷积神经网络中特征的数据量。

方法:

  主要包含最大池化和均值池化。

  1)最大池化

    可以提取图片纹理

  2)均值池化

    保留背景特征

  池化—Pooling-风君雪科技博客

 TF2描述:

  1)最大池化

  tf.keras.layers.MaxPool2D(

    pool_size = 池化核尺寸,# 写一个元组(核高,核宽)高宽一致时可写成整数

    strides = 池化步长, # 写一个元组(核高,核宽)高宽一致时可写成整数,默认值为pool_size

    padding = ‘valid’ or ‘same’ # 使用全零填充是same,不适用是valid(默认)

  )

  2)均值池化 

  tf.keras.layers.AveragePooling2D(

    pool_size = 池化核尺寸,# 写一个元组(核高,核宽)高宽一致时可写成整数

    strides = 池化步长, # 写一个元组(核高,核宽)高宽一致时可写成整数,默认值为pool_size

    padding = ‘valid’ or ‘same’ # 使用全零填充是same,不适用是valid(默认)

  )

实例:

1 model = tf.keras.models.Sequential(
2     Conv2D(filter=6, kernel_size=(5, 5), padding='same'),  # 卷积层
3     BatchNormalization(),  # BN层
4     Activation('relu'),  # 激活函数
5     MaxPool2D(pool_size=(2, 2), strides=2, padding='same'),  # 池化层
6     Dropout(0.2)  # dropout层
7 )