美文网首页
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