Built with Mathigon

Glossary

Select one of the keywords on the left…

Neural NetworksSee for yourself

Reading time: ~5 min

As they say, talk is cheap! Let's put your new knowledge to the test and train a real Neural Network right here in your browser.

Below is a fully-interactive model. By clicking the + and buttons, you can completely customize the architecture—making the network wider (more neurons) or deeper (more layers). On the right-hand side, you can pick from three unique classification datasets for the network to solve.

When you click Run 1 Epoch, the network performs a full forward pass (⬤) to guess the answers, calculates its mistakes, and immediately fires a backward pass (🔴) to adjust its weights:

Did you manage to hit 100% accuracy?

You might have noticed that making a network incredibly deep doesn't magically solve the problem! In fact, for the tricky "spiral" dataset above, a wider network often performs much better than a heavily deep one because building more parallel neurons allows the network to carve out highly complex decision boundaries.

Test your knowledge: If your network accuracy completely freezes and refuses to improve, what should you do?

Try hitting "Reset Weights" or entirely change the network architecture.
Assume the dataset is broken and give up immediately.
Force the network to use straight, linear activation functions.

It's More Art Than Science

If your network refused to learn, don't worry! This beautifully illustrates the hardest lesson in deep learning: training neural networks is incredibly difficult!

A model might fail because of bad initial weights, a poor learning rate, or just a bad architectural layout. It requires a lot of care, finesse, and to get a neural network to perform perfectly!

Sina