1、Import from numpy
torch.from_numpy()
np.ones([2,3])
2、Import from List
tensor()
FloatTensor()
3、uninitialized
Torch.empty()
Torch.FloatTensor(d1, d2, d3)
4、set default type
设置默认类型
torch.set_default_tensor_tpye(torch.DoubleTensor)
5、rand/rand_like, randint
rand
rand_like
randint
>>> torch.randint(3, 10, (2, 2))
tensor([[4, 5],
[6, 7]])
6、randn
#返回一个充满随机数的张量,这些随机数来自均值为0、方差为1的正态分布(也叫标准正态分布)。
>>> torch.randn(4)
tensor([-2.1436, 0.9966, 2.3426, -0.6366])
>>> torch.randn(2, 3)
tensor([[ 1.5954, 2.8929, -1.0923],
[ 1.1719, -0.4709, -0.1996]])
7、normal
torch.normal 返回一个从独立的正态分布中抽取的随机数的张量,其平均值和标准差是给定的。 平均值是一个张量,包含每个输出元素的正态分布的平均值。 std是一个张量,包含每个输出元素的正态分布的标准差。 Mean和std的形状不需要匹配,但每个张量中的元素总数需要相同。
>>> torch.normal(mean=torch.arange(1., 11.), std=torch.arange(1, 0, -0.1))
tensor([ 1.0425, 3.5672, 2.7969, 4.2925, 4.7229, 6.2134,
8.0505, 8.1408, 9.0563, 10.0566])
8、full
>>> torch.full((2, 3), 3.141592)
tensor([[ 3.1416, 3.1416, 3.1416],
[ 3.1416, 3.1416, 3.1416]])
9、arange/range
arange
range和python重复不推荐使用
10、linspace/logspace
linspace
torch.linspace(start, end, steps, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
对start到end进行steps-1次切割
>>> torch.linspace(3, 10, steps=5)
tensor([ 3.0000, 4.7500, 6.5000, 8.2500, 10.0000])
>>> torch.linspace(-10, 10, steps=5)
tensor([-10., -5., 0., 5., 10.])
>>> torch.linspace(start=-10, end=10, steps=5)
tensor([-10., -5., 0., 5., 10.])
>>> torch.linspace(start=-10, end=10, steps=1)
tensor([-10.])
logspace
torch.logspace(start, end, steps, base=10.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
>>> torch.logspace(start=-10, end=10, steps=5)
tensor([ 1.0000e-10, 1.0000e-05, 1.0000e+00, 1.0000e+05, 1.0000e+10])
>>> torch.logspace(start=0.1, end=1.0, steps=5)
tensor([ 1.2589, 2.1135, 3.5481, 5.9566, 10.0000])
>>> torch.logspace(start=0.1, end=1.0, steps=1)
tensor([1.2589])
>>> torch.logspace(start=2, end=2, steps=1, base=2)
tensor([4.0])
11、Ones/zeros/eye
torch.ones()全1
torch.zero()全0
torch.eye()单位矩阵
|