pytorch中Variable的自動求導

2021-10-02 17:57:39 字數 1196 閱讀 6648

pytorch中variable這個變數具有自動求導功能,只需要在引數列表中加入

requires_grad =

true

舉個例子

我們如下定義:

我們對矩陣進行簡單的求導var

=[12

34]var = \begin 1 & 2 \\ 3 & 4 \end

var=[1

3​24

​]我們對該矩陣平方的均值進行求導,從而有如下的表達

v_out =1/

4*sum(var*var)

#4個元素

#從而我們有

d(v_out)

/d(var)=1

/4*2

*variable = variable/

2

完整**如下

# variable

from torch.autograd import variable

tensor = torch.floattensor([[

1,2]

,[3,

4]])

variable = variable(tensor, requires_grad =

true

)t_out = torch.mean(tensor*tensor)

# x^2

v_out = torch.mean(variable*variable)

print

(t_out)

print

(v_out)

# v_out = 1/4*sum(var*var)

# d(v_out)/d(var) = 1/4*2*variable = variable/2

v_out.backward(

)print

(variable.grad)

print

(variable.data)

print

(variable.data.numpy(

))

最後也可以以np.array的形式輸出,用到了variable中data的屬性

結果如下

Pytorch 中 torchvision的錯誤

在學習pytorch的時候,使用 torchvision的時候發生了乙個小小的問題 安裝都成功了,並且import torch也沒問題,但是在import torchvision的時候,出現了如下所示的錯誤資訊 dll load failed 找不到指定模組。首先,我們得知道torchvision在...

Pytorch中建立DataLoader的幾種方法

簡介 這段 是mnist手寫體識別中的部分 此篇 為mnist手寫體識別中的 import torch import torchvision import torchvision.transforms as transforms from torch.utils.data import datalo...

pytorch中的乘法

總結 按元素相乘用torch.mul,二維矩陣乘法用torch.mm,batch二維矩陣用torch.bmm,batch 廣播用torch.matmul if name main a torch.tensor 1 2,3 b torch.arange 0,12 reshape 4 3 c torch...