How can I use the output of a classifier as the input of other classifier?

2 次查看(过去 30 天)
Hi! I have a dataset that contains 8 columns: 7 feature columns and 1 column indicating each row's class. There are 4 classes: A, B, C, and D. However, classes B and C are not well separated in the classification (I use Classification Learner in MATLAB), so the accuracy is stuck at 60%. If I combine B and C and then do a classification of the A, B+C, and D (so total 3 classes), the accuracy is 80%. However, I still need to separate the B and C. I thought that maybe I can build a classifier that classifies A, B+C, and D classes first, and then I will extract the predicted B+C class, and make another classifier that classifies B and C from the output of the former classifier. Is this logic working and executable in MATLAB? Thank you so much in advance.

采纳的回答

Drew
Drew 2022-10-18
编辑:Drew 2022-10-18
Using the output of one classifier as the input of another classifier is called stacking. Stacking, bagging, and boosting are all methods for combining classifiers. The Classification Learner app does not currently support stacking. The Classification Learner app does support bagging and boosting ensemble methods, so it is recommended to try those, if you have not already, by trying "All Ensembles" in the Classification Learner App.
For examples of stacking at the MATLAB commandline, see:
For a third-party MATLAB toolbox for stacking, see Ensemble Learning Toolbox

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Classification Ensembles 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by