diff options
Diffstat (limited to 'tensorflow/contrib/distributions/python/kernel_tests/student_t_test.py')
-rw-r--r-- | tensorflow/contrib/distributions/python/kernel_tests/student_t_test.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tensorflow/contrib/distributions/python/kernel_tests/student_t_test.py b/tensorflow/contrib/distributions/python/kernel_tests/student_t_test.py index 050a71d9c8..116d4e1a41 100644 --- a/tensorflow/contrib/distributions/python/kernel_tests/student_t_test.py +++ b/tensorflow/contrib/distributions/python/kernel_tests/student_t_test.py @@ -79,6 +79,32 @@ class StudentTTest(tf.test.TestCase): self.assertAllClose(expected_pdf, pdf_values) self.assertAllClose(np.exp(expected_log_pdf), pdf_values) + def testStudentCDFAndLogCDF(self): + with self.test_session(): + batch_size = 6 + df = tf.constant([3.] * batch_size) + mu = tf.constant([7.] * batch_size) + sigma = tf.constant([8.] * batch_size) + df_v = 3. + mu_v = 7. + sigma_v = 8. + t = np.array([-2.5, 2.5, 8., 0., -1., 2.], dtype=np.float32) + student = tf.contrib.distributions.StudentT(df, mu=mu, sigma=sigma) + + log_cdf = student.log_cdf(t) + self.assertEquals(log_cdf.get_shape(), (6,)) + log_cdf_values = log_cdf.eval() + cdf = student.cdf(t) + self.assertEquals(cdf.get_shape(), (6,)) + cdf_values = cdf.eval() + + expected_log_cdf = stats.t.logcdf(t, df_v, loc=mu_v, scale=sigma_v) + expected_cdf = stats.t.cdf(t, df_v, loc=mu_v, scale=sigma_v) + self.assertAllClose(expected_log_cdf, log_cdf_values, atol=0., rtol=1e-5) + self.assertAllClose(np.log(expected_cdf), log_cdf_values, atol=0., rtol=1e-5) + self.assertAllClose(expected_cdf, cdf_values, atol=0., rtol=1e-5) + self.assertAllClose(np.exp(expected_log_cdf), cdf_values, atol=0., rtol=1e-5) + def testStudentEntropy(self): df_v = np.array([[2., 3., 7.]]) # 1x3 mu_v = np.array([[1., -1, 0]]) # 1x3 |