Available algorithms
Regression
Linear, ridge, and polynomial regression for continuous target prediction
Classification
SVM, LDA, QDA, and logistic regression for categorical target prediction
Decision trees
Tree-based models for both classification and regression tasks
Core concepts
Training and prediction
All supervised learning models in MLPP follow a consistent API pattern:Feature matrices
MLPP uses Eigen for all matrix operations. Input features are typically represented as row-major matrices:Regularization
Many models support L2 regularization (ridge penalty) to prevent overfitting:Model selection
Always split your data into training and test sets to evaluate model performance on unseen data. Use cross-validation for hyperparameter tuning.
- Linear relationships: Linear regression, logistic regression
- Non-linear relationships: Polynomial regression, decision trees, kernel SVM
- High-dimensional data: Ridge regression, LDA for dimensionality reduction
- Complex decision boundaries: SVM with kernels, decision trees
- Interpretability required: Linear models, decision trees
Performance considerations
Solver selection
Regression models automatically choose the best solver based on problem geometry:- Normal equations (Cholesky): Fast for n >> d, O(nd² + d³)
- SVD decomposition: Stable for d >> n or ill-conditioned problems
- Jacobi SVD: Maximally stable fallback for difficult problems
Feature preprocessing
MLPP models handle standardization automatically:- Features are standardized internally (zero mean, unit variance)
- Coefficients are returned in the original feature space
- No manual preprocessing required
Next steps
Explore specific algorithm families:- Regression - Predicting continuous values
- Classification - Predicting categorical labels
- Decision trees - Tree-based models for both tasks