In such cases, the training data could be separated linearly by expanding all combinations of features as new ones, and projecting them onto a higherdimensional space.
such a naive approach requires enormous computational overhead.