当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PyTorch Multinomial用法及代码示例


本文简要介绍python语言中 torch.distributions.multinomial.Multinomial 的用法。

用法:

class torch.distributions.multinomial.Multinomial(total_count=1, probs=None, logits=None, validate_args=None)

参数

  • total_count(int) -试验次数

  • probs(Tensor) -事件概率

  • logits(Tensor) -事件日志概率(未标准化)

基础:torch.distributions.distribution.Distribution

创建由 total_countprobslogits(但不是两者)参数化的多项分布。 probs 的最内部维度对类别进行索引。所有其他维度的批次索引。

请注意,如果仅调用log_prob(),则无需指定total_count(请参见下面的示例)

注意

probs 参数必须是非负、有限且具有非零总和,并且沿最后一个维度将其归一化为总和为 1。 probs 将返回此标准化值。 logits 参数将被解释为非标准化对数概率,因此可以是任何实数。它同样会被标准化,以便沿最后一个维度得到的概率总和为 1。 logits 将返回此标准化值。

  • sample() 需要一个共享的 total_count 用于所有参数和示例。

  • log_prob() 允许每个参数和样本使用不同的 total_count

例子:

>>> m = Multinomial(100, torch.tensor([ 1., 1., 1., 1.]))
>>> x = m.sample()  # equal probability of 0, 1, 2, 3
tensor([ 21.,  24.,  30.,  25.])

>>> Multinomial(probs=torch.tensor([1., 1., 1., 1.])).log_prob(x)
tensor([-4.1338])

相关用法


注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.distributions.multinomial.Multinomial。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。