Pytorch生成随机数Tensor的方法汇总
Pytorch生成随机数Tensor的方法汇总均匀分布:torch.rand(*sizes,out=None)标准正态分布:torch.randn(*sizes,out=None)离散正态分布:torch.normal(means,std,out=None)线性间距向量:torch.linspace(start,end,steps=100,out=None)均匀分布:torch.rand(*siz
·
Pytorch生成随机数Tensor的方法汇总
均匀分布:torch.rand(*sizes,out=None)
返回一个张量,是从区间 [0, 1) 的均匀分布中抽取的一组随机数。张量的形状由参数sizes定义。
参数:
- sizes:整数序列,定义了张量的形状。
- out:结果张量。(目前没找到使用该参数的例子)
import torch
a = torch.rand((2,3))
print(a)
#输出
tensor([[0.7065, 0.9760, 0.3413],
[0.5489, 0.6793, 0.5746]])
标准正态分布:torch.randn(*sizes,out=None)
返回一个张量,是从标准正态分布(均值为0,方差为1)中抽取的一组随机数。张量的形状由参数sizes定义。
参数:
- sizes:整数序列,定义了张量的形状。
- out:结果张量。(目前没找到使用该参数的例子)
import torch
a = torch.rand((2,3))
print(a)
#输出
tensor([[0.1261, 0.6350, 1.0340],
[2.1402, 0.2917, 0.3696]])
离散正态分布:torch.normal(means,std,out=None)
返回一个张量,是从指定均值means和标准差std的离散正态分布中抽取的一组随机数。
标准差std是一个张量,包含每个输出元素相关的正态分布标准差。
参数:
- means:均值
- std:标准差(必须为浮点型)
- out:结果张量
import torch
a = torch.normal(mean = 1,std = torch.arange(1.0,6.0).float())
print(a)
std = torch.arange(1,6)
print(std)
#输出
tensor([1.0243, 2.7108, 4.2406, 0.8341, 4.0412])
tensor([1, 2, 3, 4, 5])
线性间距向量:torch.linspace(start,end,steps=100,out=None)
返回一个1维张量,包含在区间start和end上均匀间隔的step个点。
输出张量的长度由steps决定。
参数:
- starts:区间的起始点(包含)
- end:区间的终点(包含)
- steps:生成点的个数
- out:结果张量
import torch
a = torch.linspace(1,10,steps=8)
print(a)
#输出
tensor([ 1.0000, 2.2857, 3.5714, 4.8571, 6.1429, 7.4286, 8.7143, 10.0000])```
更多推荐
所有评论(0)