Deep Learning Framework From Scratch Using Numpy
This provides a foundational educational tool for understanding deep learning internals, but it is incremental as it replicates existing frameworks without new performance gains.
The authors developed a complete deep learning framework from scratch using only Python and Numpy, implementing automatic differentiation and gradient optimization from elementary calculus, and demonstrated its application on tasks like computer vision classification and solving differential equations.
This work is a rigorous development of a complete and general-purpose deep learning framework from the ground up. The fundamental components of deep learning - automatic differentiation and gradient methods of optimizing multivariable scalar functions - are developed from elementary calculus and implemented in a sensible object-oriented approach using only Python and the Numpy library. Demonstrations of solved problems using the framework, named ArrayFlow, include a computer vision classification task, solving for the shape of a catenary, and a 2nd order differential equation.