1. 计算图基础概念与应用场景
计算图(Computational Graph)作为深度学习中的核心数据结构,本质上是一种用于描述数学运算的有向无环图(DAG)。在图中,节点代表运算操作或变量,边则代表数据流向。这种可视化表示方法最早可以追溯到1970年代的自动微分研究,如今已成为现代深度学习框架(如TensorFlow、PyTorch)的底层基础。
1.1 计算图的组成要素
一个标准的计算图包含三类基本元素:
-
运算节点(Operation Nodes):表示数学运算操作,如加法、乘法等。在可视化时通常用圆形或方形表示,内部标注运算类型。例如:
- 乘法节点标注为"×"
- 加法节点标注为"+"
- 函数节点如"sigmoid"、"ReLU"
-
变量节点(Variable Nodes):表示输入数据、参数或中间计算结果。通常用圆形表示,可能标注变量名称或具体数值。
-
有向边(Edges):表示数据的流动方向,边上常标注传递的具体数值。箭头的方向代表计算的正向传播方向。
实际应用中,深度学习框架会采用更复杂的节点类型,如矩阵乘法节点(MatMul)、卷积节点(Conv2D)等,但基本原理与简单运算节点相同。
1.2 计算图解决的实际问题
通过超市购物的简单例子,我们可以直观理解计算图的价值:
问题1:购买2个单价100日元的苹果,消费税10%,求总支付金额。
对应的计算图构建过程如下:
- 创建苹果单价节点(100日元)
- 创建乘法节点(×2)计算苹果总价
- 创建乘法节点(×1.1)计算含税金额
这种表示方法具有三个显著优势:
- 计算过程可视化:每个运算步骤清晰可见
- 中间结果可追踪:200日元(苹果总价)、220日元(最终支付)等中间值都被显式记录
- 局部计算隔离:每个节点只需关心自身的输入输出,不依赖全局信息
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 正向传播机制详解
正向传播(Forward Propagation)是计算图的基础计算模式,其核心特点是沿着边的方向顺序执行计算。下面通过更复杂的例子深入分析其工作机制。
2.1 多商品计算案例
考虑如下扩展场景:
- 苹果:2个,每个100日元
- 橘子:3个,每个150日元
