-
最大池化函数 tf.nn.max_pool
2018-10-27 20:45:59tf.nn.max_pool( value, ksize, strides, ...实现最大池化 value: 4维张量,维度顺序参考data_format ksize: value中,对应维度的池化框的大小,一般为[1,f,f,1] strides: 步长,对应维度的步...tf.nn.max_pool( value, ksize, strides, padding, data_format='NHWC', name=None )
实现最大池化
value: 4维张量,维度顺序参考data_format
ksize: value中,对应维度的池化框的大小,一般为[1,f,f,1]
strides: 步长,对应维度的步长,一般为[1,s,s,1]
padding:填充方式,一般为‘SAME’或者‘VALID’,string格式
data_format: 数据导入格式,默认为[个数,高度,宽度,信道数]输出,对应池化后的张量
参考:
https://tensorflow.google.cn/api_docs/python/tf/nn/max_pool -
池化函数
2019-05-02 15:04:441、使用池化函数的好处 大大降低特征的维数,避免过拟合 可去除一些冗余信息,得到一个低分辨率的特征图 使得模型更关注是否存在某些特征而不是特征的具体位置,可以容忍一些特征微小的位移 2、具体操作 对输入...一、池化的好处及具体操作
1、使用池化函数的好处
大大降低特征的维数,避免过拟合
- 可去
除一些冗余信息
,得到一个低分辨率的特征图 - 使得模型更关注是否存在某些特征而不是特征的具体位置,可以容忍一些
特征微小的位移
2、具体操作
对输入数据体的每一个深度切片进行操作(
深度保持不变
)
常用尺寸为 2∗2 或 3∗3 的滤波器,步长为 22二、Max Pooling:计算池化区域中元素的最大值
tf.nn.max_pool(value, ksize, strides, padding, data_format=‘NHWC’, name=None)
输入参数:
value: 一般为卷积后的 feature map,形状为[batch, height, width, channels] ,数据类型为 tf.float32 ksize: 池化窗口的大小,形状为[1, height, weight, 1],因为我们不想在batch 和 channels 上做池化,所以这两个维度设为了1 strides: 窗口在每一个维度上滑动的步长,形状为[1, stride, stride, 1] padding: 'VALID' 或 SAME,和卷积中的 padding 规则相同
输出:
池化降维后的 feature map,数据类型为 tf.float32
三、Average Pooling:计算池化区域中元素的平均值
tf.nn.max_pool(value, ksize, strides, padding, data_format=‘NHWC’, name=None)
输入参数:
仅有输入 value 的数据类型比最大池化多了点,其它都一样 value: 一般为卷积后的 feature map,形状为[batch, height, width, channels] ,数据类型为 float32, float64, qint8, quint8, or qint32
输出:
池化降维后的 feature map,数据类型为和 value 保持一致
四、代码示例
注意 feature map 的提取及数据的视角
-
TensorFlow实践(12)——池化函数详解
2018-11-13 15:33:40TensorFlow实践(12)——池化函数详解(一)前 言(二)池化类型(三)卷积函数实现详解(四)卷积...常用的池化函数有最大池化,平均池化,其前向计算十分简单,最大池化就是求最大值,平均池化就是求平均值.其效果如...TensorFlow实践(12)——池化函数详解
(一)前 言
在使用TensorFlow定义卷积神经网络模型时,我们经常会用到池化函数,这一节我们将对这种函数做详细的讲解,便于大家上手使用。
(二)池化类型
常用的池化函数有最大池化,平均池化,其前向计算十分简单,最大池化就是求最大值,平均池化就是求平均值.其效果如下:
- 最大池化:tf.nn.max_pool
- 平均池化:tf.nn.avg_pool
(三)卷积函数实现详解
TensorFlow中定义了最大池化运算的函数,如下所示:
tf.nn.tf.nn.max_pool(value, ksize, strides, padding, name=None)
以下是参数详解:
-
value
需要池化的输入,一般池化层接在卷积层的后面,所以输入通常是feature map,依然是[batch,height,width,channels]这样的shape。 -
ksize
池化窗口的大小,取一个四维向量,一般是[1,height,width,1],因为我们不用再batch和channels上做池化,所以这两个维度设为了1. -
strides
和卷积类似,窗口在每一个维度上滑动的步长,一般也是[1,stride,stride,1] -
padding
和卷积类似,可以取’VALID’,‘SAME’,返回一个tensor值
(四)卷积示例
import tensorflow as tf data = tf.constant([ [[3.0,2.0,3.0,4.0], [2.0,6.0,2.0,4.0], [1.0,2.0,1.0,5.0], [4.0,3.0,2.0,1.0]] ]) data = tf.reshape(data,[1,4,4,1]) maxPooling = tf.nn.max_pool(data, [1, 2, 2, 1], [1, 2, 2, 1], padding='VALID') with tf.Session() as sess: print(sess.run(maxPooling)) # 输出: [[[[6.] [4.]] [[4.] [5.]]]]
(五)总 结
在本节中我们对池化函数的使用方法做了详细介绍,有任何的问题请在评论区留言,我会尽快回复,谢谢支持!
- 最大池化:tf.nn.max_pool
-
TensorFlow 激活函数, 池化函数
2020-12-24 12:12:19最大池化 tf.nn.max_pool() tf.nn.max_pool( value, ksize; strides, padding, data_format='NHWC' ) 均值池化 tf.nn.avg_pool() tf.nn.avg_pool( value, ksize; strides, padding, data_for -
Tensorflow之池化函数汇总
2017-09-07 20:43:10池化函数: 在神经网络中,池化函数一半都是跟在卷积函数的下一层,它们被定义在tensorflow-1.1.0/tensorflow/python/ops下的nn.py和gen_nn_ops.py文件中; 池化操作是利用一个矩阵窗口在张量上进行扫描,将每个... -
Tensorflow中常用的池化函数
2019-10-25 14:36:57在神经网络中,池化函数一般跟在卷积函数的下一层,池化操作是利用一个矩阵窗口在张量上进行扫描,将每个矩阵窗口中的值通过最大值或者平均值来减少元素的个数,每个池化操作的矩阵窗口大小是由ksize指定的,并且... -
4.2 Tensorflow笔记:池化函数
2017-08-04 01:16:22池化卷积神经网络的结构其中,input为输入,conv为卷积层,由卷积核构成,pool为池层,由池化函数构成最后是全连接层与输出层,其负责对卷积层提取的特征进行处理以获得我们需要的结果池化函数的意义池化层的输入一般来源... -
2 Tensorflow笔记:池化函数
2018-03-23 10:52:50池化卷积神经网络的结构其中,input为输入,conv为卷积层,由卷积核构成,pool为池层,由池化函数构成最后是全连接层与输出层,其负责对卷积层提取的特征进行处理以获得我们需要的结果池化函数的意义池化层的输入一般来源... -
tensorflow中的池化函数解析
2018-05-05 18:20:012. tensorflow中的池化函数 2.1 tf.nn.max_pool (1)函数功能描述: ax pooling是CNN当中的最大值池化操作 (2)函数原型: tf.nn.max_pool(value, ksize, strides, padding, name=None) (3)函数参数... -
池化函数小例子
2018-05-02 19:39:03""" 卷积后的特征图具有一种“静态性”的属性,为了描述全局性信息,需要对特征图不同位置的特征进行聚合 统计,例如,特征提取可以计算图像一...TensorFlow池化运算的函数 tf.nn.max_pool(value, ks... -
TF-池化函数 tf.nn.max_pool 的介绍
2019-10-07 18:22:55转载自此大神... max pooling是CNN当中的最大值池化操作,其实用法和卷积很类似 有些地方可以从卷积去参考【TensorFlow】tf.nn.conv2d是怎样实现卷积的? tf.nn.max_pool(value, ksize, stride... -
tf入门-池化函数 tf.nn.max_pool 的介绍
2018-09-06 17:38:00转载自此大神... max pooling是CNN当中的最大值池化操作,其实用法和卷积很类似 有些地方可以从卷积去参考【TensorFlow】tf.nn.conv2d是怎样实现卷积的? tf.nn.max_pool(value, ksize, stride... -
【TensorFlow学习笔记(四)】常用函数:池化
2019-07-09 19:44:56池化函数用于降维、提取有效特征,定义在:tensorflow/python/layers/pooling.py中,本篇博客整理了以下六个池化函数。 tf.layers.MaxPooling1D 用于1D输入的最大池化层. tf.layers.MaxPooling1D( pool_size, ... -
CNN中的最大池化(MaxPool2D)的参数和含义,
2020-08-06 01:25:51同样的我们看看官方的文档,对于最大池化的函数定义: tf.keras.layers.MaxPool2D( pool_size=(2, 2), strides=None, padding='valid', data_format=None, **kwargs ) 这个函数给出了4个关键字参数,都是有 ... -
【TensorFlow】tf.nn.max_pool 池化层函数
2018-04-25 10:50:43常用的池化层有两种:最大池化层(max pooling) 以及 平均池化层(average pooling) 池化层的过滤器与卷积层类似,卷积层的过滤器是横跨整个深度的,而池化层的只影响当前深度的一个节点,所以池化层的过滤器要在... -
池化、线性、激活函数层
2019-12-21 10:18:51平均池化相对于最大池化的话,图片略显暗淡 反池化 饱和函数:sigmoid\tanh (饱和函数应该是说输入达到一定的值以后,输出就不再变化了,饱和了) 梯度消失没有sigmoid那么严重,但是如果在几十上... -
Pytorch池化层、线性层、激活函数层
2020-02-05 21:49:16层池化层最大池化、平均池化pytorch实现池化(下采样)最大池化平均池化pytorch实现反池化(上采样)最大值反池化线性层激活函数层sigmoidtanhrelu 池化层 最大池化、平均池化 pytorch实现池化(下采样) 最大池化 ... -
PyTorch学习笔记(14)池化 线性 激活函数
2020-02-26 14:16:22池化、线性、激活函数 池化层 Pooling Layer 池化运算:对信号进行“收集”并“总结”,类似水池收集水资源,因而得名池化层 “收集”:多变少 “总结”:选取最大值或平均值 nn.MaxPool2d 功能 对二维信号(图像)... -
Deep MNIST for Experts解读(二):卷积与最大池化
2017-08-15 13:23:38Deep MNIST for Experts解读(二):卷积与池化 https://www.tensorflow.org/get_started/mnist/pros 下面看看那三个遗留问题。 1.卷积 conv2d max_pool_2x2 Tensorflow提供了两个卷积函数,tf.nn.... -
TensorFlow池化操作
2020-08-05 17:43:51池化函数将平面内某一位置及其相邻位置的特征值进行统计汇总,并将汇总后的结果作为这一位置在该平面内的值。常见的池化操作有最大池化、平均池化。 TensorFlow中池化函数 tf.nn.max_pool 最大池化 tf.nn.max_pool( ... -
Pytorch-池化、线性、激活函数层
2020-08-07 18:27:211. 池化层——Pooling layer 2. 线性层——Linear layer 3. 激活函数层——Activation layer ...最大值池化: import os import torch import random from PIL import Image import numpy as np import -
Tensorflow反池化操作
2018-12-12 14:55:11该函数可以输出位置, 需要开发者利用这个函数做一些改动, 自己封装一个最大池化操作, 然后再根据 mask写出反池化函数, 下面以返最大池化为例。 实例描述 定义一个数组作为模拟图片, 将其进行最大池化, 接着.... -
pytorch中池化层MaxPool2d函数
2019-12-21 18:11:39对于输入信号的输入通道,提供2维最大池化(max pooling)操作 class torch.nn.MaxPool2d(kernel_size, stride=None, padding=0, dilation=1, return_indices=False, ceil_mode=False) 参数kernel_size,stride,... -
pytorch 池化层——最大值池化nn.MaxPool2d() nn.MaxPool1d()
2020-02-22 01:06:01pytorch 池化层——最大值池化nn.MaxPool 2dnn.MaxPool1d nn.MaxPool1d函数参数例子计算过程nn.MaxPool2d函数参数例子计算过程 nn.MaxPool1d 函数 class torch.nn.MaxPool1d(kernel_size, stride=None, padding=0, ... -
12池化、线性、激活函数层
2020-01-29 17:42:02一、池化层——Pooling Layer 1.1 池化层概念 池化运算: 对信号进行“收集”并...“总结" : 最大值/平均值 1.2 nn.MaxPool2d nn.MaxPool2d(kernel_size, stride=None, padding=0, dilation=1, ... -
卷积神经网络pytorch实现(二):池化层
2020-03-05 17:20:24#%% ''' 实际图像里,我们所感兴趣的物体不会总是出现在同一个地方,这些物品 一定会出现在不同的像素位置,因此...'''二维最大池化函数和平均池化层''' import torch from torch import nn #这里的mode参数可以填... -
pytorch —— 池化、线性、激活函数层
2020-03-10 14:44:241、池化层——Pooling Layer 池化运算:对信号进行“收集”并“总结”,类似水池收集水资源,因为...功能:对二维信号(图像)进行最大值池化; nn.MaxPool2d(kernel_size, stride=None, padding=0, dilation=1, ... -
演示反池化的操作
2018-05-13 16:46:50TensorFlow中目前还没有反...该函数可以找出位置,需要开发者利用这个函数做一些改动,自己封装一个最大池化操作,然后再根据mask写出反池化函数。def max_pool_with_argmax(net,stride): ''' 重定义一个最大池化...