篩選排除還沒找到答案:
取數運算
正好遇到乙個需求。
我有m行k列的乙個表a,和乙個長為m的索引列表b。
b中儲存著,取每行第幾列的元素。
這種情況下,你用普通的索引是會失效的。
import torch
a= torch.longtensor([[1,2,3],[4,5,6]])
b= torch.longtensor([0,1])
錯誤寫法:
c= a[b]
print(c)
結果是第1行和第2行
方法1:
import torch
conf_data = torch.longtensor([[1, 2, 3], [4, 5, 6]])
b = torch.longtensor([0, 1])
index_num = torch.arange(0, conf_data.size(0))
print(conf_data[index_num,b])
經過一番查詢,發現我們可以用神奇的torch.gather()函式
import torch
a= torch.longtensor([[1,2,3],[4,5,6]])
b= torch.longtensor([0,1]).view(2,1)
c= torch.gather(input=a,dim=1,index=b)
print(c)
#tensor([[1],
[5]])
Pytorch Tensor和tensor的區別
在pytorch中,tensor和tensor都能用於生成新的張量 a torch.tensor 1 2 a tensor 1 2.a torch.tensor 1 2 a tensor 1 2 首先,我們需要明確一下,torch.tensor 是python類,更明確地說,是預設張量型別torch...
Pytorch tensor的感知機
單層感知機的主要步驟 單層感知機梯度的推導 要進行優化的是w,對w進行梯度下降 a torch.randn 1,10 a是乙個 1,10 的向量 w torch.randn 1,10,requires grad true w是乙個可導的 1,10 的向量 1.2.經過乙個sigmoid啟用函式 o ...
pytorch tensor 獲得中間節點的梯度
我們只能指定計算圖的leaf節點的requires grad變數來決定改變量是否記錄梯度,而不能指定它們運算產生的節點的requires grad,它們是否要梯度取決於它們的輸入節點,它們的輸入節點只要有乙個requires grad是true,那麼它的requires grad也是true.x t...