solvr 0.2.0-beta.2

Advanced computing library for real-world problem solving - optimization, differential equations, interpolation, statistics, and more
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//! CUDA implementation of Bisecting K-Means clustering.

use crate::cluster::impl_generic::bisecting_kmeans_impl;
use crate::cluster::traits::bisecting_kmeans::{BisectingKMeansAlgorithms, BisectingKMeansOptions};
use crate::cluster::traits::kmeans::KMeansResult;
use numr::error::Result;
use numr::runtime::cuda::{CudaClient, CudaRuntime};
use numr::tensor::Tensor;

impl BisectingKMeansAlgorithms<CudaRuntime> for CudaClient {
    fn bisecting_kmeans(
        &self,
        data: &Tensor<CudaRuntime>,
        options: &BisectingKMeansOptions,
    ) -> Result<KMeansResult<CudaRuntime>> {
        bisecting_kmeans_impl(self, data, options)
    }
}