1. A computer-implemented method for selecting viewports, the method comprising: receiving, by one or more computing devices, a request for a particular image; identifying, by the one or more computing devices, a set of potential viewports within the particular image, wherein each potential viewport of the set of potential viewports is a sub-portion of the particular image; identifying, by the one or more computing devices, features within each potential viewport of the set of potential viewports; calculating, by the one or more computing devices, a score for each given potential viewport of the set of potential viewports based at least in part on a weight vector having a set of feature weights and the identified features within that given potential viewport of the set of potential viewports; selecting, by the one or more computing devices, a viewport of the set of potential viewports based on the calculated scores; and providing, by the one or more computing devices, the selected viewport and the particular image in response to the request.