# how to limit one label while doing multi-label classification

I have a data set with 7 labels. I would like to apply multi-label classification on that. by that, each instance may have more than one label associated.

now let's explain what I want.

Rules in my dataset for the labels:

1. each instance may have one or more than one labels BUT when the instance label is others it will not have any other label. For example:

NEVER, NEVER take this drug. => others

here the label is others so my model should not predict any other label with that.

But I printed the result of the test set and I saw most of the time this label has been repeated in other labels. For example, the result of the test set for this instance is that:

NEVER, NEVER take this drug. => others, ADR


but as the true label is others it should never be predicted by another label

Is there any approach I can do that it prevents my classifier to predict this label with other labels?

The idea of multi-label classification is that predicted properties are not mutually exclusive, which is not true in your case. You could take the label others away from the multi-label classifier and build a binary classifier for it. Run the multi-label classifier only if the binary classifier predicts the label of an instance is not others.