这里写目录标题
Faster RCNN
内容:
①详解Faster RCNN理论
https://www.bilibili.com/video/BV1af4y1m7iL
②Faster RCNN源码解析(pytorch)
https://www.bilibili.com/video/BV1of4y1m7nj
LeNet
内容:
①详解LeNet-5模型
②用Pytorch搭建LeNet-5模型且基于CIFAR-10数据集训练
https://blog.csdn.net/qq_45445740/article/details/106827428
AlexNet
https://blog.csdn.net/qq_37541097/article/details/104409156
内容:
①AlexNet网络结构详解视频
②使用pytorch搭建AlexNet并针对花分类数据集进行训练
③视频最后中也介绍了如何训练自己的数据集进行处理与预测
VggNet
参考博客:
https://blog.csdn.net/qq_37541097/article/details/104410535
VGG详细讲解:https://www.bilibili.com/video/BV1fU4y1E7bY
内容:
①VGG网络结构详解视频:详解感受野的计算:目的是减少参数的个数
可以参考8.1.3加深层的动机 https://blog.csdn.net/qq_45445740/article/details/106412732
②使用pytorch搭建VGG并训练
PS:VGG训练的时间较长,效果也不是太理想,若需要使用的话,建议使用迁移学习的方法,去训练自己的样本集。
VGG所有种类网络结构
VGG所有种类网络结构的参数量
VGG16网络结构图
VGG的第一层全连接层占据了绝大部分参数原因:需要将上一层7×7×512维度的向量拉平放到1×1×4096维的全连接层,则每个节点都需要接受7×7×512,所以是7×7×512×4096个参数。
VGG19网络结构图
VGG中全部使用3×3卷积
好处:
①深度变深了;
②非线性次数变多了,可以让模型学习到更多非线性的决策边界;
③学习能力变得更好,表示空间类型变得更大;
④参数量更少,比如两个3×3卷积,可以代替一个5×5卷积,参数量减少从:5×5变成2×3×3。
可视化VGG-16网络结构:https://dgschwend.github.io/netscope/#/preset/vgg-16
VGG潜在应用:迁移学习、可解释性分析
使用VGG做迁移学习时,前面层网络全部冻结,只需要修改最后一层,比如你有2622个类别进行分类,只需要将最后一层修改为1×1×2622的格式之后再进行训练。
用VGG作为迁移学习的思路:把VGG作为一个特征提取器,输入图像获得4096维度的向量,然后再用一个简单的分类器,比如线性支持向量机,对这个向量进行分类,这个简单的分类器可以在更小的数据集上。
因为VGG是一个经典的串行的卷积神经网络,它没有引入跨层连接的技巧,所以最后它提取的feature map是包含图像的位置信息的,比如最后提取的feature map的左上角对应的就是原图的左上角区域,feature map的右上角对应的就是原图的右上角区域。可以把它预测出的类别在原图上可视化显示出来。
GoogLeNet
https://blog.csdn.net/qq_37541097/article/details/104411613
内容:
① GoogLeNet网络结构详解视频
1*1的卷积在深度学习中的作用
②使用pytorch搭建GoogLeNet网络并训练
③保存训练好的权重文件,进行预测
ResNet
ResNet网络结构详解与模型的搭建
https://blog.csdn.net/qq_37541097/article/details/104710784
内容:
①ResNet网络结构详解视频
②使用Pytorch搭建ResNet网络并基于迁移学习训练
这篇讲残差网络的:残差网络学习心得
Batch Normalization详解以及pytorch实验
ResNeXt
内容:
①ResNeXt网络结构
https://www.bilibili.com/video/BV1Ap4y1p71v
②使用pytorch搭建ResNeXt并基于迁移学习训练
https://www.bilibili.com/video/BV1rX4y1N7tE
MobileNet
参考资料:
MobileNet(v1、v2)网络详解与模型的搭建
https://blog.csdn.net/qq_37541097/article/details/105771329
MobileNet V1详解:https://www.bilibili.com/video/BV16b4y117XH
谷歌轻量化卷积神经网络MobileNet V1
Mobilenets: Efficient convolutional neural networks formobile vision applications(CVPR2017)
内容:
①MobileNet(v1,v2)网络详解视频
② 使用pytorch搭建mobilenet v2并基于迁移学习训练视频
(PS:AlexNet、VGG、GoogLeNet以及ResNet网络,都是传统卷积神经网络(都是使用的传统卷积层),缺点在于内存需求大、运算量大导致无法在移动设备以及嵌入式设备上运行。而MobileNet网络就是专门为移动端,嵌入式端而设计。)
③MobileNetv3网络详解
https://www.bilibili.com/video/BV1GK4y1p7uE
④使用Pytorch搭建MobileNetV3并基于迁移学习训练
https://www.bilibili.com/video/BV1zT4y1P7pd
轻量化网络的学习路径
深度可分离卷积
轻量化网络的学习路径:
MobileNet是基于深度可分离卷积(Depthwise separable convolution)来对卷积层进行优化和改进从而降低参数量,减少计算量加速运算使网络轻量化的。
具体流程:
Depthwise Convolution处理长宽方向的空间信息,
Pointwise Convolution处理跨通道的信息。(通过1×1卷积来完成)
用了深度可分离卷积的好处:减少了计算量和参数量
MobileNet V1网络结构
MobileNet V2
谷歌轻量化卷积神经网络MobileNet V2
MobileNetV2: Inverted Residuals and Linear Bottlenecks(CVPR 2018)
MobileNet V1的局限:
①没有残差连接
②很多Depthwise卷积核训练出来的是0(原因:1.卷积核权重数量核通道数量太少,太“单薄”;2.ReLU激活函数,会把小于0的所有输入都置为0,则前向传播中的张量为0,反向传播中的梯度也为0;3.低精度的浮点数表示,如果用16bit或8bit这样特别少的比特数来表示一个浮点数,表示的范围有限)
MobileNet V2