About this project
Strata is a machine learning and linear algebra library written in Mojo, designed to provide scikit-learn-compatible estimators with native SIMD and LAPACK acceleration. It covers a broad range of ML domains: linear models (LinearRegression, Ridge, Lasso, ElasticNet, LogisticRegression, SGD), SVMs (LinearSVC, LinearSVR), naive Bayes (GaussianNB, MultinomialNB, BernoulliNB, ComplementNB), decision trees and ensembles (RandomForest, HistGradientBoosting), clustering (KMeans, MiniBatchKMeans, DBSCAN), nearest neighbors (KNeighbors, KDTree), decomposition (PCA, TruncatedSVD), preprocessing (scalers, encoders, imputers, polynomial features), model selection (cross-validation, grid/randomized search), and evaluation metrics. The library provides dense and sparse matrix containers (Matrix, CSRMatrix, CSCMatrix), zero-copy binary serialization for model persistence, and composable Pipeline structs. Performance benchmarks report speedups of 1.1x to 3x over scikit-learn across standard workloads while maintaining bit-for-bit mathematical parity. Installation is available via Pixi from the Modular Community channel on Prefix.dev. The library supports two execution modes: pure Mojo routines with zero external dependencies, and LAPACK/BLAS-accelerated solvers for advanced linear algebra operations such as SVD, QR, Cholesky, and eigenvalue decomposition.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.