:
我們令out為 , 因為
所以
所以上面的輸出是正確的。
數(shù)學上,如果有一個函數(shù)值和自變量都為向量的函數(shù) , 那么
關于
的梯度就是一個雅可比矩陣(Jacobian matrix):
而torch.autograd這個包就是用來計算一些雅克比矩陣的乘積的。例如,如果
是一個標量函數(shù)的
的梯度:
那么根據(jù)鏈式法則我們有
關于
的雅克比矩陣就為:
注意:grad在反向傳播過程中是累加的(accumulated),這意味著每一次運行反向傳播,梯度都會累加之前的梯度,所以一般在反向傳播之前需把梯度清零。