What is the difference form using TreeBagger and Fitrensemble functions
Show older comments
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
on 3 May 2020
4 votes
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.
Categories
Find more on Regression Tree Ensembles in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!