What factors should be considered when determining whether to use multiple binary classifiers or a single multiclass classifier?
For example, I'm building a model that does hand gesture classification. A simple case has 4 outputs: [None, thumbs_up, clenched_fist, all_fingers_extended]. I see two ways to approach this:
Option 1 – Multiple binary classifiers
- [None, thumbs_up]
- [None, clenched_fist]
- [None, all_fingers_extended]
Option 2 – Single multiclass classifier
- [None, thumbs_up, clenched_first, all_fingers_extended]
Which approach tends to be better and in what conditions?
Best Answer
Your Option 1 may not be the best way to go; if you want to have multiple binary classifiers try a strategy called One-vs-All.
In One-vs-All you essentially have an expert binary classifier that is really good at recognizing one pattern from all the others, and the implementation strategy is typically cascaded. For example:
Here is a graphical explanation of One-vs-all from Andrew Ng's course:
Multi-class classifiers pros and cons:
Pros:
Cons:
Popular methods:
One-vs-All classifiers pros and cons:
Pros:
Cons:
none
and 3000 samples of thethumbs_up
class.Popular methods: