#834 · Primary category: Education & Research

NumPyCNN

cnn computer-vision conv-layer convnet convolution convolutional-neural-networks data-science filter numpy pygad python relu relu-layer

Building Convolutional Neural Networks From Scratch using NumPy

Project last updated:06/19/23

GitHub Stars

600

Forks

186

Contributors

1

License

Other

Why we included this project

NumPyCNN is a single-module CNN implementation written entirely in NumPy, and its real value is that it makes the internals of a convolutional network readable. Anyone who has trained models in Keras or PyTorch without seeing what the layers actually do can open cnn.py and follow the code from convolution to pooling as plain Python classes. The author is upfront about the limits: there is no backpropagation, just a learning-rate weight update, and the code handles single-label classification, so this is a teaching tool rather than something to ship. It also connects to the PyGAD library, which points toward training the same network with a genetic algorithm. For people learning deep learning fundamentals or preparing their own tutorials, it is a useful reference to keep around.

Articles for this project

No articles for this project yet.

To suggest a topic or contribute an article, contact us.

Related projects in this category