Project

Neural Network from Scratch

Challenging
69 completions
~ 30 hours
4.2

While completing this project, you will get your first experience in every aspect of creating a fully connected neural network. You will code feedforward networks and implement backpropagation and weight initialization. You will also create a training loop and visualize your model's training process. These skills will give you a solid base to continue with neural network science.

Provided by

JetBrains Academy JetBrains Academy

About

Let's train a very simple but fully connected neural network! In this project, we'll create the necessary metric functions and use custom feedforward and backpropagation methods and functions, all done by hand. The dataset for this project is Fashion-MNIST – no more boring number recognition.

Graduate project icon

Graduate project

This project covers the core topics of the Coding Machine Learning Algorithms course, making it sufficiently challenging to be a proud addition to your portfolio.

At least one graduate project is required to complete the course.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Rescale your data, predict the probabilities with the sigmoid function, and perform the Xavier weights initialization.
Use the functions to design the first half of the neural network: feedforward.
Measure your accuracy with the MSE and implement backpropagation to allow your network actually learn something.
Implement a training loop and see how your model learns.
Implement the feedforward for a more complicated two-layer model.
Defeat the boss of the two-layer neural network: backpropagation.
Use your already written train loop to see how well your two-layer model performs.

Reviews

Mauro Gonçalves avatar
Mauro Gonçalves
3 months ago
During this project, I learned how a neural network works from scratch, without relying on high-level machine learning libraries. I learned how to scale data, initialize weights with Xavier initialization, use the sigmoid activation function, calculate loss with mean squared error, and implement fee ...
Maxim Baev avatar
Maxim Baev
1 year ago
The project really helped me understand the inner working of neural networks.
Roland Onderka avatar
Roland Onderka
1 year ago
Great and challenging project. Best if you want to deeply understand neural networks.

4.2

Learners who completed this project within the Coding Machine Learning Algorithms course rated it as follows:
Usefulness
4.8
Fun
4.3
Clarity
3.5