Cross Validating a Discriminant Analysis Classifier
This example shows how to perform five-fold cross validation of a quadratic discriminant analysis classifier.
Load the sample data.
Create a quadratic discriminant analysis classifier for the data.
quadisc = fitcdiscr(meas,species,'DiscrimType','quadratic');
Find the resubstitution error of the classifier.
qerror = resubLoss(quadisc)
qerror = 0.0200
The classifier does an excellent job. Nevertheless, resubstitution error can be an optimistic estimate of the error when classifying new data. So proceed to cross validation.
Create a cross-validation model.
cvmodel = crossval(quadisc,'kfold',5);
Find the cross-validation loss for the model, meaning the error of the out-of-fold observations.
cverror = kfoldLoss(cvmodel)
cverror = 0.0200
The cross-validated loss is as low as the original resubstitution loss. Therefore, you can have confidence that the classifier is reasonably accurate.