为什么不使用keep_graph = True会导致错误?

时间:2019-08-11 06:13:06

标签: python neural-network deep-learning pytorch

如果我需要两次通过神经网络向后传播,而我不使用keep_graph = True,则会出现错误。

为什么?我意识到将用于第一个反向传播的中间变量保留为第二个反向传播是很好的。但是,为什么不像最初在第一次反向传播中那样对它们进行简单地重新计算?

1 个答案:

答案 0 :(得分:0)

默认情况下,PyTorch不存储中间渐变,因为PyTorch的主要功能是动态计算图,因此在反向传播之后,该图将被释放,所有中间缓冲区都将被破坏。