Deep neural networks have achieved remarkable success in the past decade on tasks that were out of reach prior to the era of deep learning. Amongst the myriad reasons for these successes are powerful computational resources, large datasets, new optimization algorithms, and modern architecture designs. Most of the reasons are...