卷积神经网络 数据维度计算公式:输入输出关系、输出维度

假设你有 5 个大小为 7×7、边界值为 0 的卷积核,同时卷积神经网络第一层的深度为 1。

此时如果你向这一层传入一个维度为 224x224x3 的数据,那么神经网络下一层所接收到的数据维度是( )。

A.218*218*5

B.217*217*8

C.217*217*3

D.220*220*5

在进行深度学习训练时,优化器会对模型的参数进行优化,以寻找到一组最优解。一个简单的卷积神经网络,可以分为卷积池化层和全连接层,全连接层中的参数可以用神经元连接的权重W来表示,而卷积层的参数往往是用卷积核参数来表示。

2D卷积

卷积神经网络 数据维度计算公式:输入输出关系、输出维度
卷积神经网络 数据维度计算公式:输入输出关系、输出维度

卷积神经网络(Convolutional Neural Network,CNN)

卷积
神经网络不再对每个像素信息做处理,而是对图片每一小块像素区域做处理,这种做法加强了信息的连续性。神经网络能够看到一个图形而不是一个点,同时加深神经网络对图片的理解。

具体:批量过滤器在图片上滚动收集图片上的信息,每一次收集的都是像素区域,再整理总结,再滚动收集……

图像拥有长宽高,其中高表示图片的颜色信息黑白高度1 彩色高度3

批量过滤器,每次长宽压缩,高度增加,对输入图片更深的理解

convolution卷积层:主要作用是保留图片的特征
pooling池化层:主要作用是把数据降维,可以有效的避免过拟合
Full connected 全连接层:根据不同任务输出我们想要的结果
classifier 分类预测

卷积核(滤波器,convolution kernel)

是可以用来提取特征的图像和卷积核卷积,就可以得到特征值,就是destination value特征提取。

卷积神经网络 数据维度计算公式:输入输出关系、输出维度

卷积核放在神经网络里,就代表对应的权重(weight)

卷积核和图像点乘(dot product),就代表卷积核里的权重单独对相应位置的Pixel作用

卷积运算方式及各部分介绍
从左到右,每隔x列Pixel,向右移动一次卷积核进行卷积,当已经到最右,从上到下,每隔x行pixel,向下移动一次卷积核,移动完成,再继续如上所述,即先从左到右,再从上到下,直到所有pixels都被卷积核过一遍,则完成输入图片的第一层卷积层的特征提取。

这里的x叫作stride,就是步长,如果x = 2,就是相当每隔两行或者两列进行卷积。

补0(zero padding)
分量的pixel外面围一圈0,称之为补0(zero padding),同样是stride x=1的情况下,补0比原来没有添0的情况下进行卷积,从左到右,从上到下都多赚了2次卷积,这样第一层卷积层输出的特征图(feature map)仍然为5×5,和输入图片的大小一致,而没有添0的第一层卷积层输出特征图大小为3×3。

优点:
获得的更多更细致的特征信息,如获得更多的图像边缘信息。
控制卷积层输出的特征图的size,从而达到控制网络结构的作用,如果没有做zero-padding第二层卷积层的卷积核是3×3,那么第二层卷积层输出的特征图就是1×1。

卷积神经网络 数据维度计算公式:输入输出关系、输出维度

池化(Pooling)

​ Pooling 层主要的作用是下采样,通过去掉 Feature Map 中不重要的样本,进一步减少参数数量。

通常情况下,池化区域是2*2大小,然后按一定规则转换成相应的值,例如取这个池化区域内的最大值(max-pooling)、平均值(mean-pooling)等,以这个值作为结果的像素值。

最大池化(max-pooling)保留了每一小块内的最大值,也就是相当于保留了这一块最佳的匹配结果(因为值越接近1表示匹配越好)。也就是说,它不会具体关注窗口内到底是哪一个地方匹配了,而只关注是不是有某个地方匹配上了。

除了 Max Pooing 之外,常用的还有 Average Pooling ——取各样本的平均值。
对于深度为D的 Feature Map,各层独立做 Pooling,因此 Pooling 后的深度仍然为D。

通过加入池化层,图像缩小了,能很大程度上减少计算量,降低机器负载。

激活函数RelU (Rectified Linear Units)

常用的激活函数有sigmoid、tanh、relu等等,前两者sigmoid/tanh比较常见于全连接层,后者ReLU常见于卷积层。激活函数的作用是用来加入非线性因素,把卷积层输出结果做非线性映射。

在卷积神经网络中,激活函数一般使用ReLU(The Rectified Linear Unit,修正线性单元),它的特点是收敛快,求梯度简单。计算公式也很简单,max(0,T),即对于输入的负值,输出全为0,对于正值,则原样输出。

全连接层(Fully connected layers)

全连接层在整个卷积神经网络中起到“分类器”的作用,即通过卷积、激活函数、池化等深度网络后,再经过全连接层对结果进行识别分类。
卷积层的计算细节

卷积神经网络 数据维度计算公式:输入输出关系、输出维度

卷积层尺寸的计算原理

○输入矩阵格式:四个维度,依次为:样本数、图像高度、图像宽度、图像通道数

○输出矩阵格式:与输出矩阵的维度顺序和含义相同,但是后三个维度(图像高度、图像宽度、图像通道数)的尺寸发生变化。

○权重矩阵(卷积核)格式:同样是四个维度,但维度的含义与上面两者都不同,为:卷积核高度、卷积核宽度、输入通道数、输出通道数(卷积核个数)

◎输入矩阵、权重矩阵、输出矩阵这三者之间的相互决定关系

