NumPyCNN is a Python implementation for convolutional neural networks (CNNs) from scratch using NumPy.
IMPORTANT *If you are coming for the code of the gitchat tutorial titled Building Convolutional Neural Network using NumPy from Scratch (手把手带你开始计算机视觉项目——使用NumPy亲手搭建CNN,熟悉网络结结构), then you would just use the python code NumPyCNN.py
.
The project has a single module named cnn.py
which implements all classes and functions needed to build the CNN.
It is very important to note that the project only implements the forward pass of training CNNs and there is no learning algorithm used. Just the learning rate is used to make some changes to the weights after each epoch which is better than leaving the weights unchanged.
There are different resources that can be used to get started with the building CNN and its Python implementation.
Read about building neural networks in Python through the tutorial titled Artificial Neural Network Implementation using NumPy and Classification of the Fruits360 Image Dataset available at these links:
To start with coding the genetic algorithm, you can check the tutorial titled Building Convolutional Neural Network using NumPy from Scratch available at these links:
Get started with the genetic algorithm by reading the tutorial titled Derivation of Convolutional Neural Network from Fully Connected Network Step-By-Step which is available at these links:
You can also check my book cited as Ahmed Fawzy Gad 'Practical Computer Vision Applications Using Deep Learning with CNNs'. Dec. 2018, Apress, 978-1-4842-4167-7 which discusses neural networks, convolutional neural networks, deep learning, genetic algorithm, and more.
@GitChat, @ahmedfgad