図3に示すように、自動微分(導出、勾配)

いくつかの計算後のX 1、Y、次いで現れDY / DX、およびマッピングX→Y(Y-X-方法により得られた)を得ました。

DY / DXの必要性を得る二段階:y.backward()、x.grad、すなわち、バックプロパゲーション、勾配が得られます。

テンソルgrad_fn X→Yマッピングは、オブジェクトのプロパティである。y.grad_fn

注意それは勾配バックプロパゲーション前にクリアしなければならないので、バックプロパゲーション勾配は、蓄積されます

t.ones = X(2,2&、requires_grad = TRUE) Xの上のすべての算術演算を追跡 
Y = x.sum() のみスカラーYこと4.注意 
y.grad_fnの#1 Yは何の計算によって得られます、SumBackward0 AT 0x2598370d948 Y、すなわち、Y / DXの勾配、差動対をxは 
y.backward() バックプロパゲーション
プリント(x.grad) 出力勾配それはバックプロパゲーション勾配前にクリアしなければならないので、バックプロパゲーション勾配、蓄積します
y.backward() 
 印刷(x.grad) 出力勾配
y.backward() 
 印刷(x.grad) 出力勾配勾配クリア
x.grad.zero_()
y.backward() バックプロパゲーション
印刷(X .grad) 出力勾配

 

 

おすすめ

転載: www.cnblogs.com/xixixing/p/12626875.html