ResNet || 残差网络结构学习、Batch Normalization、迁移学习


1 介绍ResNet网络

       ResNet在2015年由微软实验室提出,斩获当年ImageNet竞赛中分类任务第一名,目标检测第一名。获得COCO数据集目标检测第一名,图像分割第一名。

       网络中的亮点
(1)超深的网络结构(突破1000层)
(2)提出residual模块
(3)使用 Batch Normalization加速训练(丢弃dropout)

在这里插入图片描述

  • 考虑到随着网络层数加深,会有:梯度消失(梯度爆炸)现象;退化问题(degradation problem) 但是ResNet可以解决这一问题!
    在这里插入图片描述

  • 这里左边的结构,用右边的结构代替了
    在这里插入图片描述

  • 实线的残差结构的shape前后是一致的,可以直接进行相加。

  • 注意,这里的stride变化了
    在这里插入图片描述

2 介绍 Batch Normalization

  • BN 是2015年提出来的,通过BN 可以加速网络收敛,提升准确率~
  • 使得每一个feature map,也就是每一个维度(channel),满足均值为0,方差为1的分布规律。
    在这里插入图片描述

2.1 什么是feature map

在CNN中,数据格式是 b*c*w*h 的,可以看做是c个二维图片堆叠在一起,每一个都是一个feature map

  • 比如说,红色、绿色和蓝色就分别是3个feature map
    在这里插入图片描述

  • 卷积之后的feature map
    层与曾之间会有若干个卷积核(kernel)(也是过滤器),比如说最常用的 3×3, 64, 表示有 64个 3×3大小的卷积核。
    有N个卷积核,那么下层就会产生N个feature map

2.2 BN 的过程

  1. 首先是对数据进行预处理(preprocessing), 调整到满足某一分布规律,这样就能加速了。
  2. 但是在conv1 之后,每一个feature map就不满足刚刚的分布规律了,此时就用用到 Batch Normalization 来使得每一个feature map 满足均值为0 方差为1

在这里插入图片描述

2.3 解读论文:Normalization via Mini-Batch Statistics

在这里插入图片描述
在这里插入图片描述

  • 论文给出了标准化处理的公式:
    在这里插入图片描述
  • 举个例子:
    在这里插入图片描述

2.4 使用BN时需要注意的问题

  1. 训练时:training=True , 在验证时training=False 在pytorch 中可以在 model.train()model.eval() 方法控制。
  2. batch size 需要尽量大一点,设置太小表现可能很糟糕,设置的越大求的均值和方差越接近整个训练集的均值和方差
  3. 建议将BN层,放在卷积层和激活层之间,且卷积层不要设置偏置bias,因为没有用。

在这里插入图片描述

3 迁移学习

优势:
(1)能够快速的训练处一个理想的结果
(2)当数据集较小时也能训练处理想的效果

注意:使用别人与训练模型参数时,要注意别人的预处理方式。

在这里插入图片描述


  • 下一篇文章讲的是,如何使用pytorch搭建ResNet网络~~有兴趣的小伙伴可以点击下方链接!

https://blog.csdn.net/weixin_42521185/article/details/124542423


  • 最后再次感谢b站up主的分享!为你投币点赞转发,做你的野生代言人~~
    在这里插入图片描述

https://www.bilibili.com/video/BV14E411H7Uw/?spm_id_from=pageDriver

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值