This code is largely from the following guide. I have added some comments to make sure I understand what is going on and have mucked with the input a bit. I also typed most of it rather than copying/pasting to make sure I knew what was going where.
The input folder is intentionally missing to prevent having to pull and push the dataset. It's only 112 MB and LFS could handle it But I opted to not bother. It can be found here: https://www.kaggle.com/jessicali9530/lfw-dataset