深度学习入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删。
目录
一、背景知识 — 残差结构
关于残差以及一些残差网络(eg: Resnet)的分析,可以看一下博主之前写的博客
二、Bottleneck和building block
说到Bottleneck,就会想到他的”兄弟” — building block。Bottleneck和building block其实都是在Resnet中提出的。如下图所示,左边是针对Resnet34提出的building block;右边是针对Resnet50提出的Bottleneck。
building block由两个33的卷积层组成,Bottleneck由两个11卷积层夹心一个33卷积层组成:其中11卷积层负责减少然后增加(实际上就是恢复)维数,让3*3卷积层成为输入/输出维数更小的瓶颈。Bottleneck既减少了参数量,又优化了计算,保持了原有的精度。
第一个11的卷积把256维channel降到64维,最后再通过11卷积恢复,整体上用的参数数目为:
1x1x256x64 + 3x3x64x64 + 1x1x64x256 = 69632
如果不采取瓶颈结构的话(Building block),就是两个3x3x256的卷积,整体上用的参数数目为:
3x3x256x256x2 = 1179648
所以我们也能看出来,如果网络层数少(
Original: https://blog.csdn.net/weixin_55073640/article/details/122588049
Author: tt丫
Title: 详解YOLOv5中的Bottleneck
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/718692/
转载文章受原作者版权保护。转载请注明原作者出处!