Skip to main content

MultivariateForecastModel

Trait MultivariateForecastModel 

Source
pub trait MultivariateForecastModel: Send + Sync {
    // Required methods
    fn fit(
        &mut self,
        ctx: &MultiSeriesContext,
        target_idx: usize,
    ) -> Result<(), MultivariateError>;
    fn predict(
        &self,
        horizon: usize,
    ) -> Result<MultivariateForecastResult, MultivariateError>;
    fn supports_online_learning(&self) -> bool;
}
Expand description

Multivariate forecast model contract.

Required Methods§

Source

fn fit( &mut self, ctx: &MultiSeriesContext, target_idx: usize, ) -> Result<(), MultivariateError>

Fit the model.

  • ctx — aligned multi-series context.
  • target_idx — the series the caller wants forecast.

A model that forecasts the whole system — VarModel fits one equation per series — still records target_idx and still returns every series it fitted. It is recorded in MultivariateForecastResult::target so that target_forecast answers correctly whichever model produced the result. target_idx selects what the caller asked for; it does not promise to be the only row that comes back.

Source

fn predict( &self, horizon: usize, ) -> Result<MultivariateForecastResult, MultivariateError>

Predict horizon steps ahead.

Source

fn supports_online_learning(&self) -> bool

Whether the model supports incremental online learning.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§