How to save any trained machine learning model to use it for prediction later?

50 views (last 30 days)
Hi, I am using number of machine learning models which include inbuilt models in MATLAB like fitrsvm, fitrgp, fitrensemble etc. and some models using functions in external toolbox like 'dacefit.m' for kriging model etc.
Is there a common way to save my models which I have trained on a dataset, so that I could use the same trained models on different test data later?
If not, kindly help me with saving a trained fitrensemble (Regression Tree Ensemble) model so that I could just use it for predictions in future.
Thanks in advance!

Accepted Answer

the cyclist
the cyclist on 19 Mar 2020
Edited: the cyclist on 19 Mar 2020
The standard calling syntax, e.g.
Mdl = fitrensemble(Tbl,ResponseVarName);
stores everything you need in the model object named Mdl.
You can see in the first example in the documentation for fitrensemble how to then make predictions from the model.
  7 Comments
the cyclist
the cyclist on 19 Mar 2020
Glad to hear it worked. Rather than saving models as Mdl1, Mdl2, etc, you could consider saving them all in a single cell array:
Mdl{1} = fitrensemble(...);
Mdl{2} = fitrensemble(...);
...
Mdl{n} = fitrensemble(...);
Then you can just save the single cell array Mdl, which has all your models.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!