在PyTorch中,有多种方法可以用来初始化张量。以下是一些常用的初始化方法:
使用torch.zeros()
函数创建全零张量:
import torch
x = torch.zeros(3, 4)
print(x)
使用torch.ones()
函数创建全一张量:
import torch
x = torch.ones(3, 4)
print(x)
使用torch.rand()
函数创建指定大小和范围内的随机张量:
import torch
x = torch.rand(3, 4)
print(x)
若要指定随机数的范围,可以使用torch.rand_like()
函数:
import torch
x = torch.rand_like(torch.tensor([1.0, 2.0, 3.0]))
print(x)
使用torch.randn()
函数创建指定大小和标准差范围内的正态分布随机张量:
import torch
x = torch.randn(3, 4)
print(x)
若要指定正态分布的均值和标准差,可以使用torch.normal()
函数:
import torch
x = torch.normal(mean=0.0, std=1.0, size=(3, 4))
print(x)
使用torch.eye()
函数创建单位矩阵:
import torch
x = torch.eye(3)
print(x)
使用torch.diag()
函数创建对角矩阵:
import torch
x = torch.diag(torch.tensor([1.0, 2.0, 3.0]))
print(x)
使用torch.arange()
和torch.linspace()
函数创建等差数列和张量:
import torch
x = torch.arange(start=0, end=5, step=1)
print(x)
x = torch.linspace(start=0, end=1, steps=5)
print(x)
这些方法可以根据需要创建不同类型的张量。在实际应用中,还可以使用自定义初始化方法。