卷积神经网络+resnet

卷积目的:把原始输入的图像转化为一个特征矩阵(特征图),矩阵的每一个数值代表原始图像一个小区域的特征值,在一个小区域也可以提多个特征。

卷积核就相当于神经网络的权重参数,1×1的卷积核和全连接的效果差不多

【卷积核所涉及的参数】

大小:最好选择小一些的(常用3×3,都是奇数),第三个维度(一般为通道数)要和输入保持一致,否则无法进行卷积

值:最初是随机初始化的,会不断更新

计算过程:卷积核的每一层分别与输入的每一层对应计算,卷积核与原始图像小区域对应位置相乘再求和,将多个通道求得的值相加再加上偏置,即为此区域的特征值,如下图所示,第一个小区域的特征值为绿色中的3 (内积表示两个向量的相关程度,内积越大越相关)

移动步长:(通常步长为1)继续求下一个区域的特征值,最后求得一个特征图,后面再更新卷积核和偏置,得到新的特征图,提出来的特征没有什么特殊的意义,只是给计算机使用,值大的表示这个区域重要(热度图:展现图像中关注的区域)

padding:进行边缘填充,把之前的边缘点的重要性提高

卷积核个数:一般为64 128 256,一个卷积核可以生成一个特征图

卷积要做多次,越往后的卷积的感受野(特征图的一个值对应原始图像中多大的区域)越大,即越接近全局特征

【计算输出特征图的大小】

当padding=1,卷积核大小为3×3时,输出维度和输入维度一致。

【参数共享】

在一次卷积中,对于不同区域来说,卷积核的值是不变的,否则参数过多影响效率。

【池化层】

输入是一个特征图,将特征图的长宽压缩为原来的一半,特征图数量保持不变,一般经过几次卷积后再做一次池化

最大池化:将特征图划成不同区域,每个区域选择最大的值

 【整个过程】

输入全连接之前将特征拉成一个长向量

一共有7层(卷积层和全链接层),有权重参数计算的才称为层

 【经典网络resnet】

resnet能够实现更深的网络结构,各类计算机视觉任务都可以用这个网络结构提取的底层(多层次)特征进行获益。

深层网络的问题:网络直接加深会出现“网络退化”现象,即随着网络层不断的加深,模型的准确率先是不断的提高,达到最大值(准确率饱和),然后随着网络深度的继续增加,模型准确率毫无征兆的出现大幅度的降低。网络退化并不是梯度消失(没有学习)、梯度爆炸或者是过拟合(过拟合指的是训练集上好测试集上差,但深层网络是训练集和测试集都差) 。

resnet解决方案:提出了一个残差模块(预测值和真实值之间的偏差)

恒等映射分支相当于直接把X原封不动的输出,残差分支是正常经过网络拟合得到,将两条分支的输出进行逐元素相加(两条分支上的数据结构应该保持一致)得到H(X)=F(X)+X。因此只需要拟合残差部分,如果X足够好,就让F(X)为0,如果不够好,就通过F(X)进行优化。

ResNet34理解及其可视化 - Henry的博客 | Henry Blog (ldylab.cc)

(38条消息) ResNet详解——通俗易懂版_sunny_yeah_的博客-CSDN博客_resnrt

每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过 反向传播算法 最佳化得到的。

【反向传播】

作者:今天也要debug原文地址:https://blog.csdn.net/m0_67357141/article/details/127984063

%s 个评论

要回复文章请先登录注册