def test_objective(self):
log_qx = stats.norm.logpdf(self._n01_samples).astype(np.float32)
qx_samples = tf.convert_to_tensor(self._n01_samples)
log_qx = tf.convert_to_tensor(log_qx)
def log_joint(observed):
norm = Normal(std=1.)
return norm.log_prob(observed['x'])
lower_bound = klpq(log_joint, observed={},
latent={'x': [qx_samples, log_qx]}, axis=0)
err_msg = "can only be optimized instead of being evaluated"
with self.assertRaisesRegexp(NotImplementedError, err_msg):
_ = lower_bound + 1.
with self.test_session(use_gpu=True) as sess:
with self.assertRaisesRegexp(NotImplementedError, err_msg):
sess.run(lower_bound)
评论列表
文章目录