Incremental Learning
Incremental learning, or online learning, involves processing incoming data from a data stream, possibly given little to no knowledge of the distribution of the predictor variables, aspects of the objective function, and whether the observations are labeled. Incremental learning problems contrast with traditional machine learning methods, in which enough labeled data is available to fit to a model, perform cross-validation to tune hyperparameters, and infer the predictor distribution characteristics.
Incremental learning requires a configured incremental model. You can create
and configure an incremental model directly by calling an object, for example
incrementalRegressionLinear
, or you can convert a supported
traditionally trained model to an incremental learner by using
incrementalLearner
. After configuring a model and
setting up a data stream, you can fit the incremental model to the incoming
chunks of data, track the predictive performance of the model, or perform both
actions simultaneously.
For more details, see Incremental Learning Overview.
You can also incrementally monitor for drift in concept data, such as
regression loss. First you need to configure the drift detector using incrementalConceptDriftDetector
. After setting up a data stream,
you can update the drift detector and check for any drift using detectdrift
. For more information, see the reference
pages.
Blocks
IncrementalRegressionLinear Predict | Predict responses using incremental linear regression model (Since R2023b) |
IncrementalRegressionLinear Fit | Fit incremental linear regression model (Since R2023b) |
IncrementalRegressionKernel Fit | Fit incremental kernel regression model (Since R2024b) |
IncrementalRegressionKernel Predict | Predict responses using incremental kernel regression model (Since R2024b) |
Detect Drift | Update drift detector states and drift status with new data (Since R2024b) |
Update Metrics | Update performance metrics in incremental learning model given new data (Since R2023b) |
Functions
Objects
Topics
- Incremental Learning Overview
Discover fundamental concepts about incremental learning, including incremental learning objects, functions, and workflows.
- Configure Incremental Learning Model
Prepare an incremental learning model for incremental performance evaluation and training on a data stream.
- Implement Incremental Learning for Regression Using Succinct Workflow
Use the succinct workflow to implement incremental learning for linear regression with prequential evaluation.
- Implement Incremental Learning for Regression Using Flexible Workflow
Use a flexible workflow to implement incremental learning for linear regression with prequential evaluation.
- Initialize Incremental Learning Model from SVM Regression Model Trained in Regression Learner
Train a linear SVM regression model using the Regression Learner app, and then initialize an incremental model for regression using the estimated coefficients.