day4 随机抽样 入门 一起学 PyTorch吧,PyTorch从入门开始 每天都更新 超详细 参数 常用方法 简单案列 共同学习,共同进步 坚持

torch . manual_seed(seed)设定生成随机数的种子,并返回一个torch._C.Generator对象,参数:seed(int or long):种子。
torch . initial_seed()返回生成随机数的原始种子值(python long)。
torch . get_rng_state() 返回随机生成器状态(ByteTensor)
torch . set_rng_state(new_state)设定随机生成器状态。
参数:new_state (torch.ByteTensor) :期望的状态
torch . default_generator = < torch . _C . Generator object >。
torch . bernoulli( input , out = None ) --> Tensor从伯努利分布中抽取二元随机数(0或者1)。输入张量必须包含用于抽取上述二元组随机值的概率。因此,输入中的所有值都必须在[0,1]区间,即0 input 1输出张量的第i个元素值,将会以输入张量的第i个概率值等于1。返回值将会是与输入相同大小的张量,每个值为0或者1。
参数:
        --input(Tensor):输入为伯努利分布的概率值
        --out(Tensor,optional):输出张量(可选)
例子:
>>> a = torch.Tensor(3, 3).uniform_(0, 1) # generate a
uniform random matrix with range [0, 1] , →
>>> a
0.7544 0.8140 0.9842
0.5282 0.0595 0.6445
0.1925 0.9553 0.9732
[torch.FloatTensor of size 3x3]

>>> torch.bernoulli(a)
1 1 1 
0 0 1 
0 1 1 
[torch.FloatTensor of size 3x3]

>>> a = torch.ones(3, 3) 
# probability of drawing "1" is 1
>>> torch.bernoulli(a) 
1 1 1 
1 1 1 
1 1 1 
[torch.FloatTensor of size 3x3]

>>> a = torch.zeros(3, 3) 
# probability of drawing "1" is 0
>>> torch.bernoulli(a) 
0 0 0 
0 0 0 
0 0 0 
[torch.FloatTensor of size 3x3]
torch . multinomial( input , num_samples,replacement = False , out = None ) --> LongTensor
返回一个张量,每行包含从input相应行中定义的多项分布中抽取的num_samples个样本。
        输入input每行的值不需要总和为1(这里我们用来做权重),但是必须非负且总和不能为0。
当抽取样本时,依次从左到右排列(第一个样本对应第一列)。如果输入input是一个向量,输出out也是一个相同长度num_samples的向量。如果输入input是有m行的矩阵,输出out是形如mxn的矩阵。如果参数 replacement 为 True, 则样本抽取可以重复。否则,一个样本在每行不能被重复抽取。参数 num_samples 必须小于 input长度 (即,input 的列数,如果是 input 是一个矩阵)。
        --input(Tensor):包含概率值的张量
        --num_samples(int):抽取的样本数
        --replacement(bool,optional):布尔值,决定是否能重复抽取
        --out(Tensor,optional):结果张量
例子:
>>> weights = torch.Tensor([0, 10, 3, 0]) # create a Tensor
of weights , →
>>> torch.multinomial(weights, 4) 
1
2
0
0
[torch.LongTensor of size 4]

>>> torch.multinomial(weights, 4, replacement=True) 
1
2
1
2
[torch.LongTensor of size 4]
torch . normal(means, std, out = None )返回一个张量,包含从给定参数 means,std
的离散正态分布中抽取随机数。均值 means 是一个张量,包含每个输出元素相关的
正态分布的均值。 std 是一个张量,包含每个输出元素相关的正态分布的标准差。均
值和标准差的形状不须匹配,但每个张量的元素个数须相同
参数:
        --means(Tensor):均值
        --std(Tensor):标准差
        --out(Tensor):可选的输出张量
例子:
>>> torch.normal(mean=torch.arange(1., 11.),
std=torch.arange(1, 0, -0.1)) , →
tensor([ 1.0425, 3.5672, 2.7969, 4.2925,
4.7229, 6.2134, , →
8.0505, 8.1408, 9.0563, 10.0566
torch . normal(mean =0.0 , std, out = None ) 与上面函数类似,所有抽取的样 本共享均值。
参数:
        --means(Tensor,optional):所有分布的值
        --std(Tensor):每个元素的标准差
        --out(Tensor):可选的输出张量
例子:
>>> torch.normal(mean=0.5, std=torch.arange(1., 6.))
0.5723
0.0871
-0.3783
-2.5689
10.7893
[torch.FloatTensor of size 5]
torch . normal(mean, std =1.0 , out = None ) 与上面函数类似,所有抽取的样 本共享标准差。
参数:
        --menas(Tensor):每个元素的均值
        --std(float,optional):所有分布的标准差
        --out(Tensor):可选的输出张量
例子:
>>> torch.normal(means=torch.arange(1, 6))
1.1681
2.8884
3.7718
2.5616
4.2500
[torch.FloatTensor of size 5]

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值