DistributedEstimator

Trait DistributedEstimator 

Source
pub trait DistributedEstimator: Send + Sync {
    type TrainingData;
    type PredictionInput;
    type PredictionOutput;
    type Parameters: Serialize + for<'de> Deserialize<'de>;

    // Required methods
    fn fit_distributed<'a>(
        &'a mut self,
        cluster: &'a dyn DistributedCluster,
        training_data: &Self::TrainingData,
    ) -> BoxFuture<'a, Result<()>>;
    fn predict_distributed<'a>(
        &'a self,
        cluster: &dyn DistributedCluster,
        input: &'a Self::PredictionInput,
    ) -> BoxFuture<'a, Result<Self::PredictionOutput>>;
    fn get_parameters(&self) -> Result<Self::Parameters>;
    fn set_parameters(&mut self, params: Self::Parameters) -> Result<()>;
    fn sync_parameters(
        &mut self,
        cluster: &dyn DistributedCluster,
    ) -> BoxFuture<'_, Result<()>>;
    fn training_progress(&self) -> DistributedTrainingProgress;
}
Expand description

Core trait for distributed machine learning estimators

Required Associated Types§

Source

type TrainingData

Associated type for training data

Source

type PredictionInput

Associated type for prediction input

Source

type PredictionOutput

Associated type for prediction output

Source

type Parameters: Serialize + for<'de> Deserialize<'de>

Associated type for model parameters

Required Methods§

Source

fn fit_distributed<'a>( &'a mut self, cluster: &'a dyn DistributedCluster, training_data: &Self::TrainingData, ) -> BoxFuture<'a, Result<()>>

Fit the model using distributed training

Source

fn predict_distributed<'a>( &'a self, cluster: &dyn DistributedCluster, input: &'a Self::PredictionInput, ) -> BoxFuture<'a, Result<Self::PredictionOutput>>

Make predictions using the distributed model

Source

fn get_parameters(&self) -> Result<Self::Parameters>

Get current model parameters

Source

fn set_parameters(&mut self, params: Self::Parameters) -> Result<()>

Set model parameters

Source

fn sync_parameters( &mut self, cluster: &dyn DistributedCluster, ) -> BoxFuture<'_, Result<()>>

Synchronize parameters across cluster nodes

Source

fn training_progress(&self) -> DistributedTrainingProgress

Get training progress information

Implementors§