1. A computer implemented method for identifying semantic nearest neighbors in a feature space, comprising: generating, using one or more processors, an affinity matrix for objects in a given feature space, wherein the affinity matrix identifies the semantic similarity between each pair of objects in the feature space; training, using the one or more processors, a multi-bit hash function using a greedy algorithm that increases the Hamming distance between dissimilar objects in the feature space while minimizing the Hamming distance between similar objects; and identifying, using the one or more processors, semantic nearest neighbors for an object in a second feature space using the multi-bit hash function.