To delve deeper into the intricacies of neural networks, I am currently constructing one entirely from the ground up using Python. As of now, I have implemented the capability to create neural networks of various sizes, with adjustable parameters such as the number of layers and neurons in each layer. I have also incorporated different activation functions, like softmax and ReLU, and a loss calculation mechanism. At this stage, the network learns through random adjustments to weights and biases, but I plan to integrate a linear regression algorithm in the near future
This project is based on the amazing book Neural Networks from Scratch in Python by Harrison Kinsley and Daniel Kukieła
An example of a neural network learning to classify various data points within a simple dataset. After a predefined number of iterations, the neural network displays the set of weights and biases that achieved the highest performance, as well as the best-achieved loss and accuracy