Redes neuronales artificiales (parte 1): ¿de qué hablamos?

kjpargeter en Freepik
En iapunk te hablamos continuamente de modelos de inteligencia artificial que usan el aprendizaje profundo, o Deep Learning, para conseguir impresionantes resultados. Esta rama del aprendizaje automático se vertebra en otro concepto que habrás leído con frecuencia por aquí: las redes neuronales artificiales. Pero ¿realmente sabes lo que son? ¿Cómo funcionan?
Las redes neuronales artificiales son las artífices de la revolución actual protagonizada por la inteligencia artificial. Se trata de módulos computacionales formados por conjuntos de neuronas artificiales, o nodos, interconectados que buscan replicar cómo las redes neuronales biológicas de nuestro cerebro procesan la información. El investigador Rodrigo Salas, del Departamento de Computación de la Universidad de Valparaíso, apunta que estas redes no son otra cosa que “un método para resolver problemas, individualmente o combinados con otros métodos, para aquellas tareas” en las que la balanza entre los datos y el conocimiento se inclina hacia lo primero.

En este sentido, explica que las redes neuronales artificiales son “capaces de encontrar relaciones (patrones) de forma inductiva por medio de los algoritmos de aprendizaje” en los datos que se les suministra. Estos algoritmos, aportan los investigadores Raquel Flórez y José Miguel Fernández, “operan de forma masivamente paralela y permiten desarrollar tareas cognitivas como el aprendizaje de patrones, la clasificación o la optimización”, entre otras.
Hablamos de modelos que pueden actuar de modo tan paralelo al tener funcionando de forma simultánea un gran número de unidades básicas de procesamiento de la información interconectadas: las neuronas artificiales. Realmente, el funcionamiento de un nodo o neurona es muy sencillo y limitado; es su combinación con otras lo que nos permite resolver problemas complejos.
¿Cómo funcionan las redes neuronales artificiales?
Cada neurona va a procesar una información en función de una serie de factores o entradas que se le dan, haciendo una suma ponderada de sus pesos (valores que se le asignan a cada entrada). La información procesada de dicha neurona se convertirá en la variable de entrada de la siguiente neurona de la red. Así sucesivamente hasta llegar a la capa de salida. Porque, precisamente, la estructura de estas redes se conforma por una secuencia de capas de neuronas. Existen, por orden, la capa de entrada, las capas ocultas y la capa de salida.

Xabier Basogain, investigador del Departamento de Ingeniería de Sistemas y Automática de la Escuela Superior de Ingeniería de Bilbao, explica que la capa de entrada y la de salida son las cabezas visibles de esta arquitectura de red y con las que nos relacionamos: “Existen dos capas con conexiones con el mundo exterior. Una capa de entrada, o buffer de entrada, donde se presentan los datos a la red, y una capa buffer de salida que mantiene la respuesta de la red a una entrada. El resto de las capas reciben el nombre de capas ocultas”. Estamos hablando, en este caso, de redes neuronales artificiales multicapa, que son las ideales para problemas complejos. Luego están las monocapa, que no usan capas ocultas, solo la de entrada y salida. Estas hacen, por tanto, procesamientos mucho más sencillos. De hecho, como la capa de entrada no hace cálculos, se considera que solo poseen una para procesar, de ahí su nombre.
Continuando con las redes multicapa, y recogiendo las palabras del divulgador de IA Carlos Santana (alias Dot CSV) en uno de sus vídeos explicativos de Youtube, al colocar las neuronas en capas de manera secuencial, unas van recibiendo la información procesada de las otras, como comentamos antes. “Con esto, lo que conseguimos es que la red pueda aprender conocimiento jerarquizado”, explica. La red neuronal va aprendiendo conocimientos más básicos en las primeras capas y, conforme la información procesada sirve de entrada a las siguientes, se va elaborando “conocimiento más complejo, abstracto e interesante”. Apreciamos, de este modo, una gran profundidad del procesamiento por la cantidad de capas, lo que da sentido al concepto de Deep Learning.
Funciones de activación, retropropagación y tipos de aprendizaje
¿Vas entendiendo cómo funcionan estas redes? Esperamos que sí, porque aún nos quedan unos pocos elementos más de los que hablarte. Uno de ellos es imprescindible para que la información procesada pase de una capa a la otra: la función de activación. Como su propio nombre indica, es la encargada de activar las señales de las neuronas artificiales (como hacen los estímulos eléctricos en las biológicas) para que pasen su procesamiento a las siguientes. Las neuronas computan la combinación de las entradas y someten el resultado a esta función, que, mediante una operación matemática, decide la activación de la información para que continúe procesándose en otras neuronas. Además, vela por que el valor de salida se mantenga siempre en ciertos parámetros que se deseen para que luego no surjan problemas de cálculo.

