pytorch函数之torch.normal()
关于torch.normal的解释以及相关用法
·
由于朋友问了一下torch.normal()这个东西是什么?(具体如下)
然后我就花了点时间写了一篇这个博文,解释了一下;并且举了一些他的应用例子。
如果还是不会的话,那我也没办法了。
torch.normal(means=torch.arange(1, 11), std=torch.arange(1, 0, -0.1))
1.5104
1.6955
2.4895
4.9185
4.9895
6.9155
7.3683
8.1836
8.7164
9.8916
[torch.FloatTensor of size 10]
解释如下:
>>> torch.arange(1, 11)
1
2
3
4
5
6
7
8
9
10
[torch.FloatTensor of size 10]
>>> torch.arange(1, 0, -0.1)
1.0000
0.9000
0.8000
0.7000
0.6000
0.5000
0.4000
0.3000
0.2000
0.1000
0.0000
[torch.FloatTensor of size 11]
#是从均值为1,标准差为1的正态分布中随机生成的
官网中的实例生成的张量
1.5104#是从均值为1,标准差为1的正态分布中随机生成的
1.6955#是从均值为2,标准差为0.9的正态分布中随机生成的
2.4895
4.9185
4.9895
6.9155
7.3683
8.1836
8.7164
9.8916
[torch.FloatTensor of size 10]
以此类推
举例子:
该函数原型如下:
normal(mean, std, *, generator=None, out=None)
该函数返回从单独的正态分布中提取的随机数的张量,该正态分布的均值是mean,标准差是std。
用法如下:我们从一个标准正态分布N~(0,1),提取一个2x2的矩阵
torch.normal(mean=0.,std=1.,size=(2,2))

我们也可以让每一个值服从不同的正态分布,我们还是生成2x2的矩阵:
torch.normal(mean=torch.arange(4.),std=torch.arange(1.,0.6,-0.1)).reshape(2,2)

更多推荐


所有评论(0)