Entrenamiento de una Red Neuronal

Hemos comentado que el uso de redes neuronales formadas por múltiples neuronas ordenadas en diferentes capas puede suponer una capacidad de análisis mucho más elevada que, simplemente, el uso de una neurona artificial. Imaginemos una red neuronal (obviemos por un momento su arquitectura) formada por cientos o miles de neuronas. Si los pesos y el bias de cada una son los adecuados, podemos conseguir que al pasar por la red los valores que forman una imagen, me indique si ésta representa un perro o un gato, o que, si le pasamos como valores de entrada la información del tomador de un seguro, me indique la probabilidad de que dicha persona tenga o no un accidente, o que, si le pasamos constantes vitales de un paciente, nos devuelva la probabilidad de que vaya a sufrir un ataque al corazón a lo largo de las siguientes 6 horas...

Toda esta magia se consigue si y solo si se dispone de los datos adecuados, la arquitectura de la red es la correcta (y por ahora nos vamos a centrar en los MLPs) y las neuronas están configuradas correctamente, es decir, si los pesos y bias de todas y cada una de las neuronas son los adecuados.

La pregunta que podemos hacernos es ¿y cómo escogemos dichos pesos y bias? ¿probando aleatoriamente valores? La respuesta a esta última pregunta es no, por supuesto. Con independencia del número de neuronas que incluya la red, y considerando que cada peso y cada bias contiene un número real (cualquier número real), la cantidad de combinaciones posibles hace absolutamente inviable este enfoque estocástico.