Las funciones de activación se representan fácilmente en gráficos. Hoy en día se emplean para las redes neuronales artificiales funciones de activación no lineales, pues las lineales limitaban sensiblemente la activación de la neurona. Dentro de las no lineales, son habituales la función sigmoide o la ReLu, pero no vamos a adentrarnos en su funcionamiento en este artículo. Nos basta con que tengas presente que es una operación fundamental para el trabajo en cadena de la red.
Otro de los elementos importantes es el de la propagación hacia atrás de errores, o retropropagación. Un algoritmo fundamental para entrenar las redes neuronales. Redes, en este caso, que se conocen como prealimentadas, donde la información se mueve en una única dirección: hacia adelante. Tal y como explica el ingeniero informático Jorge Calvo Martín, este algoritmo “entrena una red neuronal a través de un método llamado regla de la cadena”. “En términos simples, después de cada paso hacia adelante a través de una red, la propagación realiza un paso hacia atrás mientras ajusta los parámetros del modelo (pesos y sesgos)”, detalla el experto.
De este modo, tras el entrenamiento, las capas ocultas de las redes neuronales reconocerán en los datos de entrada los patrones similares a las características que hayan aprendido. Esto supone que las redes adquieren la capacidad de detectar patrones de datos incompletos, encontrando para ellos una solución adecuada.
Aprendizaje supervisado y no supervisado
Pero no podríamos acabar la lección de hoy sin hablar de las tipologías de aprendizaje automático. De hecho, la retropropagación es un tipo de aprendizaje supervisado, campo que engloba a los algoritmos que entrenan a las redes neuronales artificiales con conjuntos de datos etiquetados. Al modelo de IA se le explican las características de los datos y sus etiquetas para que, cuando finalice el entrenamiento, sea capaz de generar resultados previstos. Así, se mide también su precisión.
Luego está el aprendizaje no supervisado. En este caso, se le introduce un dataset (conjunto de datos) sin etiquetar. El algoritmo debe aprender por sí mismo las características de los datos, relacionarlos y encontrar similitudes y ser capaz de entenderlos. Lo vemos hoy con frecuencia en campos como la generación de imágenes con IA, por ejemplo.
A veces, las fronteras entre ambos campos se diluyen y surgen mecanismos de aprendizaje semisupervisados, con datos de entrenamiento tanto etiquetados como no etiquetados. También existe el aprendizaje por refuerzo, donde, en situaciones con una variedad de escenarios enorme, enseñamos a la IA a ir escogiendo caminos o tomando decisiones. Algunas acciones serán premiadas y otras penalizadas, por lo que el modelo irá aprendiendo a tomar las decisiones correctas y evitar las erróneas. Básicamente, a base de prueba y error.
Sin duda, las redes neuronales artificiales constituyen un área interesante que está muy presente en nuestro día a día. El procesamiento del lenguaje natural, la generación de imágenes o vídeos artificiales, la visión por ordenador, el reconocimiento automático de voz o las recomendaciones personalizadas, entre otros tantísimos ejemplos, hacen uso de ellas y de arquitecturas cada vez más evolucionadas.
En el próximo capítulo, te hablaremos de las arquitecturas de redes neuronales artificiales más comunes y las que han ido surgiendo en los últimos tiempos. Para comprender mejor todo lo que hemos hablado hoy, te animamos a ver esta serie de vídeos de Dot CSV que explican, de manera magistral y muy ilustrativa, los contenidos que hemos tratado:
¿Qué es una red neuronal? Parte 1: la neurona
¿Qué es una red neuronal? Parte 2: la red
Fuentes de interés usadas para la explicación:
Redes neuronales artificiales, Rodrigo Salas
Las redes neuronales artificiales: fundamentos teóricos y aplicaciones prácticas, Raquel Flórez López y José Miguel Fernández Fernández
https://books.google.es/books?id=X0uLwi1Ap4QC&printsec=frontcover&hl=es#v=onepage&q&f=false
Redes neuronales artificiales y sus aplicaciones, Xabier Basogain
Publicación sobre retropropagación, Jorge Calvo Martín
Serie de vídeos sobre redes neuronales artificiales, Carlos Santana (Dot CSV)