def __init__(self, loc, scale, seed=0, dtype=mstype.float32, name="Gumbel"): """ Constructor of Gumbel distribution. """ valid_dtype = mstype.float_type Validator.check_type_name("dtype", dtype, valid_dtype, type(self).__name__) gumbel_cdf = msb.GumbelCDF(loc, scale) super(Gumbel, self).__init__( distribution=msd.Uniform(0.0, 1.0, dtype=dtype), bijector=msb.Invert(gumbel_cdf), seed=seed, name=name) # overwrite default_parameters and parameter_names self._reset_parameters() self._loc = self._add_parameter(loc, 'loc') self._scale = self._add_parameter(scale, 'scale') self._gumbel_bijector = gumbel_cdf # ops needed for the class self.cast = P.Cast() self.const = P.ScalarToArray() self.exp = exp_generic self.expm1 = expm1_generic self.fill = P.Fill() self.lgamma = nn.LGamma() self.log = log_generic self.shape = P.Shape() self.sqrt = P.Sqrt()
def test_name(): with pytest.raises(TypeError): msd.Uniform(0., 1., name=1.0)
def test_type(): with pytest.raises(TypeError): msd.Uniform(0., 1., dtype=dtype.int32)
def __init__(self): super(KL, self).__init__() self.u = msd.Uniform([0.0], [1.5], dtype=dtype.float32)
def __init__(self): super(LogProb, self).__init__() self.u = msd.Uniform([0.0], [[1.0], [2.0]], dtype=dtype.float32)
def __init__(self): super(EntropyH, self).__init__() self.u = msd.Uniform([0.0], [1.0, 2.0], dtype=dtype.float32)
def __init__(self, shape, seed=0): super(Sampling, self).__init__() self.u = msd.Uniform([0.0], [[1.0], [2.0]], seed=seed, dtype=dtype.float32) self.shape = shape
def __init__(self): super(Basics, self).__init__() self.u = msd.Uniform([0.0], [3.0], dtype=dtype.float32)