def test_Binomial(self):
with BayesianNet():
logits = tf.zeros([2, 3])
n_experiments = tf.placeholder(tf.int32, shape=[])
n_samples = tf.placeholder(tf.int32, shape=[])
group_ndims = tf.placeholder(tf.int32, shape=[])
a = Binomial('a', logits, n_experiments, n_samples,
group_ndims)
sample_ops = set(get_backward_ops(a.tensor))
for i in [logits, n_experiments, n_samples]:
self.assertTrue(i.op in sample_ops)
log_p = a.log_prob(np.ones([2, 3], dtype=np.int32))
log_p_ops = set(get_backward_ops(log_p))
for i in [logits, n_experiments, group_ndims]:
self.assertTrue(i.op in log_p_ops)
self.assertTrue(a.get_shape()[1:], logits.get_shape())
评论列表
文章目录