Variable类存在错误
bftan1949 opened this issue · 1 comments
bftan1949 commented
Variable类在初始化时,父类Node的初始化不应该传入self参数,即
def __init__(self, dim, init=False, trainable=True, **kargs):
"""
变量节点没有父节点,构造函数接受变量的形状,是否初始化以及是否参与训练的标识
"""
Node.__init__(**kargs) #而非Node.__init__(self, **kargs)
self.dim = dim
这是因为如果传入self,则Node会将自身Variable实例收集到parent参数中,然后将自己加入到自己的children列表中,如果调用reset_value函数,就会陷入无限递归,从而报错
bftan1949 commented
对不起,理解错了