卷积核的输入通道数(in depth)由输入矩阵的通道数所决定。(红色标注)

输出矩阵的通道数(out depth)由卷积核的输出通道数所决定。(绿色标注)

输出矩阵的高度和宽度(height, width)这两个维度的尺寸由输入矩阵、卷积核、扫描方式所共同决定。计算公式如下。(蓝色标注)

卷积神经网络 数据维度计算公式:输入输出关系、输出维度
  • 注:以下计算演示均省略掉了 Bias ,严格来说其实每个卷积核都还有一个 Bias 参数。
    标准卷积计算举例

以 AlexNet 模型的第一个卷积层为例,

  • 输入图片的尺寸统一为 227 x 227 x 3 (高度 x 宽度 x 颜色通道数),
  • 本层一共具有96个卷积核,
  • 每个卷积核的尺寸都是 11 x 11 x 3。
  • 已知 stride = 4, padding = 0,
  • 假设 batch_size = 256,
  • 则输出矩阵的高度/宽度为 (227 – 11) / 4 + 1 = 55
卷积神经网络 数据维度计算公式:输入输出关系、输出维度

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/11125.html

(7)
江山如画的头像江山如画管理团队
什么是批标准化 (Batch Normalization)
上一篇 2022年9月22日 上午10:33
深度学习中的激活函数、防止过拟合的方法
下一篇 2022年9月22日 下午5:15

99%的人还看了以下文章

  • 最清楚的过拟合(Overfitting)、欠拟合讲解

    问题的产生 当我们构建模型时,总会希望假设空间参数尽可能多,系统越复杂,拟合得越好嘛!我们还希望我们的优化算法能使我们的模型产生的损失函数的值尽可能小(即我们的假设空间能够贴合每一个训练样本点)。但这样真的好吗?奥卡姆剃刀貌似又胜利了。然而假设我们的模型达成了上述的情况,有很大概率产生一个ML界非常令人头疼的一件事:过拟合(Overfitting)。 欠拟合…

    2022年9月21日
    11.5K0
  • 手机上可以python编程吗,手机如何开发python

    手机上可以python编程吗,手机如何开发python手机上可以python编程吗,手机如何开发python手机上可以python编程吗,手机如何开发python手机上可以python编程吗,手机如何开发python

    想在手机上编写python代码? python语言应用很广泛,很多小伙伴想利用空闲时间学习Python,但是有时候身边没有电脑,今天就给大家分享两种手机编写运行python的方法,让你可以直接在自己的手机上做python开发学习。 一、直接在线编写运行(免安装) 手机通过浏览器打开 https://c.runoob.com/compile/9/ 推荐:★★★…

    2022年3月16日 编程开发
    19.2K0
  • Pillow-优秀的Python图像处理库安装及入门教程

    Pillow库是Python 图像处理库(Python image library)的一个派生分支,提供了广泛的文件格式(BMP,PNG,JPEG等)支持,提供基本的图像处理能力,如: 图像存储、图像显示、改变图像大小,旋转图像,图像格式转换,色场空间转换,图像增强,直方图处理,插值和滤波等等。 比起OpenCV库的图像处理,功能有限,但函数使用非常方便,大…

    2020年12月8日
    5.1K0
  • Java向mysql数据库插入datetime类型数据实例(精)

    在Mysql数据库中日期跟时间有两种: 1、date类型,date类型也就是我们常见的储存yyyy-MM-dd类型的日期,它不能储存时间,也就是只能储存日期, 2、dateitme就是可以储存日期同时也可以储存时间。 datetime可以保存1000-01-01到 9999-12-31的日期。 上面mysql数据库中birthday字段类型设置的是datet…

    2018年5月2日
    20.8K0
  • 上机实战七:EL和JSTL的使用

    建议学时:2 一、使用EL表达式简化javaBean的开发 编写一个用户登录的JavaBean,用户信息包括用户名和密码。 编写user.jsp,使用setProperty设置用户名为125jz,密码为123。 使用EL获取用户名和密码并显示。 二、使用EL实现问卷调查 用户输入昵称、所在城市,并且以多选的方式让用户选择所使用的开发语言,然后使用EL表达式显…

    2018年12月4日
    9.4K0
  • 各版本MySQL数据库驱动程序jar包大全(java连接mysql驱动jar包)

    java连接mysql数据库,数据库程序开发步骤首先就要加载JDBC驱动程序,不同版本的mysql数据库需要的MySQL数据库驱动程序jar包版本也不同。 不少同学问怎么下载java连接mysql的驱动jar包? 今天给大家分享:各版本MySQL数据库驱动程序jar包大全(java连接mysql驱动jar包) mysql-connector-java-5.1…

    2019年9月28日
    25.5K1

发表回复

登录后才能评论

评论列表(3条)

  • 江山如画的头像
    江山如画 2023年10月14日 上午10:55

    传统的机器学习方法包括监督学习、无监督学习和半监督学习,其中监督学习是学习给定标签的数据集。请问标签为离散的类型,称为分类,标签为连续的类型,称为什么?(D)
    A.给定标签 B.离散 C.分类 D.回归

  • 江山如画的头像
    江山如画 2022年10月14日 上午8:50

    在 CNN 中使用 1×1 卷积时,下列哪一项是正确的( D)。
    A. 它可以帮助降低维数
    B. 可以用于特征池
    C. 由于小的内核大小,它会减少过拟合
    D. 都正确

  • 江山如画的头像
    江山如画 2022年9月22日 下午2:22

    答案为A