Skip to content

模型构建与计算组件

如今深度学习的底层计算原理已经被封装在各类抽象库中,因此开发者们在开发时往往不再考虑单个人工神经元,而是从层的角度构思网络,并在设计时考虑更粗糙的块(Block)。

Modules Abstraction

层与块 (Layers & Blocks)是代码组织的基石。为了处理成百上千层的网络,工程师引入了面向对象的思想。

  • 层 (Layer) :最小计算单元(如 nn.Linear, nn.Conv2d)。它封装了权重 \(W\)、偏置 \(b\) 以及对应的数学算子。
  • 块 (Block/Module) :容器。一个块可以包含多个层(如一个残差块 ResNet Block)。

块可以嵌套块,形成树状结构。当你调用 model.backward() 时,它是通过递归遍历这棵树来计算所有梯度的。块会自动识别并搜集它内部所有层的参数来进行参数管理。


评论 #