Exemplo n.º 1
0
  def testErfInvIntegerInput(self):
    with self.test_session():

      with self.assertRaises(TypeError):
        x = np.array([1, 2, 3]).astype(np.int32)
        special_math.erfinv(x)

      with self.assertRaises(TypeError):
        x = np.array([1, 2, 3]).astype(np.int64)
        special_math.erfinv(x)
Exemplo n.º 2
0
  def testErfInvValues(self):
    with self.test_session():
      if not special:
        return

      x = np.linspace(0., 1.0, 50).astype(np.float64)

      expected_x = special.erfinv(x)
      x = special_math.erfinv(x)
      self.assertAllClose(expected_x, x.eval(), atol=0.)
Exemplo n.º 3
0
 def diff(self, j):
     '''
     @return format [batch_size]
     '''
     t1 = tf.norm(self.pred_mean_pl - self.output_pl)
     t3 = tf.sqrt(2.0)
     t4 = erfinv(j)
     return tf.cast(
         tf.reduce_mean(t1 - tf.sqrt(self.pred_var_pl) * t3 * t4),
         tf.float32)
Exemplo n.º 4
0
    def acc(self, j):
        '''
        @return format [batch_size]
        '''
        t1 = tf.norm(self.pred_mean_pl - self.output_pl)
        t2 = tf.sqrt(self.pred_var_pl) * tf.sqrt(2.0) * erfinv(j)

        t = t1 < t2
        s = tf.count_nonzero(t)

        b_size = tf.size(t)
        b_size = tf.cast(b_size, tf.int64)

        return tf.cast(s / b_size, tf.float32)
 def _quantile(self, p):
     return np.sqrt(2.0) * self.scale * special_math.erfinv(p)
Exemplo n.º 6
0
def erfinv(y: TfExpressionEx) -> TfExpression:
    """Inverse of the error function."""
    # pylint: disable=no-name-in-module
    from tensorflow.python.ops.distributions import special_math
    return special_math.erfinv(y)
Exemplo n.º 7
0
 def _quantile(self, p):
   return np.sqrt(2.0) * self.scale * special_math.erfinv(p)