This repository contains minimal Jupyter notebooks illustrating neural networks.
- Why they are so powerful: Logical operators can be modelled and since all computing is built from those, all computing can be modelled (given enough resources).
- They do not have all the answers: The "insights" a neural network gives can change with every run. It means there are many ways the data can be explained.
- Less is more: The digits 0 and 1 from MNIST can be distinguished with an autoencoder with two hidden neurons.
- Understand your data : A neural network learns from the differences in the data. If these differences are small compared to the average, it will deliver the average as bias and deem this good enough. Training, validation and test data need to be statistically similar.
For more theoretical background see FeatureLearningSlides.pdf or buy A Concise Introduction to Machine Learning