resnet34的网络结构图
时间: 2024-12-28 08:13:49 浏览: 45
### ResNet34 网络架构解析
ResNet34 属于较浅层的残差网络,采用了基本的残差模块设计。该模型由多个卷积层组成,并通过短接连接(skip connection)来解决深层神经网络中的梯度消失问题。
#### 基本残差单元结构
对于像 ResNet34 这样的较浅层次网络,采用的是基础版本的残差块,其中包含两个 3×3 卷积层[^1]:
```plaintext
input -> BN -> ReLU -> Conv(3x3, filter) -> BN -> ReLu -> Conv(3x3, filter) -> output (+ input)
```
这种简单的两层卷积加上跳跃连接的设计能够有效缓解训练过程中可能出现的信息丢失现象。
#### 整体架构布局
整个 ResNet34 架构可以分为以下几个部分:
- 初始阶段:7 × 7 的大尺寸卷积核进行特征提取;
- 主干网路:四个不同尺度下的重复堆叠的基础残差模块组;
- 结束阶段:全局平均池化层以及全连接分类器;
具体来说,在主干网络中,ResNet34 总共有三个主要的变化点,即下采样操作分别发生在第2、3、4个stage处,每次都将空间分辨率减半并增加通道数以保持参数量大致不变。
| Stage | Number of Blocks | Output Size |
|-------|------------------|-------------|
| conv1 | - | H/2 x W/2 |
| stage2_x | 3 | H/4 x W/4 |
| stage3_x | 4 | H/8 x W/8 |
| stage4_x | 6 | H/16 x W/16 |
| stage5_x | 3 | H/32 x W/32 |
每个 block 内部都遵循上述提到的基本残差单元模式。需要注意的是,在某些特定位置会引入步长为2的卷积来进行降维处理,从而实现特征图大小逐步缩小的效果。
为了更直观理解这个过程,下面是一个简化版的 ResNet34 架构示意图形表示法:
```mermaid
graph TD;
A[Input Image (HxWxC)] --> B{Convolution Layer};
B --> C[Batch Normalization];
C --> D[ReLU Activation];
D --> E{Max Pooling};
F[Stage_2: Basic Block * 3] --- G[Stage_3: Basic Block * 4];
G --- H[Stage_4: Basic Block * 6];
H --- I[Stage_5: Basic Block * 3];
J[Average Pooling] <-- I;
K[Fully Connected Layer] <-- J;
L[Softmax Output] <-- K;
style A fill:#f96,stroke:#333,stroke-width:4px;
style L fill:#bbf,stroke:#f66,stroke-width:2px;
```
此图表展示了从输入图像到最终预测输出的整体流程,包括各个阶段之间的转换关系及其内部组件构成。
阅读全文