Align the photos: this means scale, rotate, or manipulate all the samples in a way such that each of the eyes, nose and mouth will be found in the same place in a picture. The easiest way is to find the locations of the eyes and the mouth using Viola-Jones algorithm (or other face recognition algorithm such as HOG) and then scale up or down the image so that the distance between the eyes is the same across all images, and then rotate the images so the mouth is always in the middle.
One of the drawbacks is that the transformation is flat (2D). What if the face is slanted or looking down? Then face in the aligned picture will be distorted.
FaceBook DeepFace (https://research.fb.com/wp-content/uploads/2016/11/deepface-closing-the-gap-to-human-level-performance-in-face-verification.pdf?) has done a more advanced alignment job. Their alignment includes 3D alignment and approximation. And they claim that because of this special alignment, their face recognition accuracy has improved a lot.