我这样做的时候
import torch, seaborn as sns
x = torch.distributions.Normal(torch.tensor([0.0]), torch.tensor([1.0]))
sns.distplot(x.sample((100000,)))
给予
同时
sns.distplot(x.rsample((100000,)))
还给出
何时应使用sample(),何时应使用rsample()?
答案 0 :(得分:4)
使用rsample
允许pathwise derivatives:
实现这些随机/策略梯度的另一种方法是使用
rsample()
方法中的重新参数化技巧,其中可以通过无参数随机变量的参数化确定性函数构造参数化随机变量。因此,重新参数化的样本变得可区分。