欢迎关注鄙人公众号,技术干货随时看!
转载请注明出处
鄙人的新书《elasticsearch7完全开发指南》,欢迎订阅!
https://wenku.baidu.com/view/8ff2ce94591b6bd97f192279168884868762b8e7
《kibana权威指南》
https://wenku.baidu.com/view/24cfee1ce43a580216fc700abb68a98270feac21
在卷积神经网络中,卷积层之间往往会加上一个池化层。池化层可以非常有效地缩小参数矩阵的尺寸,从而减少最后全连层中的参数数量。使用池化层即可以加快计算速度也有防止过拟合的作用。
在图像识别领域,有时图像太大,我们需要减少训练参数的数量,它被要求在随后的卷积层之间周期性地引进池化层。池化的唯一目的是减少图像的空间大小。池化在每一个纵深维度上独自完成,因此图像的纵深保持不变。池化层的最常见形式是最大池化,还有平均池化层,用的较少就不作介绍了。最大池化层的效果如下图所示:
tensorflow对池化层提供的实现,可以方便的调用API用于工程开发:
#input表示上一层的输出上例图片中大左边大的矩阵,ksize定义了池化层过滤器的尺寸,strides定义的步长信息第一维和第四维都为1,padding定义了是否用全0填充SAME表示全0填充VALID表示不填充
pool = tf.nn.max_pool(input, ksize=[1, 2, 2, 1], strides=[1, 2, 2, 1], padding='SAME')