Training neural networks
So far, we have just described the way that some inputs can be propagated through the neural network to produce one or multiple outputs. This would be of little use if we did not have a way to find a combination of the biases and weight
to produce meaningful outputs. Training a neural network refers to the process that allows us to optimize the values of the parameters to make the neural network able to carry out a specific task. And to do so, we need data. Often, a lot of data.
For the training data, in fact, we know exactly what the input and the output of the neural network should be, and the training process can be seen as the optimization problem to identify the set of values of the biases and weights
that makes the predicted outputs the closest to the expected ones. Therefore, like in any optimization problem, when training a neural network, we define a loss function that we would like to minimize:
Here, and
represent the predicted...