Pytorch生成Tensor常用方法彙總

2021-09-26 21:52:27 字數 1593 閱讀 7892

返回乙個張量,包含了從區間[0,1]的均勻分布中抽取的隨機的一組隨機數,張量形狀由引數size定義。

>>> import torch

>>> a = torch.rand((2,3))

>>> a

tensor([[0.2969, 0.8017, 0.9024],

[0.0810, 0.2303, 0.7425]])

返回乙個張量,包含了從標準正態分佈(均值為0, 方差為1,即高斯白噪音)中抽取的一組隨機數,張量形狀由size定義

>>> b = torch.randn((3 ,2))

>>> b

tensor([[ 0.6700,  1.4233],

[-2.0809,  0.5361],

[-0.5831, -0.3056]])

返回張量,包含了指定 均值means和標準差std的離散正態分佈中抽取的一組隨機數,標準差std是乙個張量,包含了每個輸出元素相關的正態分佈標準差

>>> a

tensor([[0.2969, 0.8017, 0.9024],

[0.0810, 0.2303, 0.7425]])

>>> c = torch.normal(mean=0.5, std=a)

>>> c

tensor([[ 0.2432,  1.0196, -0.0108],

[ 0.6004,  0.3536,  0.6800]])

返回乙個張量,包含在區間start和end上均勻間隔step個點,輸出張量的長度由steps決定。

>>> d= torch.linspace(1,10,10)

>>> d

tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])

返回一維張量,形狀為 (end-start)/step,數值在[start, end]間

>>> g = torch.arange(1,10, 1)

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

>>> g = torch.arange(1,10, 1.6)

tensor([1.0000, 2.6000, 4.2000, 5.8000, 7.4000, 9.0000])

>>> e = torch.ones((2,5))

>>> e

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

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

# torch.zeros()與torch.ones類似

>>> f =torch.zeros((2,5))

>>> f

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

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

>>> torch.full((2,3),23)

tensor([[23., 23., 23.],

[23., 23., 23.]])

Pytorch 生成隨機數Tensor的方法彙總

在使用pytorch做實驗時經常會用到生成隨機數tensor的方法,比如 torch.rand torch.randn torch.normal torch.linespace 均勻分布 torch.rand sizes,out none tensor 返回乙個張量,包含了從區間 0,1 的均勻分布...

Pytorch快速入門一 Tensor

tensor 可以簡單地認為是乙個陣列,且支援高效的科學計算。基礎操作 從儲存角度講,可以分為以下兩類 tensor和numpy的相互轉換。tensor 和numpy共享記憶體,所以互相轉換的速度非常快。這也意味著,如果其中乙個變了,另外乙個也會變。import torch as t a t.one...

Pytorch之Tensor和Numpy之間的轉換

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