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§
Sourcefn fit(
&mut self,
ctx: &MultiSeriesContext,
target_idx: usize,
) -> Result<(), MultivariateError>
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.
Sourcefn predict(
&self,
horizon: usize,
) -> Result<MultivariateForecastResult, MultivariateError>
fn predict( &self, horizon: usize, ) -> Result<MultivariateForecastResult, MultivariateError>
Predict horizon steps ahead.
Sourcefn supports_online_learning(&self) -> bool
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".