美文网首页
torch.randn和torch.rand区别

torch.randn和torch.rand区别

作者: Jarkata | 来源:发表于2021-07-30 00:51 被阅读0次

torch.rand是均匀分布
torch.randn是标准正态分布

torch.rand 均匀分布

torch.rand(sizes,out=None)* -> Tensor
返回一个张量,包含了从区间[0, 1)的均匀分布中抽取的一组随机数。张量的形状由参数sizes定义。

参数:

  • sizes(int...) -整数序列,定义了输出张量的形状
  • out(Tensor, optional) -结果张量

例子:

>>> torch.rand(2,3)
tensor([[0.8436, 0.4287, 0.6262], 
        [0.6846, 0.5056, 0.1218]])

torch.randn 标准正态分布

** torch.randn(sizes, out=None)* -> Tensor
返回一个张量,包含了从标准正态分布(均值为0,方差为1,即高斯白噪声)中抽取的一组随机数。
张量的形状由参数sizes定义。

参数

  • sizes(int...) -整数序列,定义了输出张量的形状
  • out(Tensor, optional) -结果张量

例子

>>> torch.randn(2,3)
tensor([[ 0.2633,  0.3227, -0.4687],
        [ 1.4386, -1.3225, -0.3291]])

其他:

离散正态分布

torch.normal(means, std, out=None) → → Tensor
返回一个张量,包含了从指定均值means和标准差std的离散正态分布中抽取的一组随机数。

标准差std是一个张量,包含每个输出元素相关的正态分布标准差。

注意区分torch.norm

torch.norm是对输入的Tensor求范数

torch.norm(input, p, dim, out=None,keepdim=False) → Tensor

线性间距向量

torch.linspace(start,end,steps=100,out=None)→ Tensor
返回一个1维张量,包含在区间start和end上均匀间隔的step个点。

输出张量的长度由steps决定。

参考

PyTorch 常用方法总结1:生成随机数Tensor的方法汇总(标准分布、正态分布……) - 集智学园的文章 - 知乎
https://zhuanlan.zhihu.com/p/31231210

相关文章

网友评论

      本文标题:torch.randn和torch.rand区别

      本文链接:https://www.haomeiwen.com/subject/nbcqvltx.html