torch.rand
均匀分布
torch.rand(*sizes, out=None) → Tensor
返回一个张量,包含了从区间[0, 1)的均匀分布中抽取的一组随机数。张量的形状由参数sizes定义。
参数:
sizes (int…) - 整数序列,定义了输出张量的形状
out (Tensor, optinal) - 结果张量
import torch
torch.rand(2, 3)
tensor([[0.3352, 0.0144, 0.3443],
[0.5197, 0.5235, 0.1199]])
torch.randn
标准正态分布
torch.randn(*sizes, out=None) → Tensor
返回一个张量,包含了从标准正态分布(均值为0,方差为1,即高斯白噪声)中抽取的一组随机数。张量的形状由参数sizes定义。
参数:
sizes (int…) - 整数序列,定义了输出张量的形状
out (Tensor, optinal) - 结果张量
import torch
torch.randn(2, 3)
tensor([[ 0.5692, 0.7205, 1.2461],
[ 0.5549, -0.6557, -0.0171]])
torch.normal
离散正态分布
torch.normal(means, std, out=None) → → Tensor
返回一个张量,包含了从指定均值means和标准差std的离散正态分布中抽取的一组随机数。
标准差std是一个张量,包含每个输出元素相关的正态分布标准差。
参数:
means (float, optional) - 均值
std (Tensor) - 标准差
out (Tensor) - 输出张量
import torch
torch.normal(mean=0.5,std=torch.arange(1, 6).float())
tensor([ 1.1610, -1.8812, 1.1811, -2.8335, -5.2556])
torch.linespace()
线性间距向量
torch.linspace(start, end, steps=100, out=None) → Tensor
返回一个1维张量,包含在区间start和end上均匀间隔的step个点。
输出张量的长度由steps决定。
参数:
start (float) - 区间的起始点
end (float) - 区间的终点
steps (int) - 在start和end间生成的样本数
out (Tensor, optional) - 结果张量
import torch
torch.linspace(2, 9, steps=5)
tensor([2.0000, 3.7500, 5.5000, 7.2500, 9.0000])