1. A method implemented by one or more computers comprising one or more processors, the method comprising: receiving an image query; receiving ranked image search results responsive the image query; generating, by the one or more processors, a hierarchical grouping of the image search results based on measures of similarity between images identified by the image search results; identifying, by the one or more processors, a respective canonical image for each of a plurality of groups in the hierarchical grouping based on a likelihood that users will interact with the canonical image when presented with multiple images from the group; and providing, in response to the image query and by the one or more processors, data that present a visual representation of the identified canonical images wherein canonical images for lower levels of the hierarchy are presented smaller than canonical images for higher levels of the hierarchy.