Face recognition is usually done by first transforming the face into vector space and than looking for the closest vector from known, e.g. openface[1] (which is based on google 2015 paper "FaceNet: A Unified Embedding for Face Recognition and Clustering"). Facebook itself opensourced[2] a library for efficient search of nearest neighbors in such spaces.
It doesn't seem likely that generating set of Nth order friends (which grow very quickly with N) would be better than just having a global set or a split of global set by some characteristics (e.g. gender, race).
[1] https://cmusatyalab.github.io/openface/ [2] https://github.com/facebookresearch/faiss