第七章卷积神经网络(CNN)——原理+numpy代码详解

本文详细介绍了卷积神经网络(CNN)的结构,包括卷积层、池化层,以及它们的numpy实现。卷积层通过卷积运算、填充和步幅调整来处理图像数据,保持了输入形状。池化层则通过Max或Average池化缩小空间尺寸,增强模型对微小位置变化的鲁棒性。通过im2col函数,卷积层和池化层的计算效率得以提高,实现了CNN的高效运行。
摘要由CSDN通过智能技术生成

本专栏是书《深度学习入门》的阅读笔记一共八章:

第一章深度学习中的Python基础。主要讲解了深度学习将要用到的python的基础知识以及简单介绍了numpy库和matpoltlib库,本书编写深度学习神经网络代码仅使用Python和numpy库,不使用目前流行的各种深度学习框架,适合入门新手学习理论知识。

第二章感知机。主要介绍了神经网络和深度学习的基本单元感知机。感知机接收多个输入,产生一个输出,单层感知器可以实现与门,或门以及与非门,但是不能实现异或门,异或门的实现需要借助多层感知机,这也就是说,单层感知机只能表示线性空间,而非线性空间的表示需要借助多层感知机。

第三章神经网络——基于numpy的代码详解。主要讲解了神经网络的构成,神经网络中的激活函数,神经网络中层与层的矩阵乘法,3层神经网络的代码,输出层的设计和批处理。

第四章神经网络的学习算法——随机梯度下降numpy代码详解。主要讲解了神经网络中的学习算法,介绍了损失函数,通过微分求导的方法求梯度,随机梯度下降算法的原理以及基于numpy的代码详解。

第五章误差反向传播算法——基于numpy的代码详解。这一章主要介绍了,实现误差反向传播的一种工具,计算图,从最简单的加法节点乘法节点的计算图开始,介绍了加法节点乘法节点的反向传播,一步步深入,到加法层,乘法层,激活函数层等层的反向传播,最终把各种层的反向传播拼接在一起,就形成了整个网络的反向传播。

第六章神经网络的学习技巧——原理+numpy代码详解。这一章主要介绍了除了随机梯度下降算法以外其他更新参数的学习算法,权重初始值的设置,解决过拟合的方法以及batch normalization,最后简单介绍了神经网络超参数的确定规则。

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

7.1整体结构

        前面我们介绍的是全连接(fully-connected)网络,CNN除了具有全连接层以外,还具有适合处理图像的卷积层(Convolutional)和池化层(Pooling)。

        典型的全连接网络的例子为:

        典型的卷积神经网络的例子为:

 

7.2卷积层

7.2.1卷积运算

        因为在全连接层中,数据都被展成了1维的形式,忽略了图片的形状信息,而图像是由3维数据构成,完全不考虑图像的结构肯定是不合理的,图像的信息很有可能隐藏在图像的结构中,而卷积层可以保持输入的数据形状不变,当输入图像信息时,卷积层会以3维数据的形状接收输入数据,并以3维数据的形状输出数据,因为这一点,在卷积层中,输入数据又叫输入特征图(input feature map),输出数据又叫输出特征图(output feature map)。

        那么卷积层对输入特征图做了哪些运算呢?实际上,卷积层做的运算就是卷积运算,卷积运算相当于图像处理中的“滤波器运算”。有的文献中也将“滤波器”叫做“核”。下面给出一个卷积运算的例子。

       

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值