1

如何在 TensorFlow 中初始化变量?

我想将每个权重与伯努利分布相关联:

  • 以 p 获得某个值 x1 的概率,并且
  • 以 1-p 的概率获得某个值 x2。

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

我写了这段代码:

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

2in的[n_input*n_hidden, 2]意思[p, 1-p]

4

1 回答 1

2

我不确定你打算用你的矩阵做什么,但这里是你如何在 tensorflow中生成伯努利分布:

>>> 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)
于 2017-12-21T13:42:25.330 回答