Pytorch随机选择带条件的索引

ohfgkhjo  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(124)

我有一个Tensor,它存储了一个索引是否可用

available = torch.Tensor([1,1,0,0,1,0])

如果available[0]available[1]available[4]都等于1,那么我想返回0,1或4的索引。
谁能帮我一下吗?谢谢

nzk0hqpo

nzk0hqpo1#

Torch使这变得很容易。你可以使用this answer的多项式:

num_samples = 1
available.multinomial(num_samples, replacement=False)

这里,num_samples表示要绘制的样本数。
因为你已经有了1 s和0 s,你的availableTensor自然会给出多项式函数的正确权重。
如果要绘制3个以上的样本,则会出现错误,除非将replacement更改为True

相关问题