pub trait KMeansAlgo<T: Num> {
// Required methods
fn compute_membership_and_loss(
centroids: &[T],
data: &[T],
dimension: usize,
distance_type: DistanceType,
) -> (Vec<Option<u32>>, f64);
fn to_kmeans(
data: &[T],
dimension: usize,
k: usize,
membership: &[Option<u32>],
distance_type: DistanceType,
) -> KMeans;
}
Required Methods§
Sourcefn compute_membership_and_loss(
centroids: &[T],
data: &[T],
dimension: usize,
distance_type: DistanceType,
) -> (Vec<Option<u32>>, f64)
fn compute_membership_and_loss( centroids: &[T], data: &[T], dimension: usize, distance_type: DistanceType, ) -> (Vec<Option<u32>>, f64)
Recompute the membership of each vector.
Parameters:
- data: a
N * dimension
floating array. Not necessarily normalized.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.