Deep Learning Framework From Scratch Using Numpy

Andrei Nicolae
DOI: https://doi.org/10.48550/arXiv.2011.08461
2020-11-17
Mathematical Software
Abstract: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.
What problem does this paper attempt to address?