import torchpython
import numpy as np函數
#從numpy導入spa
a = np.ones([2,1])orm
a = torch.from_numpy(a)索引
print(a)import
#從list導入,注意在python中,()默認表示size;numpy
a = torch.tensor([1,2,3])im
print(a)數據
#生成未初始化數據di
a = torch.empty(5,3)
b = torch.FloatTensor(5,3)
c = torch.IntTensor(5,3)
print(a,b,c)#pytorch默認類型是FloatTensor
#隨機初始化:
#rand函數使用0-1隨機均勻分佈,包含0和0;
#rand_like [min,max)
a = torch.rand(3,3)
b = torch.rand_like(a)
c = torch.randint(1,10,[3,3])#生產3*3的tensor,範圍是[1,10)
print(a,b,c)
a = torch.randn(3,3)#正態分佈,經常使用於bias;均值爲0,方差爲1;
print(a)
"""
若是想自定義均值和方差則使用normal函數:
生成10個均值爲0;方差慢慢變小;後期咱們能夠改爲咱們想要的形狀,以下面的能夠resize爲(2,5),(5,2)等;
"""
a = torch.normal(mean=torch.full([10],0),std=torch.arange(1,0,-0.1))
print(a)
a = torch.normal(mean=torch.full([10],0),std=torch.arange(1,0,-0.1))
print(a)
print(torch.full([2,3],1024))#生成2*3矩陣,元素值均爲1024
print(torch.full([],1024))#tensor(1024.) 生成一個標量
print(torch.full([1],1024))#tensor([1024.])長度爲1的tensor
#生成等差數列
a = torch.arange(1,10,0.5)#0.5等差,不包含10
print(a)
a = torch.linspace(1,10,100)#在1-10之間生成100個等分數列
print(a)
a = torch.logspace(1,-1,10)#1至-1之間生成10個等差數列,再求log
print(a)
#生成全0全1以及對角矩陣,注意eye只支持1,2維度,高維度不支持
print(torch.ones(3,3),torch.zeros(3,3),torch.eye(3,3))
#生成隨機索引,相似shuffle,用於打亂順序
print(torch.randperm(10))