Three Levels of Generalization in Deep Learning | Synapse