PyTorch入門基礎

2022-07-11 05:18:10 字數 2675 閱讀 1683

pytorch是乙個python庫,它主要提供了兩個高階功能:

一般定義資料使用torch.tensor ,可以定義多種型別, tensor的意思是張量,是數字各種形式的總稱

import

torch

#可以是乙個數

x = torch.tensor(666)

print(x)

tensor(666)
#

可以是一維陣列(向量)

x = torch.tensor([1,2,3,4,5,6])

print(x)

tensor([1, 2, 3, 4, 5, 6])

#

可以是任意維度的陣列(張量)

x = torch.ones(2,3,4)

print(x)

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

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

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

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

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

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

#

建立乙個空張量

x = torch.empty(5,3)

print(x)

tensor([[1.4178e-36, 0.0000e+00, 4.4842e-44],

[0.0000e+00, nan, 0.0000e+00],

[1.0979e-05, 4.2008e-05, 2.1296e+23],

[1.0386e+21, 4.4160e-05, 1.0742e-05],

[2.6963e+23, 4.2421e-08, 3.4548e-09]])

#

建立乙個隨機初始化的張量

x = torch.rand(5,3)

print(x)

tensor([[0.3077, 0.0347, 0.3033],

[0.9099, 0.2716, 0.4310],

[0.8286, 0.3317, 0.0536],

[0.9529, 0.4905, 0.1403],

[0.6899, 0.8349, 0.4015]])

#

建立乙個全0的張量,裡面的資料型別為 long

x = torch.zeros(5,3,dtype=torch.long)

print(x)

tensor([[0, 0, 0],

[0, 0, 0],

[0, 0, 0],

[0, 0, 0],

[0, 0, 0]])

凡是用tensor進行各種運算的,都是function

最終,還是需要用tensor來進行計算的,計算無非是

#

建立乙個 2x4 的tensor

m = torch.tensor([[2, 5, 3, 7],

[4, 2, 1, 9]])

print(m.size(0), m.size(1), m.size(), sep='

-- ')

2 -- 4 -- torch.size([2, 4])
#

返回 m 中元素的數量

print(m.numel())

8
#

返回 第0行,第2列的數

print(m[0][2])

#返回 第1列的全部元素

print(m[:, 1])

#返回 第0行的全部元素

print

(m[0, :])

#create tensor of numbers from 1 to 5

#注意這裡結果是1到4,沒有5

v = torch.arange(1, 5)

print(v)

tensor(3.)
tensor([5., 2.])
tensor([2., 5., 3., 7.])

tensor([1, 2, 3, 4])

#

matlabplotlib 只能顯示numpy型別的資料,下面展示了轉換資料型別,然後顯示

#注意 randn 是生成均值為 0, 方差為 1 的隨機數

#下面是生成 1000 個隨機數,並按照 100 個 bin 統計直方圖

當資料非常非常多的時候,正態分佈結果非常明顯

pytorch入門 深度學習基礎及原理

這裡有乙個重點 因為pytorch是使用mini batch來進行計算的,所以損失函式的計算出來的結果已經對mini batch取了平均 nn.l1loss 輸入x和目標y之間差的絕對值,要求 x 和 y 的維度要一樣 可以是向量或者矩陣 得到的 loss 維度也是對應一樣的 nn.nllloss ...

Pytorch入門 安裝

pytorch目前支援的平台有linux和osx,在pytorch官網上每種平台提供了conda pip source三種安裝方式,同時也可以根據有無gpu進行cuda安裝,在這裡以ubuntu14.04進行安裝學習。1.anaconda安裝配置 安裝過程參考我之前的anaconda tensorf...

PyTorch快速入門

詳細的pytorch教程可以去pytorch官網的學習指南進一步學習,下面主要對pytorch做簡單的介紹,能夠快速入門。首先pytorch是基於python的科學計算類庫,主要有以下兩個方面的應用 作為numpy的替代者,充分利用gpu的計算能力。提供乙個靈活 快速的深度學習平台。tensor 與...