Torch和Numpy之 特殊矩陣

2022-09-05 06:06:13 字數 2031 閱讀 5662

1對角矩陣

輸入

import

torch

import

numpy as np

#numpy實現

a = np.diag([5,6,7])

print

(a)#

torch實現

b = torch.diag(torch.tensor([5,6,7]))

print(b)

輸出

[[50 0]

[0 60]

[0 0 7]]

tensor([[5, 0, 0],

[0, 6, 0],

[0, 0, 7]])

2單位矩陣

輸入

import

torch

import

numpy as np

#numpy實現

a = np.eye(3,4)

print

(a)#

torch實現

b = torch.eye(4,5)

print(b)

輸出

[[1. 0. 0. 0.]

[0. 1. 0. 0.]

[0. 0. 1. 0.]]

tensor([[1., 0., 0., 0., 0.],

[0., 1., 0., 0., 0.],

[0., 0., 1., 0., 0.],

[0., 0., 0., 1., 0.]])

3下三角矩陣

輸入

import

torch

import

numpy as np

#numpy實現

a = np.tri(3,3)

print

(a)#

torch實現

b = torch.tril(torch.ones(4,4))

print(b)

輸出

[[1. 0. 0.]

[1. 1. 0.]

[1. 1. 1.]]

tensor([[1., 0., 0., 0.],

[1., 1., 0., 0.],

[1., 1., 1., 0.],

[1., 1., 1., 1.]])

4 0,1矩陣

4.1 0矩陣

import

torch

import

numpy as np

#numpy實現

a = np.zeros((4,3))

print

(a)#

torch實現

b = torch.zeros((4,4))

print(b)

輸出

[[0. 0. 0.]

[0. 0. 0.]

[0. 0. 0.]

[0. 0. 0.]]

tensor([[0., 0., 0., 0.],

[0., 0., 0., 0.],

[0., 0., 0., 0.],

[0., 0., 0., 0.]])

4.2 1矩陣

輸入

#

特殊矩陣

#單位矩陣

import

torch

import

numpy as np

#numpy實現

a = np.ones((4,3))

print

(a)#

torch實現

b = torch.ones((4,4))

print(b)

輸出

[[1. 1. 1.]

[1. 1. 1.]

[1. 1. 1.]

[1. 1. 1.]]

tensor([[1., 1., 1., 1.],

[1., 1., 1., 1.],

[1., 1., 1., 1.],

[1., 1., 1., 1.]])

python數字和矩陣 NumPy向量與矩陣的範數

11.numpy範數計算 監督機器學習問題規則化引數的同時最小化誤差,最小化誤差是為了讓我們的模型擬合我們的訓練資料,而規則化引數是防止我們的模型過分擬合我們的訓練資料。但訓練誤差小並不是我們的最終目標,我們的目標是希望模型的測試誤差小,也就是能準確的 新的樣本。機器學習 深度學習等計算機領域內用的...

numpy和torch的一些矩陣運算語句

僅作為記錄,大佬請跳過 矩陣相乘 x w1 numpy h x.dot w1 torch h x.mm w1 大於0的保留,小於0的令為0 達到啟用函式relu的效果 numpy h relu np.maximum h,0 torch h relu h.clamp min 0 兩個陣列相減,相減後各...

Pytorch之Tensor和Numpy之間的轉換

最重要的區別t.tensor和t.tensor 不論輸入的型別是什麼,t.tensor 都會進行資料拷貝,不會共享記憶體 t.tensor 與numpy共享記憶體,但當numpy的資料型別和tensor的型別不一樣的時候,資料會被複製,不會共享記憶體。可使用t.from numpy 或者t.deta...