How to find the classification accuracy of Random Forest?
    9 views (last 30 days)
  
       Show older comments
    
I am trying to use Random Forest with 10 fold cross validation. My code is shown below:
I would to find the correct rate of the classifier, but seems that classpref does not work with TreeBagger. In this case how can find the accuracy of the classifier given that I use cross validation ?
    cvFolds = crossvalind('Kfold', FeatureLabSHUFFLE, k);   %# get indices of 10-fold CV
    cp = classperf(FeatureLabSHUFFLE);
    for i = 1:k                                  %# for each fold
        testIdx = (cvFolds == i);                %# get indices of test instances
        trainIdx = ~testIdx;                     %# get indices training instances
        %Random Forest
        RFModel = TreeBagger(10,FeatureMTX(trainIdx,:), FeatureLabSHUFFLE(trainIdx));
        pred = predict(RFModel, FeatureMTX(testIdx,:));
        %# evaluate and update performance object
        cp = classperf(cp, pred, testIdx);
    end
    cp.CorrectRate;
0 Comments
Answers (1)
  Zenin Easa Panthakkalakath
    
 on 14 May 2019
        Hi MA-Winlab,
Have a look at the following documentation that talks about Bootstrap Aggregation (Bagging) of Classification Trees Using TreeBagger. The example shows how to find the Classification accuract and loss.
Regards,
Zenin
0 Comments
See Also
Categories
				Find more on Classification 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!
