probly.representation.distribution.array_categorical.ArrayCategoricalDistribution¶
- class probly.representation.distribution.array_categorical.ArrayCategoricalDistribution(unnormalized_probabilities: ndarray = <property object>)[source]¶
Bases:
ArrayAxisProtected[ndarray],CategoricalDistributionA categorical distribution stored as a numpy array.
Shape: (…, num_classes) The last axis represents the category dimension.
- astype(dtype: DTypeLike, order: Order = 'K', casting: Literal['no', 'equiv', 'safe', 'same_kind', 'unsafe'] = 'unsafe', subok: bool = True, copy: bool = True) Self[source]¶
Copy of the array, cast to a specified type.
- property flags: ArrayFlagsLike¶
The flags of the array.
- permitted_ufuncs = {}¶
- protected_values(func: Callable | None = None, method: str | None = None) dict[str, ArrayProtectedValue] | None[source]¶
Return all protected field values.
The values are preserved as-is and are not coerced to
np.ndarray. Optionally takes the function that triggered the call for context. This can be used to conditionally modify the returned values or prevent them from being accessed.
- reshape(*shape: int | tuple[int, ...], order: str = 'C', copy: bool | None = None) Self[source]¶
Return a copy with reshaped protected values.
- sample(num_samples: int = 1, rng: Generator | None = None) ArraySample[ndarray][source]¶
Sample from the categorical distribution (NumPy backend).
- transpose(*axes: int | None) Self[source]¶
Return a transposed version of the ArraySample.
This method implicitly also provides full axis tracking support for - np.moveaxis - np.rollaxis Those functions call out to transpose methods for custom array types.
- Parameters:
axes – The axes to transpose.
- Returns:
A transposed version of the ArraySample.
- type = 'categorical'¶
- unnormalized_probabilities: np.ndarray¶