torch.normal()
返回一个张量,包含从给定参数means,std的离散正态分布中抽取随机数。均值means是一个张量,包含每个输出元素相关的正态分布的均值。std是一个张量,包含每个输出元素相关的正态分布的标准差。均值和标准差的形状不须匹配,但每个张量的元素个数须相同。
基本构成
torch.normal(means, std, out=None)
| 参数 | 内涵 |
|---|---|
| means (Tensor) | 均值 |
| std (Tensor) | 标准差 |
| out (Tensor) | 可选的输出张量 |
案例
def synthetic_data (w , b, num_examples ) :
"""生成y = xw + b +噪声。"""
x = torch.normal(0,1,(num_examples, len(w)))
y = torch.matmul(x, w) + b
y += torch.normal(0, 0.01, y.shape)
return x, y.reshape ((-1, 1))
true_w = torch.tensor([ 2,-3.4])
true_b = 4.2
features, labels = synthetic_data(true_w, true_b, 1000)
x = torch.normal(0,1,(num_examples, len(w)))
生成均值为0,方差为1的随机数,输入矩阵张量n行,w列。