Expand description
Aprender: Next-generation machine learning library in pure Rust.
Aprender provides production-grade ML algorithms with a focus on ergonomic APIs, comprehensive testing, and backend-agnostic compute.
§Quick Start
use aprender::prelude::*;
// Create training data (y = 2*x + 1)
let x = Matrix::from_vec(4, 1, vec![
1.0,
2.0,
3.0,
4.0,
]).unwrap();
let y = Vector::from_slice(&[3.0, 5.0, 7.0, 9.0]);
// Train linear regression
let mut model = LinearRegression::new();
model.fit(&x, &y).unwrap();
// Make predictions
let predictions = model.predict(&x);
let r2 = model.score(&x, &y);
assert!(r2 > 0.99);§Modules
primitives: Core Vector and Matrix typesdata: DataFrame for named columnslinear_model: Linear regression algorithmscluster: Clustering algorithms (K-Means)classification: Classification algorithms (Logistic Regression)tree: Decision tree classifiersmetrics: Evaluation metricsmodel_selection: Cross-validation and train/test splittingpreprocessing: Data transformers (scalers, encoders)optim: Optimization algorithms (SGD, Adam)loss: Loss functions for training (MSE, MAE, Huber)serialization: Model serialization (SafeTensors format)stats: Traditional descriptive statistics (quantiles, histograms)graph: Graph construction and analysis (centrality, community detection)chaos: Chaos engineering configuration (from renacer)
Re-exports§
pub use primitives::Matrix;pub use primitives::Vector;pub use traits::Estimator;pub use traits::Transformer;pub use traits::UnsupervisedEstimator;
Modules§
- chaos
- Chaos Engineering Configuration
- classification
- Classification algorithms.
- cluster
- Clustering algorithms.
- data
- DataFrame module for named column containers.
- graph
- Graph construction and analysis with cache-optimized CSR representation.
- linear_
model - Linear models for regression.
- loss
- Loss functions for training machine learning models.
- metrics
- Evaluation metrics for ML models.
- model_
selection - Model selection utilities for cross-validation and train/test splitting.
- optim
- Optimization algorithms for gradient-based learning.
- prelude
- Convenience re-exports for common usage.
- preprocessing
- Preprocessing transformers for data standardization and normalization.
- primitives
- Core compute primitives (Vector, Matrix).
- serialization
- Model Serialization Module
- stats
- Traditional descriptive statistics for vector data.
- traits
- Core traits for ML estimators and transformers.
- tree
- Decision tree algorithms and ensemble methods.