UNIR Revista
El algoritmo gradient descent es el método de aprendizaje más utilizado para entrenar redes neuronales artificiales debido a su sencillez y facilidad de implantación.
Si echamos un vistazo a las predicciones acerca de las tendencias tecnológicas a corto y medio plazo, como por ejemplo a las del informe Gartner Top Strategic Technology Trends for 2021, es fácil observar cómo la inteligencia artificial (IA) es uno de los denominadores comunes en todas ellas. La utilización generalizada de la IA —además de ser una tendencia por sí misma— está interrelacionada también con otras tendencias tecnológicas, como la hiperautomatización o el negocio inteligente y tecnologías disruptivas que ya son una realidad (5G, IoT, Big Data). Ante la expansión y generalización de la IA en todo el ecosistema tecnológico, las redes neuronales adquieren una gran importancia, y uno de sus principales algoritmos de entrenamiento es el de gradient descent.
El algoritmo de gradiente descendente es un mecanismo de entrenamiento de sistemas de aprendizaje automático como los basados en redes neuronales. Es el más extendido y utilizado para el aprendizaje o entrenamiento de redes neuronales debido a su sencillez y facilidad de implementación.
Pero, ¿qué son las redes neuronales artificiales?
Son unidades artificiales que, interrelacionadas entre sí, componen un modelo o sistema matemático que intenta simular el funcionamiento del cerebro humano, es decir, un sistema inteligente capaz de aprender a realizar ciertas tareas.
Una red neuronal está constituida por distintas capas de neuronas con diferentes funciones que van aprendiendo de la información que les llega y asumiendo generalizaciones acerca de esta (método de aprendizaje). Una neurona recibe información de entrada, la procesa y produce una información de salida.
Una neurona artificial está formada por los siguientes componentes:
- Entradas: canales o interfaces por donde reciben la información de entrada del exterior del sistema o de otras neuronas.
- Pesos sinápticos: nivel, grado o importancia de la información o comunicación que recibe de otra neurona.
- Regla de propagación: nivel, grado o importancia de la información de salida que proporcionará a una red neuronal en función de la información de entrada que recibe y los pesos sinápticos.
- Función de activación: estado de activación de cada neurona.
- Función de salida: información de salida que proporciona la neurona a otras o al exterior del sistema.
Aprendizaje de las redes neuronales artificiales
El aprendizaje o entrenamiento de las redes neuronales consiste en determinar los pesos sinápticos de las redes neuronales que permitan aprender a la red y así tenga la capacidad de ejecutar la tarea en cuestión, partiendo de valores aleatorios de estos. Matemáticamente, radica en ajustar los pesos que minimizan una función de error acerca del rendimiento de la red, y aquí es donde juega un papel fundamental el algoritmo de gradiente descendiente.
Este algoritmo permite encontrar los parámetros que minimizan una función matemática, conocida como ‘función de coste’, que en el caso de las redes neuronales es la función que calcula el error que comete la red en la ejecución de la tarea. Para el aprendizaje de la red, se parte de un conjunto aleatorio de pesos y a medida que se van ejecutando iteraciones del algoritmo, los pesos se van ajustando y el error de la red es menor.
El algoritmo de gradiente descendente es el método de aprendizaje más utilizado para entrenar redes neuronales, ya que además de su sencillez y facilidad de implantación, permite la retroalimentación o propagación hacia atrás del error que comete la red neuronal en la ejecución de su tarea, posibilitando que todas las neuronas conozcan su contribución al error en función de sus pesos sinápticos y los vayan ajustando.