如何在pytorch中制作截断正态分布?

Lup*_*pos 6 normal-distribution pytorch

我想在 PyTorch 中创建截断正态分布(即具有范围的高斯分布)。
我希望能够更改平均值、标准差和范围。
有 PyTorch 方法吗?

小智 3

使用torch.nn.init.trunc_normal_

此处给出的描述:

使用从截断正态分布中提取的值填充输入张量。这些值实际上是从正态分布 :math: 中绘制的,\mathcal{N}(\text{mean}, \text{std}^2) 并且在 :math: 之外的值[a, b]将重新绘制,直到它们在边界内。用于生成随机值的方法在 :math: 时效果最佳a \leq \text{mean} \leq b