Training data for multi-category classification algorithm
No, it is perfectly possible to train on multiple categories. What you need, though, is an exhaustive list of these categories (in supervised learning, that is).

Suppose you are trying to associate sentences with topics, and you have a list of possible topics topics = ['sports', 'soccer', 'politics']. 
It sounds like your data look something like this:

sentence                       | topics
-------------------------------|----------------------------------
'Barack Obama loves soccer'    | ['politics', 'sports', 'soccer']
'The parliament is important'  | ['politics']
'Soccer is fun'                | ['sports', 'soccer']


Then you need to one-hot encode the topics:

X = [['Barack Obama loves soccer'], ['The parliament is important'], ['Soccer is fun']]

Y = [[1, 1, 1], [1, 0, 0], [0, 1, 1]]


And then you train a neural network to predict not one but three (= number of topics) values.