19.1_命名变量

19.1 命名变量

接下来我们要处理很多变量。如果能对这些变量加以区分,处理起来就会很方便。因此,在本步骤中,我们将为变量设置名字。为此,要在Variable类中添加实例变量name,具体如下所示。

steps/step19.py

class Variable: def__init__(self,data,name  $\equiv$  None): if data is not None: ifnotisinstance(data,np.ndarray): raiseTypeError('{}isnotsupported'.format(type(data))) self.data  $=$  data self.name  $=$  name self.grad  $=$  None self creator  $=$  None self_generation  $= 0$

上面的代码在初始化参数中增加了name=None,并将其设置给了实例变量name。这样一来,我们就可以通过 x=Variable(np.array(1.0)x = \text{Variable(np.array}(1.0) ,'input_x')来将变量命名为input_x了。如果不为变量命名,名字就是None,变量就是一个未命名的变量。

允许为变量设置名称,就能在计算图的可视化等场景中将变量的名称显示在图上。计算图的可视化在步骤25和步骤26中实现。