佛山做网站多少钱,金蝶软件免费版下载,wordpress 删除 下载,网站建设和维护怎么学文章目录 前言 1、卷积层 2、激活层 3、BN层 4、池化层 5、FC层#xff08;全连接层#xff09; 6、损失层 7、Dropout层 8、优化器 9、学习率 10、卷积神经网络的常见结构 前言
卷积神经网络是以卷积层为主的深层网络结构#xff0c;网络结构包括有卷积层、激活层、BN层、…文章目录 前言 1、卷积层 2、激活层 3、BN层 4、池化层 5、FC层全连接层 6、损失层 7、Dropout层 8、优化器 9、学习率 10、卷积神经网络的常见结构 前言
卷积神经网络是以卷积层为主的深层网络结构网络结构包括有卷积层、激活层、BN层、池化层、FC层、损失层等。卷积操作是对图像和滤波矩阵做内积元素相乘再求和的操作。 1、卷积层
常见的卷积操作如下
卷积操作解释图解标准卷积一般采用3x3、5x5、7x7的卷积核进行卷积操作分组卷积将输入特征图按通道均分为 x 组然后对每一组进行常规卷积最后再进行合并。空洞卷积为扩大感受野在卷积核里面的元素之间插入空格来“膨胀”内核。形成“空洞卷积”或称为膨胀卷积并用膨胀率参数L表示要扩大内核的范围即在内核元素之间插入L-1个空格。当L1时则内核元素之间没有插入空格变为标准卷积。深度可分离卷积深度可分离卷积包括为逐通道卷积和逐点卷积两个过程 通道卷积2D标准卷积 逐点卷积1x1卷积 反卷积属于上采样过程“反卷积”是将卷积核转换为稀疏矩阵后进行转置计算可变形卷积指标准卷积操作中采样位置增加了一个偏移量offset如此卷积核在训练过程中能扩展到很大的范围
补充
1x1 卷积即用 1x1 的卷积核进行卷积操作其作用在于升维与降维。升维操作常用于channel为 1 即是通道数为1的情况下降维操作常用于channel 为 n即通道数为n的情况下。
降维通道数不变数值改变。 升维通道数改变为kernel的数量即为filters运算本质可以看为全连接。 卷积计算在深度神经网络中的量是极大的压缩卷积计算量的主要方法如下
序号方法1采样多个 3x3 卷积核代替大卷积核如用两个3x3的卷积核代替5x5的卷积核2采用深度可分离卷积分组卷积3通道Shuffle4Pooling层5Stride 26等等
2、激活层
为了提升网络的非线性能力以提高网络的表达能力。每个卷积层后都会跟一个激活层。激活函数主要分为饱和激活函数Sigmoid、Tanh与非饱和激活函数ReLU、Leaky ReLU、ELU、PReLU、RReLU。非饱和激活函数能够解决梯度消失的问题能够加快收敛速度。
常用函数ReLU函数、Leaky ReLU函数、ELU函数等。 ReLU函数 Leaky ReLU函数 ELU函数
3、BN层
通过一定的规范化手段把每层神经网络任意神经元的输入值的分布强行拉回到均值为0方差为1的标准正态分布。BatchNorm是归一化的一种手段会减小图像之间的绝对差异突出相对差异加快训练速度。但不适用于image-to-image以及对噪声敏感的任务中。
常用函数BatchNorm2d
PyTorch用法nn.BatchNorm2d(num_features, eps, momentum, affine)
num_features一般输入参数为batch_size, num_features, height * width即为其中特征的数量。
eps分母中添加的一个值目的是为了计算的稳定性默认为1e-5。
momentum一个用于运行过程中均值和方差的一个估计参数我的理解是一个稳定系数类似于SGD中的momentum的系数。
affine当设为true时会给定可以学习的系数矩阵gamma和beta。
4、池化层
pooling一方面使特征图变小简化网络计算复杂度。一方面通过多次池化压缩特征提取主要特征属于下采样过程。
常用函数Max Pooling最大池化、Average Pooling平均池化等。
Max Pooling 和 Average Pooling用法
当需总和特征图上的所有信息做相应决策时通常使用AvgPooling例如在图像分割领域中用Global AvgPooling来获取全局上下文信息在图像分类中在最后几层中会使用AvgPooling。在图像分割/目标检测/图像分类前面几层由于图像包含较多的噪声和目标处理无关的信息因此在前几层会使用MaxPooling去除无效信息。 补充上采样层重置图像大小为上采样过程如Resize双线性插值直接缩放类似于图像缩放概念可见最邻近插值算法和双线性插值算法。实现函数有 nn.functional.interpolate(input, size None, scale_factor None, mod nearest, align_corners None) 和 nn.ConvTranspose2d(in_channels, out_channels, kernel_size, stride 1, padding 0, output_padding 0, bias True)。
5、FC层全连接层
连接所有的特征将输出值送给分类器。主要是对前层的特征进行一个加权求和卷积层是将数据输入映射到隐层特征空间将特征空间通过线性变换映射到样本标记空间label。全连接层可以通过 1x1卷积 global average pooling代替。可以通过全连接层参数冗余全连接层参数和尺寸相关。
常用函数nn.Linear(in_features, out_features, bias) 补充分类器包括线性分类器与非线性分类器
分类器介绍常见种类优缺点线性分类器线性分类器就是用一个“超平面”将正、负样本隔离开LR、Softmax、贝叶斯分类、单层感知机、线性回归、SVM线性核等线性分类器速度快、编程方便且便于理解但是拟合能力低非线性分类器 非线性分类器就是用一个“超曲面”或者多个超平曲面的组合将正、负样本隔离开即不属于线性的分类器 决策树、RF、GBDT、多层感知机SVM高斯核等 非线性分类器拟合能力强但是编程实现较复杂理解难度大
6、损失层
设置一个损失函数用来比较网络的输出值和目标值通过最小化损失来驱动网络的训练。网络的损失通过前向操作计算网络参数相对于损失函数的梯度则通过反向操作计算。
常用函数分类问题损失离散值分类问题、分割问题nn.BCELoss、nn.CrossEntropyLoss等。回归问题损失连续值推测问题、回归分类问题nn.L1Loss、nn.MSELoss、nn.SmoothL1Loss等。
7、Dropout层
在不同的训练过程中堆积扔掉一部分神经元以防止过拟合一般用在全连接层。在测试过程中不使用随机失活所有的神经元都激活。
常用函数nn.dropout
8、优化器
为了更高效的优化网络结构损失函数最小即是网络的优化策略主要方法如下
解释优化器种类特点基于梯度下降原则均使用梯度下降算法对网络权重进行更新区别在于使用的样本数量不同GD梯度下降SGD随机梯度下降面向一个样本BGD批量梯度下降面向全部样本MBGD小批量梯度下降面向小批量样本引入随机性和噪声基于动量原则根据局部历史梯度对当前梯度进行平滑Momentum动量法NAGNesterov Accelerated Gradient加入动量原则具有加速梯度下降的作用自适应学习率对于不同参数使用不同的自适应学习率Adagrad使用梯度平方和、Adadelta和RMSProp使用梯度一阶指数平滑RMSProp是Adadelta的一种特殊形式、Adam吸收了Momentum和RMSProp的优点改进了梯度计算方式和学习率AdagradAdadeltaRMSPropAdam自适应学习
常用的优化器为Adam用法为torch.optim.Adam。
补充卷积神经网络正则化是为减小方差减轻过拟合的策略方法有L1正则参数绝对值的和L2正则参数的平方和weight_decay权重衰退。
9、学习率
学习率作为监督学习以及深度学习中重要的超参其决定着目标函数能否收敛到局部最小值以及合适收敛到最小值。合适的学习率能够使目标函数在合适的时间内收敛到局部最小值。
常用函数torch.optim.lr_schedulerExponentialLRReduceLROnplateauCyclicLR等。
10、卷积神经网络的常见结构
常见的结构有跳连结构ResNet、并行结构Inception V1-V4即GoogLeNet、轻量型结构Mobilenet V1、多分支结构SiameseNetTripletNetQuadrupleNet多任务网络等、Attention结构ResNet Attention。
结构介绍与特点图示跳连结构代表ResNet2015年何恺明团队提出。引入跳连的结构来防止梯度消失问题进而可以进一步加大网络深度。扩展结构有ResNeXt、DenseNet、WideResNet、ResNet In ResNet、Inception-ResNet等并行结构代表Inception V1-V42014年Google团队提出。不仅强调网络的深度还考虑网络的宽度。其使用1x1的卷积来进行升降维在多个尺寸上同时进行卷积再聚合。其次利用稀疏矩阵分解成密集矩阵计算的原理加快收敛速度轻量型结构代表MobileNet V1 2017年Google团队提出。为了设计能够用于移动端的网络结构使用Depth-wise Separable Convolution的卷积方式代替传统卷积方式以达到减少网络权值参数的目的。扩展结构有MobileNetV2、MobileNetV3、SqueezeNet、ShuffleNet V1、ShuffleNet V2等 多分支结构代表TripletNet基于多个特征提取方法提出通过比较距离来学习有用的变量。该网络由3个具有相同前馈网络共享参数组成的需要输入是3个样本一个正样本和两个负样本或者一个负样本和两个正样本。训练的目标是让相同类别之间的距离竟可能的小让不同的类别之间距离竟可能的大。常用于人脸识别。Attention结构代表ResNet Attention对于全局信息注意力机制会重点关注一些特殊的目标区域也就是注意力焦点进而利用有限的注意力资源对信息进行筛选提高信息处理的准确性和效率。注意力机制有Soft-Attention和Hard-Attention区分可以作用在特征图上、尺度空间上、channel尺度上和不同时刻历史特征上等。 参考
小白学视觉
https://www.bilibili.com/video/BV1we4y1X7vy/?spm_id_from333.880.my_history.page.clickvd_source8332e741acbb75b438e9c1c91efed022