mccube._metrics
Defines helpful metrics and dissimilarity measures.
Cov
module-attribute
¤
Covariance matrix for a d dimensional distribution.
gaussian_wasserstein_metric
¤
gaussian_wasserstein_metric(means: tuple[Mean, Mean], covs: tuple[Cov, Cov]) -> Complex[ArrayLike, '']
2-Wasserstein metric between two multi-variate Gaussian distributions.
Example
Parameters:
-
means(tuple[Mean, Mean]) –is a tuple of two
ddimensional mean vectors. -
covs(tuple[Cov, Cov]) –is a tuple of two
d x ddimensional covariance matrices.
Returns:
-
Complex[ArrayLike, '']–The 2-Wasserstein metric betwen the
ddimensional Gaussian distributions parameterised by themeansandcovariances.
Source code in mccube/_metrics.py
euclidean_metric
¤
euclidean_metric(xs: PyTree[ArrayLike, Particles], ys: PyTree[ArrayLike, Particles]) -> PyTree[RealScalarLike, Particles]
Euclidean metric.
squared_euclidean_metric
¤
squared_euclidean_metric(xs: PyTree[ArrayLike, Particles], ys: PyTree[ArrayLike, Particles]) -> PyTree[RealScalarLike, Particles]
Squared Euclidean metric.
Source code in mccube/_metrics.py
pairwise_metric
¤
pairwise_metric(xs: Particles, ys: Particles, metric=euclidean_metric) -> PyTree[Shaped[ArrayLike, '?n ?n'], Particles]
Pairwise metric between two PyTrees of n vectors of dimension d.
Example
Source code in mccube/_metrics.py
center_of_mass
¤
Compute the weighted mean/center of mass of a Particles
PyTree. If weights==None then all particles are equally weighted.