如何在TensorFlow中使用Bernoulli分布初始化变量?

问题描述 投票:1回答:1

如何在TensorFlow中初始化变量?

我想将每个重量与伯努利分布联系起来:

  • p的概率得到一些值x1,和
  • 以1-p的概率得到一些值x2。

我该如何初始化这个矩阵?

我写了这段代码:

logits_y = tf.get_variable("logits", [n_input*n_hidden,2],
                           initializer=tf.constant_initializer(1.))

2中的[n_input*n_hidden, 2]意味着[p, 1-p]

python tensorflow probability bernoulli-probability
1个回答
0
投票

我不确定你打算用矩阵做什么,但是这里你可以在tensorflow中生成Bernoulli distribution

>>> distrib = tf.contrib.distributions.Bernoulli(probs=[0.3])
>>> sample = distrib.sample([10])
>>> sample
<tf.Tensor 'Bernoulli/sample/Reshape:0' shape=(10, 1) dtype=int32>
>>> sample.eval()
array([[0],
       [0],
       [1],
       [1],
       [0],
       [0],
       [0],
       [1],
       [0],
       [0]], dtype=int32)
© www.soinside.com 2019 - 2024. All rights reserved.