關於tensor.data


(1)tensor .data 返回和 x 的相同數據 tensor,而且這個新的tensor和原來的tensor是共用數據的,一者改變,另一者也會跟着改變,而且新分離得到的tensor的require s_grad = False, 即不可求導的。(這一點其實detach是一樣的)

(2)使用tensor.data的局限性。文檔中說使用tensor.data是不安全的, 因為 x.data 不能被 autograd 追蹤求微分 。什么意思呢?從上面的例子可以看出,由於我更改分離之后的變量值c,導致原來的張量out的值也跟着改變了,但是這種改變對於autograd是沒有察覺的,它依然按照求導規則來求導,導致得出完全錯誤的導數值卻渾然不知。它的風險性就是如果我再任意一個地方更改了某一個張量,求導的時候也沒有通知我已經在某處更改了,導致得出的導數值完全不正確,故而風險大。

原文鏈接:https://blog.csdn.net/qq_27825451/article/details/96837905


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM