Fundamentos de la IA

¿Qué son las Redes Neuronales?

mm
Añade Unite.AI a tus fuentes preferidas en Google

¿Qué son las Redes Neuronales Artificiales (RNA)?

Muchos de los avances más importantes en la inteligencia artificial están impulsados por redes neuronales artificiales. Las Redes Neuronales Artificiales (RNA) son la conexión de funciones matemáticas unidas en un formato inspirado en las redes neuronales que se encuentran en el cerebro humano. Estas RNA son capaces de extraer patrones complejos de los datos, aplicar estos patrones a datos no vistos para clasificar/reconocer los datos. De esta manera, la máquina “aprende”. Esa es una visión general rápida de las redes neuronales, pero veamos más de cerca las redes neuronales para entender mejor qué son y cómo funcionan.

Perceptrón Multicapa Explicado

Antes de mirar redes neuronales más complejas, vamos a tomar un momento para mirar una versión simple de una RNA, un Perceptrón Multicapa (MLP).

Imagina una línea de montaje en una fábrica. En esta línea de montaje, un trabajador recibe un artículo, hace algunos ajustes en él y luego lo pasa al siguiente trabajador en la línea que hace lo mismo. Este proceso continúa hasta que el último trabajador en la línea le da los toques finales al artículo y lo coloca en una cinta que lo sacará de la fábrica. En esta analogía, hay múltiples “capas” en la línea de montaje, y los productos se mueven entre capas a medida que se mueven de trabajador en trabajador. La línea de montaje también tiene un punto de entrada y un punto de salida.

Un Perceptrón Multicapa se puede considerar como una línea de producción muy simple, compuesta por tres capas en total: una capa de entrada, una capa oculta y una capa de salida. La capa de entrada es donde se alimenta los datos al MLP, y en la capa oculta algunos “trabajadores” manejan los datos antes de pasarlos a la capa de salida, que da el producto al mundo exterior. En el caso de un MLP, estos trabajadores se llaman “neuronas” (o sometimes nodos) y cuando manejan los datos, los manipulan a través de una serie de funciones matemáticas.

Dentro de la red, hay estructuras que conectan nodo a nodo llamadas “pesos“. Los pesos son una suposición sobre cómo se relacionan los puntos de datos a medida que se mueven a través de la red. Para decirlo de otra manera, los pesos reflejan el nivel de influencia que una neurona tiene sobre otra neurona. Los pesos pasan a través de una “función de activación” al salir del nodo actual, que es un tipo de función matemática que transforma los datos. Transforman datos lineales en representaciones no lineales, lo que permite a la red analizar patrones complejos.

La analogía con el cerebro humano que se implica con “red neuronal artificial” proviene del hecho de que las neuronas que componen el cerebro humano están unidas de manera similar a como los nodos en una RNA están conectados.

Aunque los perceptrones multicapa han existido desde la década de 1940, había una serie de limitaciones que los impedían ser especialmente útiles. Sin embargo, a lo largo de las últimas décadas, se creó una técnica llamada “propagación hacia atrás” que permitió a las redes ajustar los pesos de las neuronas y, por lo tanto, aprender de manera mucho más efectiva. La propagación hacia atrás cambia los pesos en la red neuronal, lo que permite a la red capturar mejor los patrones reales dentro de los datos.

Redes Neuronales Profundas

Las redes neuronales profundas toman la forma básica del MLP y la hacen más grande agregando más capas ocultas en el medio del modelo. Así que en lugar de tener una capa de entrada, una capa oculta y una capa de salida, hay muchas capas ocultas en el medio y las salidas de una capa oculta se convierten en las entradas para la siguiente capa oculta hasta que los datos han pasado por toda la red y se han devuelto.

Las múltiples capas ocultas de una red neuronal profunda pueden interpretar patrones más complejos que el perceptrón multicapa tradicional. Diferentes capas de la red neuronal profunda aprenden los patrones de diferentes partes de los datos. Por ejemplo, si los datos de entrada consisten en imágenes, la primera parte de la red podría interpretar la luminosidad o oscuridad de los píxeles, mientras que las capas posteriores pueden identificar formas y bordes que se pueden utilizar para reconocer objetos en la imagen.

Diferentes Tipos de Redes Neuronales

Hay varios tipos de redes neuronales, y cada uno de los diferentes tipos de redes neuronales tiene sus propias ventajas y desventajas (y, por lo tanto, sus propios casos de uso). El tipo de red neuronal profunda descrito anteriormente es el tipo más común de red neuronal, y a menudo se le llama red neuronal de alimentación hacia adelante.

Una variación de las redes neuronales es la Red Neuronal Recurrente (RNN). En el caso de las Redes Neuronal Recurrente, se utilizan mecanismos de bucle para mantener la información de estados anteriores del análisis, lo que significa que pueden interpretar datos donde el orden es importante. Las RNN son útiles para derivar patrones de datos secuenciales/cronológicos. Las Redes Neuronal Recurrente pueden ser unidireccionales o bidireccionales. En el caso de una red neuronal bidireccional, la red puede tomar información de más tarde en la secuencia, así como de partes anteriores de la secuencia. Dado que la RNN bidireccional tiene en cuenta más información, es capaz de dibujar los patrones correctos de los datos.

Una Red Neuronal Convolucional es un tipo especial de red neuronal que es hábil para interpretar los patrones que se encuentran dentro de las imágenes. Una CNN opera pasando un filtro sobre los píxeles de la imagen y logrando una representación numérica de los píxeles dentro de la imagen, que luego puede analizar para patrones. Una CNN está estructurada de tal manera que las capas convolucionales que extraen los píxeles de la imagen vienen primero, y luego las capas de alimentación hacia adelante densamente conectadas, que son las que realmente aprenden a reconocer objetos, vienen después de esto.

Bloguero y programador con especialidades en Machine Learning y Deep Learning temas. Daniel espera ayudar a otros a utilizar el poder de la IA para el bien social.