1. A computer-implemented method for selecting a representative image for a recipe from among a plurality of recipe images, the method comprising: receiving a recipe comprising classified recipe text describing preparation of a food product and a plurality of candidate images; generating image features for the plurality of candidate images, features of a candidate image representative of at least one of: classified recipe text proximate to the candidate image and position of the candidate image within the recipe; determining, by a processor, image probabilities of the plurality of candidate images depicting the finished food product described by the recipe, the image probabilities determined using an image model, image feature weights, and the generated image features, the image feature weights computed based on training recipes comprising classified training recipe text and training recipe images, the training recipe images including representative training images corresponding to the training recipes; ranking the plurality of candidate images according to the determined image probabilities; selecting a representative image from the candidate images according to the ranking of the candidate images, the selected representative image having a highest image probability of the determined image probabilities; and storing the selected representative image in association with the retrieved recipe.