def test_ones(): """Tests ones""" # Scalar ones = ops.ones([1]) assert isinstance(ones, tf.Tensor) assert ones.ndim == 1 assert ones.shape[0] == 1 assert ones.numpy() == 1.0 # 1D ones = ops.ones([5]) assert isinstance(ones, tf.Tensor) assert ones.ndim == 1 assert ones.shape[0] == 5 assert all(ones.numpy() == 1.0) # 2D ones = ops.ones([5, 4]) assert isinstance(ones, tf.Tensor) assert ones.ndim == 2 assert ones.shape[0] == 5 assert ones.shape[1] == 4 assert np.all(ones.numpy() == 1.0) # 3D ones = ops.ones([5, 4, 3]) assert isinstance(ones, tf.Tensor) assert ones.ndim == 3 assert ones.shape[0] == 5 assert ones.shape[1] == 4 assert ones.shape[2] == 3 assert np.all(ones.numpy() == 1.0)
def __init__(self, k: int = 2, shape: Union[int, List[int]] = [], posterior=Dirichlet, prior=None, transform=None, initializer={'concentration': pos_xavier}, var_transform={'concentration': O.softplus}, name='DirichletParameter'): # Check type of k if not isinstance(k, int): raise TypeError('k must be an integer') if k < 2: raise ValueError('k must be >1') # Make shape a list if isinstance(shape, int): shape = [shape] # Create shape of underlying variable array shape = shape + [k] # Use a uniform prior if prior is None: prior = Dirichlet(O.ones(shape)) # Initialize the parameter super().__init__(shape=shape, posterior=posterior, prior=prior, transform=transform, initializer=initializer, var_transform=var_transform, name=name)
def __init__(self, k: int = 2, shape: Union[int, List[int]] = [], posterior=Categorical, prior=None, transform=None, initializer={'probs': xavier}, var_transform={'probs': O.additive_logistic_transform}, name='CategoricalParameter'): # Check type of k if not isinstance(k, int): raise TypeError('k must be an integer') if k < 2: raise ValueError('k must be >1') # Make shape a list if isinstance(shape, int): shape = [shape] # Use a uniform prior if prior is None: prior = Categorical(O.ones(shape) / float(k)) # Create shape of underlying variable array shape = shape + [k - 1] # Initialize the parameter super().__init__(shape=shape, posterior=posterior, prior=prior, transform=transform, initializer=initializer, var_transform=var_transform, name=name) # shape should correspond to the sample shape self.shape = shape
def init(shape): return val * O.ones(shape)