This is a generic answer to the generic question in the title.
The amount of training material needed to obtain adequate performance depends on both the data, what one considers adequate performance and the type of model chosen. However, the more parameters the model needs to estimate the more training data is required. Generally, you also want more samples than the number of features. In the case of imbalanced classes, you may also need to find/annotate more samples of the less abundant classes.
Also very often, training is an iterative process in that classes may need to be redefined in light of previous misclassification results, for example a new ‘artefact’ class may need to be added to catch ‘contaminants’ of other classes.