1. A computer-implemented method, comprising: obtaining text associated with an image; obtaining a feature vector representing visual features of the image; parsing, in one or more processing devices, the text into candidate labels for the image, each candidate label being a unique n-gram of text; determining, in the one or more processing devices, that an image classification model has been trained for an n-gram matching one or more of the candidate labels, wherein the image classification model has been trained to classify images based on the feature vector; and assigning, in the processing device, at least one of the one or more candidate labels as a label for the image based on the feature vector and the image classification model for the n-gram matching the one or more candidate labels.