What is the difference form using TreeBagger and Fitrensemble functions

16 views (last 30 days)
Hi, I am wondering what is the difference between (1) and (2).
I am trying to construct a predictive model, and I don't understand if I should get the same results with (1) and (2) or if they are different.
1) template = templateTree('NumVariablesToSample','all','MinLeafSize',5);
ensemble = fitrensemble(X,Y,'Method','Bag','NumLearningCycles',100,'Learners',template);
Ypred_test = predict(ensemble, XTest);
2) ensemble = TreeBagger(100,X,Y,'method','regression','NVarToSample','all','OOBPredictorImportance','on');
Ypred_test = predict(ensemble, XTest);
Thanks for your time.

Answers (1)

Raunak Gupta
Raunak Gupta on 3 May 2020
Hi,
In above case the output model as well as result will be different because both TreeBagger and fitrensemble uses different algorithm for optimization. Tree Bagger uses Node Splitting Rules whereas fitrensemble uses Ensemble Algorithms. So, it is expected the output will be different.
You may choose between the two based on difference mentioned in Comparison of TreeBagger and Bagged Ensembles.

Community Treasure Hunt

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

Start Hunting!