Crate aprender

Crate aprender 

Source
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 types
  • data: DataFrame for named columns
  • linear_model: Linear regression algorithms
  • cluster: Clustering algorithms (K-Means)
  • classification: Classification algorithms (Logistic Regression)
  • tree: Decision tree classifiers
  • metrics: Evaluation metrics
  • model_selection: Cross-validation and train/test splitting
  • preprocessing: 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.