卷积神经网络(CNN)是一类深度神经网络 。 这是受人类大脑视觉皮层的启发 。 每当我们看到某些东西时 , 一系列的神经元皮层就会被激活 , 每层都会检测到一些特征 , 如线条 , 边缘(如垂直边缘 , 水平边缘) 。
文章插图
CNN广泛用于 图像识别,图像分类 , 对象检测 , 人脸识别等 。
【Layer|卷积神经网络-深度学习】过度简化图:
CNN的基本层: - C onvolution - Pooling - Flattening - Fully Connected Layer(Neural network)
文章插图
卷积神经网络
文章插图
示例
了解这一点的一些先决条件:
计算机将输入图像视为像素数组 , 这取决于图像的分辨率 。 根据图像分辨率 , 可以看到 h * w * d(h =高度 , w =宽度 , d =维度) 。
彩色图像有 3个通道即 RGB , 而黑/白图像只有 一个通道 。 例如 , 24*24* 3阵列的 RGB矩阵图像(3指RGB值)和一幅图像为4 * 4 * 1阵列的灰度矩阵(b / w)图像 。
文章插图
现在让我们了解过滤器(卷积/特征图):
文章插图
要应用某些过滤器 , 我们需要将图像与过滤器矩阵相乘 。 以下是标准过滤器及其矩阵表示的一些示例 。
过滤器的重要性:
在自动驾驶汽车的情况下 , 边缘检测过滤器非常重要 。
现在我们已经准备好了解CNN层及其工作原理 。
卷积层(Convolution Layer)
卷积是从输入图像中提取特征的第一层 。 这里我们将输入图像与不同的卷积(过滤器)相乘以获得具有提取特征的新图像 。
例如:考虑一个6 * 6 * 3的图像 , 这里我们应用两个尺寸为3 * 3 * 3的不同过滤器 , 输出为4 * 4
文章插图
输出的公式:
- 输入(Input): n * n * nc
- 过滤器(Filter): f * f * nc
- 填充(Padding): p (本文后面部分介绍)
- 步幅(Stride): s
- 输出: [(n+2p-f)/s+1] *[(n+2p-f)/s+1] *nc'
[(6+(0*2)–3)/1+1]*[(6+(0*2)–3)/1+1]*3 = 4*4*3
nc是输入和过滤器中的通道数 , 而nc'是过滤器的数量 。
工作说明:
文章插图
池化层(Pooling Layer)
当图像太大时 , 池化层会减少参数的数量 。 它减少了每个映射的维度 , 但保留了重要信息 。 空间池化(Spatial pooling )可以是不同类型的:
- 最大池化
- 均支池化
- 求和池化
文章插图
最大池化
填充(padding):
推荐阅读
- Windows10将永久删除Flash Player,一加9葡萄紫配色上手图曝光
- 物联网更加智能安全:研究人员开发微型神经网络,你家冰箱以后也能深度学习了
- Layer 2方案——DeFi可能不会从以太坊上迁徙出去了
- 为什么说卷积神经网络,是深度学习算法应用最成功的领域之一?
- 扩展图神经网络:暴力堆叠模型深度并不可取
- 输出层|PyTorch可视化理解卷积神经网络
- 基于神经网络的风格迁移目标损失解析
- 人体|用于单目3D人体姿态估计的局部连接网络,克服图卷积网络限制
- 图神经网络快速爆发,最新进展都在这里了
- 麻省理工学院的神经网络知道自己什么时候可以被信任