一句话定义:宽度(Width)指每一层能同时处理多少信息,通常体现为神经元数、通道数或隐藏维度(hidden size);深度(Depth)指信息被逐层加工的轮数,也就是层数(layers)。两者合起来决定模型的“形状”,而参数量只决定“大小”。
打个比方:把神经网络想成一条加工流水线。深度是工序数量——原料先粗加工,再精修,再抛光,越往后的工序处理的特征越抽象:浅层认边缘和颜色,深层才认得出“猫”。宽度是每道工序同时能上多少工人、摆多少台机器:工位越宽,一层里能同时盯住的特征维度越多,一次变换能装下的信息越大。
加宽换的是“并行容量”。同一层里同时表达更多东西,矩阵乘法更大也更规整,对硬件友好、容易并行。但参数量大致随宽度平方增长,显存和通信往往先撑不住;而且变换的次数没变,抽象能力不一定跟着涨,收益会饱和。
加深换的是“复合次数”。每多一层就多一次非线性变换,特征可以被反复组合、抽象,也能传递更远的关系。但链子越长越难训:梯度容易消失或爆炸,还会出现退化——理论上更深的网络不该更差,实际却训不动,于是要靠残差连接(Residual Connection)、归一化(Normalization)这类技巧把路修通。另外深度是串行的,推理延迟随层数增加,时间和成本都跟着涨。
| 对比项 | 加宽 | 加深 |
|---|---|---|
| 改的是什么 | 每层的神经元/通道数 | 层数 |
| 换来什么 | 单层同时表达更多特征 | 更多次复合变换、更抽象的特征 |
| 计算特点 | 并行友好,矩阵大 | 串行链路,可做流水线切分 |
| 主要风险 | 显存与参数开销大,收益饱和 | 梯度不稳、退化、延迟高 |
| 常用手段 | 调隐藏维度、增加专家分支 | 残差连接、归一化、跳连 |
和相邻概念的区别:日常说的“模型多大”指参数量(Parameters),那是总量;宽度和深度是形状。同样参数量,可以又扁又宽,也可以又瘦又深,行为和成本差别很大。这也是为什么做缩放(Scaling)时,通常按比例同时调整两者,而不是只往一个方向堆。
对从业者的意义:宽深比是结构设计里的基本取舍。预算有限时,先判断瓶颈是“表达容量不够”还是“训练不稳、延迟太高”,再决定往哪个方向加。对普通职场人:这也是一个通用的组织比喻——加人是加宽,加审稿轮次是加深;两者收益都会递减,而且经常卡在别的地方。
具体某个模型该怎么配,以官方文档和技术报告为准。
