To elaborate a bit:
Methods do exist for single-output multi-label stratification (e.g., see scikit-multilearn).
And there's a perfectly serviceable naive method for multi-class problems.
The question here is: How do we handle multi-output labeling (different 'domains' of labeling that pose different questions on the same dataset, but should not be assumed to be correlated)? Is it enough to naively concatenate all label flags in the same problem? (that is, treat all label domains together as one and stratify that, even if some of them are single-label (but we'll have to represent them as one-hot vectors).
If the answer is 'yes' to the above, is there any theory (even trivial; I'll have missed it) that says why simple concatenation would work given, say, order=1 stratification (as in scikit-multilearn)?
- Is it day or night? : multi-class
- Is it foggy or raining? : multi-label
- Is it day or night (multi-class)? Foggy or raining (multi-label)? : multi-output
(It can be any combination of multi-class/multi-label outputs.)
It's likely I just don't know the term to look for, so that'd be great help.