ipfrs_tensorlogic/ensemble_learner/mod.rs
1//! EnsembleLearner — production-quality ensemble learning system.
2//!
3//! Implements Bagging, AdaBoost, Gradient Boosting, Random Forest, and Stacking
4//! strategies over decision stumps and perceptron base models.
5//!
6//! # Design
7//!
8//! - Bagging: bootstrap samples, parallel independent base models, majority/average vote.
9//! - AdaBoost: sequential stump fitting, exponential weight update (`alpha`), sample
10//! re-weighting after each round.
11//! - Gradient Boosting: pseudo-residual fitting, shrinkage via `learning_rate`.
12//! - Random Forest: bagging + feature sub-sampling per stump (sqrt(n_features)).
13//! - Stacking: train diverse base models and a linear meta-learner on their outputs.
14//! - All operations use `xorshift64` for bootstrap/sub-sampling — no `rand` crate.
15//! - Training history is kept in a `VecDeque<ElTrainingRecord>` capped at 100 entries.
16//! - No `unwrap()` anywhere — all fallible operations use `?` / `ok_or`.
17
18pub mod ellearnerconfig_traits;
19pub mod elmethod_traits;
20pub mod functions;
21pub mod type_aliases;
22pub mod types;
23
24// Re-export all types
25pub use type_aliases::*;
26pub use types::*;
27
28#[cfg(test)]
29mod tests;