https://techaireports.com/understanding-generalization-in-deep-learning-beyond-the-mysteries/