Artificial Neural Networks - How do Neural Networks learn?