PyTorch随笔-3
生活随笔
收集整理的這篇文章主要介紹了
PyTorch随笔-3
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
特定數據類型的tensor可以被構造,通過 torch.dtype和/或torch.device,對于構造函數或張量創建操作。
>>> cuda0 = torch.device('cuda:0') >>> torch.ones([2, 4], dtype=torch.float64, device=cuda0) tensor([[ 1.0000, 1.0000, 1.0000, 1.0000],[ 1.0000, 1.0000, 1.0000, 1.0000]], dtype=torch.float64, device='cuda:0')可以使用Python的索引和切片表示法訪問和修改tensor的內容:
import torch y=torch.tensor([[1,2],[3,4]]) print(y) print(y[1,:]) print(y[:,0]) print(y[:,1]) tensor([[1, 2],[3, 4]]) tensor([3, 4]) tensor([1, 3]) tensor([2, 4])使用 torch.Tensor.item() 從包含單個值的張量中獲取Python數,請執行以下操作:
import torch y=torch.tensor([[1,2],[3,4]]) print(y)print(y[1,1].item()) tensor([[1, 2],[3, 4]]) 4可以使用requires_grad=True創建張量,以便torch.autograd記錄對它們的操作以進行自動區分。
import torch x = torch.tensor([[1., 2.], [3., 4.]], requires_grad=True) out = x.pow(2).sum() out.backward() print(x.grad) tensor([[2., 4.],[6., 8.]])每個 tensor 都有一個相關的 torch.Storage,,它保存數據。tensor類還提供了存儲的多維、跨視圖,并定義了對存儲的數字操作。
改變tensor的方法用下劃線后綴標記。例如,torch.FloatTensor.abs_()就地計算絕對值并返回修改后的張量,而torch.FloatTensor.abs_()以新的tensor張量計算結果。
改變現有的張量 torch.device 和/或torch.dtype,考慮對張量使用to()方法。
當前執行的 torch.Tensor 引入內存開銷,因此在具有許多小張量tensor的應用程序中可能會導致意外的高內存使用率
總結
以上是生活随笔為你收集整理的PyTorch随笔-3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringBoot默认包扫描机制及@C
- 下一篇: 工业用微型计算机(29)-dos和BIO