1. A computer program product for multilevel clustering for a face recognition process, the computer program product comprising one or more computer readable storage media having program instructions embodied therewith, the program instructions executable by one or more processors to: perform a first stage of clustering of an image data set by the one or more computer systems, the image data set comprising a plurality of image vectors representing a plurality of facial images, comprising: choose k vectors in the image data set as a set of k clusters; and assign each of the remaining image vectors in the image data set to any of the k clusters using first x vector coefficients; calculate a first distance between a query image vector representing a query image and each of the k clusters using the first x vector coefficients; select at least a first cluster and a second cluster from the k clusters for which the first distance is minimum; perform a second stage of clustering with the first cluster and the second cluster by the one or more computer systems, comprising: choose first m image vectors in the first cluster as a set of first m sub-clusters, and assign each of the remaining image vectors in the first cluster to any of the m sub-clusters using next y vector coefficients; and choose first m image vectors in the second cluster as a set of second m sub-clusters and assign each of the remaining image vectors in the second cluster to any of the second m sub-clusters using the next y vector coefficients; calculate a second distance between the query image vector and the first and second m sub-clusters using the next y vector coefficients; select a first sub-cluster in the first m sub-clusters and a second sub-cluster in the second m sub-clusters for which the second distance is minimum; and select a given image vector from either the first sub-cluster or the second sub-cluster as matching the query image vector.