卷积层以及池化层的输出维度

在学习tensorflow时,总是对各种各样的参数烦的死去活来,尤其是卷积核的长宽高步长什么的,特别“迷人”。因此本人搜索了很多的资料,进行了综合,并加上了自己的理解,供大家学习参考。

一、输入的四个维度

1)batch_size:说白了,就是图片的个数。

2)height/weight:图片的高和宽。

3)channels:图片的通道数,黑白照片就是1,RGB就是3。

例如我们的输入是X =【333,28,28,3】,则代表我们有333个宽和高都是28的黑白照片(单通道照片)。

二、卷积核的四个维度

1)height/weight:卷积核矩阵的维度

2)inchannels:与输入的通道数相等。如何理解这个参数的意思呢?这个参数代表的是我们所操作的图像的通道数。例如,我们有上例的X的通道数为3,那这个inchannels也是3。我们要做的是,将这个卷积核分别与图片A的三个通道卷积,相加作为输出。

3)outchannel:输出的特征数。这个参数是自己选定的。

现在假设我们X=【333,28,28,3】的输入,W=【5,5,3,32】。那么输出是什么呢?首先输出图片数不变,仍是333。其次,我们先假设图片大小也不变(后文会讨论)。我们的操作是,对于任意333张中的任意一张图片A,用32个卷积核去卷积,这样我们每张图片就会得到32个特征,那么得到的新图片的通道数就是32(对应前面的RGB的通道数是3)。因此我们的得到的输出是【333,28,28,32】(假设得到的图片大小不变).如下图所示。

4)、步长的维度

步长的维度一般设置【1,a,a,1】。第一个和第四个分别代表跳过照片的数量和跳过维度的数量,因为我们要训练每一张照片和每一个维度,所以上述都设置为1(以上是我的猜测QAQ)。中间的则代表我们在照片长宽跳过的像素数。这里,网上有两个盛传的公式:

卷积:((W-F+2P)/S )+ 1

池化:(W-F)/S + 1.

例如池化矩阵的大小和步长都是2*2的。那么池化后的高:(28-2)/2 +1 = 14,宽:(28-2)/2 + 1 =14.

关于池化层和卷积层的参数问题就讲到这里。本文写的相当仓促,所以可能会有大量的漏洞和不足,望指正。

  • 4
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
卷积层池化层和全连接层是深度学习中常用的神经网络层。它们在卷积神经网络(Convolutional Neural Network,CNN)中起着重要的作用。 1. 卷积层(Convolutional Layer): 卷积层CNN中最重要的层之一。它通过使用卷积操作来提取输入数据的特征。卷积操作是指将一个滤波器(也称为卷积核)与输入数据进行逐元素相乘,并将结果相加得到输出特征图。卷积层的主要作用是提取输入数据的局部特征,通过多个卷积核可以提取不同的特征。卷积层还具有参数共享和稀疏连接的特点,使得网络可以更好地处理图像等结构化数据。 2. 池化层Pooling Layer): 池化层是用于减小特征图尺寸的一种操作。它通过对输入数据的局部区域进行汇聚操作,例如最大池化或平均池化,来减少特征图的大小。池化层的主要作用是降低数据维度,减少计算量,并且具有一定程度的平移不变性,即对输入数据的微小变化不敏感。池化层通常与卷积层交替使用,以提取更高级别的特征。 3. 全连接层(Fully Connected Layer): 全连接层是神经网络中最常见的层之一。它将前一层的所有神经元与当前层的每个神经元相连接,每个连接都有一个权重。全连接层的主要作用是将前一层提取到的特征进行组合和整合,以便进行最终的分类或回归任务。全连接层通常位于网络的最后几层,用于将高级特征映射到最终的输出类别或数值。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值