Pytorch:如何仅向后递归树的一部分?

时间:2019-02-15 18:52:40

标签: python machine-learning pytorch backpropagation

假设我有

result = mynet1(input)

calculated_value1 = result
calculated_value2 = calculated_value1 * result

我只想在result表达式中使用向后推导calculated_value2,而不是从result来的内部calculated_value1

意思是,我想要

calculated_value2.backward()

calculated_value1称为常数,即使它依赖于result,因此渐变仅依赖于result一次,而不依赖于result^2

很明显,result.detach()不会解决问题,因为那样的话整个表达式将没有参数可以优化。

如何实现所描述的行为?


目的明确:

我打算实施section 13.5 of this book

enter image description here

其中delta依赖于V,但不是派生的,而V本身是派生的。


如果这个问题的名字更合适,请告诉我,以便我进行更改。

0 个答案:

没有答案