前言
今天想使用loss來畫圖,看到大佬們的代碼里是使用了item()來轉換變量,之前沒注意這種細節,來學習一下。
實驗
import torch x = torch.randn(2,3) print('[1] ',x) print('[2] ',x.data) print('[3] ',x.data[1,1]) print('[4] ',x.data[1,1].item())#與x[1,1].item()相同 print('[5] ',x.data.item())
顯示的結果為:
由此可以看出,item()的作用是取出一個tensor中的某個元素值,不對向量型的tensor起作用。
至於data,則是一個深拷貝的作用,具體可以參考文獻【1】。
參考文獻:
【1】https://blog.csdn.net/yghjkliikk/article/details/109587660
【2】https://leeyegy.blog.csdn.net/article/details/104971419?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3.control