卷积神经网络理论

发布时间 2023-03-22 21:18:31作者: Laplace蒜子

卷积基本概念

卷积操作

感受野计算

RFi  = ( RFi+1 - 1)x si +Ki
si为第i层的步长,
Ki为第i层卷积核大小。

数据填充

图像填充后卷积输出的维度:

n:图像大小

f:卷积核大小

p:填充的层数

s:卷积核的步幅

卷积模式

Full:全填充,扩大原图
Same:填充保持原图大小
Valid:不填充

激活函数

作用

加入非线性因素,提高网络的表达能力。

常用激活函数

Identity:稳定适合线性任务
ReLU:计算速度快不存在梯度消失问题(输入为正),可能丢失一些特征,输入为负导致权重无法更新(神经元死亡)
Parametric ReLU(PReLu)收敛速度快,解决神经元死亡问题。工作量大(额外参数)
ELU:适合噪声易收敛计算量大收敛慢
Maxout函数:缓解梯度消失,解决神经元死亡,额外计算量
CNN首选ReLU和较小的学习率,其次考虑Leaky ReLU,PReLU,ELU,Maxout

特征图

层卷积层:提取的是图像基本特征,如边缘、方向和纹理等特征。
层卷积层:提取的是图像高阶特征,出现了高层语义模式, 如“车轮”、“人脸”等特征。

基本结构

池化层

工作方式

分为最大或平均池化,根据某个位置相邻区域的总体统计特征作为该位置

作用

        1. 减少计算量,防止过拟合。
        2. 增强网络对输入图像中的小变形、扭曲、平移的鲁棒性。
        3. 防止图像因为尺寸改变影响结果。

全连接层

工作方式

将两层神经元全连接方式接在一起,后一层的神经元个数决定输出,也就是降维处理后的维度。

作用

降维

输出层

分类问题:Softmax函数
回归问题:线性函数

经典神经网络

LeNet

结构:卷积-池化-卷积-池化-卷积-全连接-输出

AlexNet

结构:卷积-池化-卷积-池化-卷积-卷积-卷积-池化-输出

在结构上相当于将LeNet 全连接层 替换成了 卷积-卷积-池化结构。

激活函数:ReLU。
避免过拟合:使了用Dropout。
特点:重叠最大池化。

VGGNet

特点

卷积层卷积核均为3*3,步长均为1;池化层池化核均为2*2。

结构

两个3*3卷积核与5*5卷积核性能对比

两个3*3卷积核计算效率更高,参数更少,其间还可以插入ReLU,感受野却和一个5*5卷积核一致。虽然深度增加了,但是参数却更少。

Inception Net

特点

去掉了全连接。

结构

深度:22层。
宽度:4个分支。

1×1的卷积的作用

• 可以跨通道组织信息,来提高网络的表达能力;
• 可以对输出通道进行升维和降维;如28x28x192维数据可以通过卷积核1x1x32降低到28x28x32的数据。

ResNet(残差神经网络,ImageNet 2015冠军)

优点

解决梯度消失和梯度爆炸问题

核心

残差块,跳跃连接。(这也是梯度消失或梯度爆炸问题的解决方案

将u拆分为传统的连接加上一个跳跃的连接

求导得到:

最终相当于原始传统的梯度再加上一个额外的值,就不会出现梯度消失或梯度爆炸的问题。

优点

有了跳跃连接,可以让网络更深。

DenseNet

借助了跳跃连接的优点,每一层都使用前面所有层的特征映射作为输入。可以扩展到上百层而不会出现梯度消失或梯度爆炸的问题。

优点

      1. 缓解了消失梯度问题
      2. 加强了特征传播,鼓励特征重用
      3. 一定程度上减少了参数的数量

 

R-CNN

主要用于目标检测

目标检测衡量标准

      1. 类别正确且置信度大于一定阈值
      2. 预测框与真实框的IoU大于一定阈值 

IoU=Intersection / Union。

Intersection:是交集

Union:并集

流程

区域划分:对输入图像,提取多个类别独立候选区(候选区也就是Proposal),用是 Selective Search算法。
特征提取:使用AlexNet提取每个区域的特征。
目标分类:SVM分类每个区域。
边框回归:Bbox回归,对边框坐标偏移优化和调整。(因为是有监督学习,每个区域都进行人工标注了,所以要对候选框修正到人工标注的框)

Selective Search算法

图像中物体可能存在的区域应该有某些相似性或者连续性的,采用子区域合并的方法

        1. 图像分割
        2. 计算每个相邻区域的相似度
        3. 合并两个最相似的区域,放入集合中。
        4. 删除合并前与之有关联的所有区域
        5. 计算新集与所有子集相似度。

 

Bbox回归

平移,缩放调整物体边框,使得预测的框与标定的框尽可能的接近。

缺点

每个Proposal独立提取CNN特点,分布训练。

改进

SPPNet

SPPNet提出空间金字塔网络。在最后一个卷积层之后插入一个SPP层(或替换原卷积层之后的池化层),在最后一个卷积层之后的特征图上,划分粗细尺度不同的几级均匀网格。对每级网格中的每个单元,使用最大值池化或平均值池化,池化之后的结果融合在一起,构成长度固定的特征向量。

Fast R-CNN

采用联合学习,把SVM、Bbox回归和CNN阶段一起训练。

最后一层的Softmax换成两个:一个是对区域的分类Softmax,另一个是对Bounding box的微调。

ROI Pooling层:每个选取均匀划分,最大池化,将大小不一选取转变为大小统一的数据送入下一层。

max pooling -> 3x3 feature

Faster R-CNN

RPN(Region Proposal Network):使用全卷积神经网络来生成区域建议(Region proposal),替代之前的Selective search。

Region Proposal Network和Fast R-CNN两个网络交替训练。

一秒钟可以识别5幅图像。

YOLO系列

将图像划分成一个个小网格,每个网格训练属于自己的类,属于背景或者实物。最终合并。

优点

背景误检率低
速度快,实时性好,

缺点

准确率低于R-CNN,不适用小物体检测。

改进