【发布时间】:2017-10-18 14:32:12
【问题描述】:
我想在给定均值和协方差矩阵的情况下抽取随机样本。在 numpy 中,我可以使用 numpy.random.multivariate_normal 函数来做到这一点。什么是 TensorFlow 等价物?
在我的例子中,数据是二维的。因此,均值至少是维度张量 (batch_size, 1) 中的一个,并且均值列表的长度为 2。
【问题讨论】:
标签: numpy tensorflow
我想在给定均值和协方差矩阵的情况下抽取随机样本。在 numpy 中,我可以使用 numpy.random.multivariate_normal 函数来做到这一点。什么是 TensorFlow 等价物?
在我的例子中,数据是二维的。因此,均值至少是维度张量 (batch_size, 1) 中的一个,并且均值列表的长度为 2。
【问题讨论】:
标签: numpy tensorflow
我认为您正在寻找tf.contrib.distributions.MultivariateNormalDiag,如TensorFlow Official Documentation 所示。
【讨论】:
要获得随机样本,您可以使用tf.distributions.Normal 类的方法sample。它需要标准偏差而不是协方差矩阵。例如二维:
mean = [1.0, 2.0]
std = [0.5, 0.7]
dist = tf.distributions.Normal(mean, std)
dist.sample()
【讨论】: