一、resnet18整體網絡結構
我們觀察,實際可以將ResNet18分成6個部分:
1. Conv1:也就是第一層卷積,沒有shortcut機制。
2. Conv2:第一個殘差塊,一共有2個。
3. Conv3:第二個殘差塊,一共有2個。
4. Conv4:第三個殘差塊,一共有2個。
5. Conv5:第四個殘差塊,一共有2個。
6. fc:全連階層。

可以看到有8個箭頭,第一層卷機沒有shortcut機制
二、basicblock和bottleneck
網絡由兩種不同的基本單元堆疊即可:
左邊是BasicBlock,ResNet18和ResNet34就由其堆疊。
右邊BottleNeck,多了一層,用1x1的卷積先降通道再升通道,ResNet50、ResNet101、ResNet152就由其堆疊。當要降維的時候,上面的第一個3x3卷積使用stride 2(同時旁邊的shortcut也需要一個1x1的stride 2卷積,而非identity,使得后面相加的時候尺寸一致),平時卷積都是stride 1。
使用1x1卷積,對稀疏信息進行壓縮,有效利用計算力,所以效率更高。
https://blog.csdn.net/sazass/article/details/116864275