Getting Started with AutoML Using MATLAB
Why AutoML?
Automated machine learning (AutoML) lets you automate difficult and iterative steps in the model building workflow without requiring machine learning expertise.
What limits adoption of machine learning:
- High cost of required expertise
- Incremental iterative workflow
- Manual optimization not feasible for lots of models
Benefits of AutoML
- Engineers and domain experts with little to no expertise can build good models.
- Machine learning experts save time.
- Applications that require lots of optimized models can be realized.
Wavelet Scattering
sf = waveletScattering (SignalLength); Loop over signal waveletFeature = featureMatrix(sf,signal) Append waveletFeature to feature table Add labels end
Note:
Works well for signal and image data
Neighborhood Component Analysis
Identify small subset of features with high predictive power.
fscnca(data, labels, 'Lambda'); find(mdl.FeatureWeights > 0.2)
Also available:
- Max Relevance Min Redundancy
- ReliefF
- Stepwise selection
Identify best model in one step:
- For classification:
fitcauto(data, labels, 'Options', …) - For regression:
fitrauto
Options
- Limit optimization iterations:
MaxObjectiveEvaluations - Activate parallel execution:
UseParallel - Save model after each iteration:
SaveIntermediateResults - Limit which models and hyperparameters to consider:
Learners / OptimizeHyperparameters - Display errors:
ShowPlots
Notes:
- Not guaranteed to find best model
- Good results after 50–150 iterations