1. A method for retrieval of images from a large-scale database of images, comprising: obtaining a user designation of a query image; extracting features representative of the query image; searching the large-scale database of images to obtain a candidate set of images from the large-scale database of images based at least in part on similarity of the features for the query image to features of the images in the large-scale database of images; ranking the obtained candidate images; projecting the query image into a subspace that captures semantic attributes; and re-ranking the ranked candidate images based at least in part on similarity of a result of projecting the query image into the subspace that captures semantic attributes to a result of projecting the images in the large-scale database of images into the subspace that captures semantic attributes, wherein the similarity of the result of projecting the query image into the subspace that captures semantic attributes to the result of projecting the images in the large-scale database of images into the subspace that captures semantic attributes is measured by a distance metric that measures distances between attributes.