What is a neural network?