本文简要介绍python语言中 torch.multinomial
的用法。
用法:
torch.multinomial(input, num_samples, replacement=False, *, generator=None, out=None) → LongTensor
generator(torch.Generator, 可选的) -用于采样的伪随机数发生器
out(Tensor,可选的) -输出张量。
返回一个张量,其中每行包含从位于张量
input
的相应行中的多项概率分布中采样的num_samples
索引。注意
input
的行不需要总和为 1(在这种情况下,我们将值用作权重),但必须是非负的、有限的并且总和非零。索引根据每个采样的时间从左到右排序(第一个样本放在第一列)。
如果
input
是向量,则out
是大小为num_samples
的向量。如果
input
是具有m
行的矩阵,则out
是形状为 的矩阵。如果替换是
True
,则使用替换抽取样本。如果不是,它们将在不替换的情况下绘制,这意味着当为一行绘制样本索引时,不能为该行再次绘制它。
注意
在不替换的情况下绘制时,
num_samples
必须小于input
中非零元素的数量(如果是矩阵,则为input
每行中非零元素的最小数量)。例子:
>>> weights = torch.tensor([0, 10, 3, 0], dtype=torch.float) # create a tensor of weights >>> torch.multinomial(weights, 2) tensor([1, 2]) >>> torch.multinomial(weights, 4) # ERROR! RuntimeError: invalid argument 2: invalid multinomial distribution (with replacement=False, not enough non-negative category to sample) at ../aten/src/TH/generic/THTensorRandom.cpp:320 >>> torch.multinomial(weights, 4, replacement=True) tensor([ 2, 1, 1, 1])
参数:
关键字参数:
相关用法
- Python PyTorch multi_dot用法及代码示例
- Python PyTorch multigammaln用法及代码示例
- Python PyTorch mul用法及代码示例
- Python PyTorch monitored_barrier用法及代码示例
- Python PyTorch mean用法及代码示例
- Python PyTorch meshgrid用法及代码示例
- Python PyTorch matrix_rank用法及代码示例
- Python PyTorch mm用法及代码示例
- Python PyTorch mv用法及代码示例
- Python PyTorch min用法及代码示例
- Python PyTorch max用法及代码示例
- Python PyTorch msort用法及代码示例
- Python PyTorch mode用法及代码示例
- Python PyTorch movedim用法及代码示例
- Python PyTorch matrix_exp用法及代码示例
- Python PyTorch matmul用法及代码示例
- Python PyTorch matrix_power用法及代码示例
- Python PyTorch maximum用法及代码示例
- Python PyTorch masked_select用法及代码示例
- Python PyTorch maskrcnn_resnet50_fpn用法及代码示例
- Python PyTorch minimum用法及代码示例
- Python PyTorch movielens_25m用法及代码示例
- Python PyTorch matrix_norm用法及代码示例
- Python PyTorch movielens_20m用法及代码示例
- Python PyTorch moveaxis用法及代码示例
注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.multinomial。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。