-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the omar wiki! This space is dedicated to helping you understand, use, and contribute to omar
, a Python package for discovering localised, linear structure in complex, high-dimensional datasets. It implements a modernized version of the Multivariate Adaptive Regression Splines (MARS) algorithm with improved numerical efficiency, based on modern rank-one update strategies and optional Fortran acceleration.
omar
(Open Multivariate Adaptive Regression) is a MARS [Friedman, 1991; 1993] implementation. It approximates high-dimensional functions by an additive model of low-dimensional functions. It does so by exploiting local lower dimensional manifolds by an additive expansion in a subset of the complete tensor product of the univariate truncated power spline basis. To sample the resulting, exponentially growing function space, it employs a heuristic grow-prune strategy.
It is designed to automatically construct accurate, interpretable, and efficient piecewise-linear models of functions with many predictor and one response variable.
omar
is ideal when:
- You want to find the best possible linear approximation in high-dimensional, noisy data.
- You prefer models with interpretable basis functions.
- You need a fast, scalable tool for MARS modeling.
The model has the form:
where each
To enable practical use on modern hardware, omar
includes two compute backends:
- Pure Python for accessibility and clarity, speedup with Numba for JIT-compiled performance on CPU.
-
Fortran via
f2py
with native BLAS/LAPACK routines and OpenMP parallelism.
This wiki is organized into the following pages:
How to install omar
, set up the environment, and run your first model.
2. Background
Explanation of the grow-prune strategy.
Detailed reference for the OMAR
class and its methods.
Backend comparisons and runtime scaling data.
5. Contributing
How to contribute to the project, report issues, or submit pull requests.
Get Started: Begin with the Getting Started page to install and run your first omar
model.
- Friedman, J. H. (1991). Multivariate adaptive regression splines. The Annals of Statistics, 19(1), 1–67. [JSTOR](http://www.jstor.org/stable/10.2307/2241837)
- Friedman, J. H. (1993). Fast MARS. Technical Report No. 110, Stanford University.
- Krause, O., & Igel, C. (2015). A More Efficient Rank-one Covariance Matrix Update for Evolution Strategies. FOGA '15, 129–136. [DOI](https://doi.org/10.1145/2725494.2725496)