Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tensorflow 计算张量流中变换的多元正态的PDF?_Tensorflow - Fatal编程技术网

Tensorflow 计算张量流中变换的多元正态的PDF?

Tensorflow 计算张量流中变换的多元正态的PDF?,tensorflow,Tensorflow,我试图评估Tensorflow中转换的多元分布的对数pdf。虽然它将正确采样,但它会为一个样本生成两个单独的对数概率。一个例子是 [[ 1.05516054e-03, 1.50635891e+01]] 这将返回一个 [[ 2.64074564, -4.21384382]] 而不是单对数概率 为了更清楚地说明这一点,我附上了一个我希望可以复制的例子 from tensorflow.contrib.distributions.python.ops import bijectors as

我试图评估Tensorflow中转换的多元分布的对数pdf。虽然它将正确采样,但它会为一个样本生成两个单独的对数概率。一个例子是

[[  1.05516054e-03,   1.50635891e+01]]
这将返回一个

[[ 2.64074564, -4.21384382]] 
而不是单对数概率

为了更清楚地说明这一点,我附上了一个我希望可以复制的例子

from tensorflow.contrib.distributions.python.ops import bijectors as bijector

ds = tf.contrib.distributions

mean = tf.constant([-5.,  15.])
chol = tf.constant([[0.77909118,  0.],
                [-0.02230092,  0.8150183]])

mvn_sftpls = ds.TransformedDistribution(distribution=ds.MultivariateNormalTriL(
loc=mean, scale_tril=chol), bijector=bijector.Softplus())

sample = mvn_sftpls.sample(1)
output = mvn_sftpls.log_prob(sample)

with tf.Session() as sess:
    print(sess.run(output))
答案(对于任何好奇的人来说)是将softplus双射体中的事件ndims设置为多变量范数中适当的维数。就我而言:

bijector=bijector.Softplus(event_ndims = 1) 
答案(对于任何好奇的人来说)是将softplus双射体中的事件ndims设置为多变量范数中适当的维数。就我而言:

bijector=bijector.Softplus(event_ndims = 1) 
对于后验性(以及未来),在Tensorflow的夜间版本(我猜是下一个版本)中,这应该是自动推断的,因此您不需要在Tensorflow的夜间版本(我猜是下一个版本)中指定event_ndims=1。

对于后验性(以及未来),这应该是自动推断的,因此不需要指定event\u ndims=1