是否有可能使PyTorch分布直接在GPU上创建样本。
如果我这样做:
from torch.distributions import Uniform, Normal
normal = Normal(3, 1)
sample = normal.sample()
样本将在CPU上运行。当然,可以使用sample = sample.to(torch.device("cuda"))
将其转换为GPU上的样本。但是是否有一种方法可以直接将样本发送到GPU,而无需先在CPU上创建它?
PyTorch分布继承自Object
,而不是nn.Module
,因此它没有to
方法将分布实例放入GPU。
有什么想法吗?