¿Qué es una red neuronal artificial?
La Enciclopedia Británica la define como un programa informático que funciona inspirándose en las redes del cerebro para realizar funciones cognitivas como la resolución de problemas y el aprendizaje. El hombre resuelve situaciones acudiendo a la experiencia acumulada y, lo mismo las redes neuronales artificiales, que tratan de adquirir conocimiento a través de experiencia.
En este nuevo sistema o red de tratamiento de la información, la unidad básica de procesamiento está inspirada en la célula fundamental del sistema nervioso humano: la neurona. Por tanto, reproducir el entendimiento humano en una máquina equivale a copiar las neuronas y sus conexiones.
¿Cómo funciona el cerebro?
Antes de explicar cómo se ha materializa un cerebro artificial o sintético, hay que detenerse mínimamente para entender cómo funciona el cerebro.
El premio Nobel español Ramón y Cajal descubrió a finales del siglo XIX la estructura celular del sistema nervioso y describió el funcionamiento de las neuronas. Cada una de ellas consta de un cuerpo celular (soma), un árbol de ramificaciones o dendritas y un axón. El canal de entrada de información son las dendritas, el procesador es el cuerpo o soma y el axón representa el canal de salida.
el cerebro tiene miles de millones de neuronas y aprende al reforzar las conexiones entre ellas
Él defendía también que las neuronas se interconectaban entre sí de forma paralela. Dicha conexión, llamada sinapsis (se realiza de forma eléctrica y también química) permite la transmisión de información entre ellas. «El cerebro tiene miles de millones de neuronas y aprende al reforzar las conexiones entre ellas. Una manera de que una máquina aprenda es intentar que actúe como si fuera una red neuronal, y descubrir un mecanismo que refuerce las conexiones entre neuronas», explicaba al periódico Expansión Geoffrey Hinton, vicepresidente de ingeniería de Google cuando recibió el Premio Fronteras del Conocimiento de la Fundación BBVA en 2017.
Fue en los años 40 cuando surgen los primeros planteamientos de emular en un ordenador los procesos mentales. El motivo hay que buscarlo en la convergencia entre un rápido desarrollo computacional teórico y práctico (baste recordar los primeros pasos de la Inteligencia Artificial con Ala Turing y otros investigadores) y la investigación neurológica sobre el aprendizaje y el procesamiento neuronal del cerebro.
En 1943 el neurofisiólogo Warren McCulloch de la Universidad de Illinois y el matemático Walter Pitts de la Universidad de Chicago publicaron un paper en el que establecía un modelo de neurona, al que llamaron neurona MCP, con las características clave de sus hermanas biológicas. Muy básicamente definen una neurona como una máquina binaria con varias entradas y salidas.
Pocos años después, en 1949, el neuropsicólogo Donald Hebb proporcionó un modelo simplista basado en la fisiología para imitar la plasticidad sináptica entre neuronas. Es decir, definió un algoritmo para calcular el peso de la conexión neuronal, dentro de la red. ¿Cómo se explica el paso en términos biológicos: “Las señales que llegan a la sinapsis son las entradas a la neurona; éstas son ponderadas (atenuadas o simplificadas) a través de un parámetro, denominado peso, asociado a la sinapsis correspondiente. Estas señales de entrada pueden excitar a la neurona o inhibirla (peso negativo). El efecto es la suma de las entradas ponderadas. Si la suma es igual o mayor que el umbral de la neurona, entonces esta se activa”, explica en su web la Sociedad Andaluza de Educación Matemática Thales.
Perceptrón
Ya estaban las bases teóricas, pero hubo que espera a 1957 para la aparición del primer modelo computacional inspirado en el funcionamiento del cerebro. Frank Rosenblatt creó el primer perceptrón en el Laboratorio Aeronáutico de la Universidad de Cornell en Ithaca (Nueva York). Resumiéndolo mucho un preceptrón es la unidad fundamental de una red neuronal, es decir, un tipo de neurona MCP (como las que definió unas años antes McCulloch). En ella, las entradas pasan a través de algunos «preprocesadores», que se denominan unidades de asociación. Estas unidades de asociación detectan la presencia de ciertas características específicas en las entradas. De hecho, como su nombre indica, un perceptrón estaba destinado a ser un dispositivo de reconocimiento de patrones ópticos bimarios, y se siguen utilizando hoy en día.
Las redes neuronales desaparecieron de la investigación al final de la década de los 60. El causante: una publicación de dos investigadores que defendían las limitaciones de los perceptrones. Sin embargo, en los 80 reaparecieron en el panorama científico de forma definitiva. La red neuronal artificial se configura en ese momento y hasta ahora como un dispositivo que a partir de un conjunto de entradas, genera una salida y donde cada neurona es en realidad una unidad de procesamiento que intercambia datos o información.
el conocimiento se modela como las conexiones entre los elementos de procesamiento neuronas artificiales)
Al igual que las neuronas, los elementos o nodos de una red artificial se configuran en capas: algunas de entrada, otras de salida y otras intermedias para el procesamiento interno. Siguiendo las explicaciones de la Enciclopedia Británica: “el conocimiento se modela como las conexiones entre los elementos de procesamiento (neuronas artificiales) y los pesos adaptativos de cada una de estas conexiones.
La red luego aprende a través de la exposición a diversas situaciones y logra esto ajustando el peso de las conexiones entre las neuronas comunicantes agrupadas en capas. La capa de entrada de neuronas artificiales recibe información del entorno, y la capa de salida comunica la respuesta; entre estas capas puede haber una o más capas «ocultas» (sin contacto directo con el entorno), donde tiene lugar la mayor parte del procesamiento de la información. La salida de una red neuronal depende del peso de las conexiones entre neuronas en diferentes capas.
Cada peso indica la importancia relativa de una conexión particular. Si el total de todas las entradas recibidas por una neurona particular supera un cierto valor umbral, la neurona enviará una señal a cada neurona a la que está conectada en la siguiente capa. En el procesamiento de solicitudes de préstamo, por ejemplo, las entradas pueden representar los datos del perfil del solicitante del préstamo y el resultado de otorgar un préstamo”.
¿Supervisión sí o no?
Las máquinas, en un inicio, extraen información de la que disponen y aprenden de ella en función de las reglas o principios que gobiernen dicho aprendizaje y del valor que se le de a cada tipo de dato, respetando el esquema de entrada, cálculos o procesamiento y salida. Al final generan una salida, como resultado de la mejor combinación posible de parámetros. En el lenguaje de la inteligencia artificial, ese encontrar la mejor combinación es lo que se denomina entrenar a la red neuronal, alimentarla con datos secuenciales y supervisar lo correcto de sus patrones.
Un vez que se ha entrenado lo suficiente y que se ha cotejado y supervisado, esa misma red puede usarse para hacer predicciones. “El entrenamiento de redes neuronales típicamente involucra aprendizaje supervisado, donde cada ejemplo de entrenamiento contiene los valores de los datos de entrada y de la salida deseada. Por el contrario, ciertas redes neuronales se entrenan a través del aprendizaje no supervisado, en el que se presenta una red con una recopilación de datos de entrada y se les da el objetivo de descubrir patrones, sin que se les diga qué buscar específicamente”, continúa la Británica.
Redes neuronales profundas
En algún momento, la complejidad del sistema de capas dio lugar a las redes neuronales profundas (deep learning) con varias capas ocultas entre las de entrada y salida. La complejidad ha permitido por ejemplo, que la aplicación Street View tenga un 96% de precisión para reconocer los números de las calles o que un ordenador haya ganado por primera vez en la historia a un humano en el juego milenario chino Go.
No hace falta irse tan lejos. Los terminales móviles son en realidad redes neuronales que reconocen palabras, cuando usamos un traductor simultáneo o buscamos la mejor ruta para llegar a un determinado sitio también usamos estos sistemas artificiales. Como dice Calum Chace, escritor y divulgador de Inteligencia Aritificial: “cualquiera de nuestros terminales móviles es tecnológicamente más sofisticado que los sistemas que llevaron a Neil Armstrong a pisar la luna. En su caso, viajó con el equivalente a una tostadora moderna”.
“En la actualidad gracias a diversos grupos de investigación repartidos por universidades de todo el mundo, las redes neuronales han alcanzado una madurez muy aceptable y se usan en todo tipo de aplicaciones entre las que podemos citar: reconocimiento de patrones, voz y vídeo, Compresión de imágenes. Estudio y predicción de sucesos muy complejos (ej. La bolsa). Aplicaciones de apoyo a la medicina. Todo tipo de aplicaciones que necesiten el análisis de grandes cantidades de datos, etc.”, explica Christian Dawson, invesigador del departamento de Ciencia Computacional de la Universidad de Loughborough (Reino Unido).
El problema de los tres cuerpos
Este problema enunciado ya por Isaac Newton en el siglo XVII está considerado como uno de las cálculos físicos más complejos. Implica calcular en cualquier instante el movimiento de tres cuerpos que interactúen gravitacionalmente, dadas sus posiciones y velocidades iniciales. Imagine saber en tiempo real dónde están tres cuerpos celestes de masa diferente como la Tierra, el Sol y la Luna, teniendo en cuenta que sus gravedades se interfieren mutuamente. A simple vista no parece sencillo de calcular.
Un grupo de investigadores de la Universidad de Edimburgo (Escocia), Cambridge (Reino Unido), Aveiro (Portugal) y Leiden (Países Bajos) acaba de anunciar el desarrollo de una red neuronal profunda que “permite simulaciones rápidas y escalables de sistemas de muchos cuerpos para arrojar luz sobre fenómenos sobresalientes como la formación de sistemas binarios de agujero negros”, dicen en su publicación. Lo que a los físicos les ha llevado años, a esta red le llevaría pocos minutos.
Cuando el hardware encontró al software
La firma Intel presentó en sociedad hace unos meses un ordenador que funciona como el cerebro humano y que es capaz de realizar los cálculos de ocho millones de neuronas (el humano contiene unas 80.000 millones de ellas). Los llamados chips neuromóficos intentan imitar el sistema neuronal biológico ya desde la arquitectura, es decir, desde el diseño del chip. “Utilizan núcleos formados por sinapsis artificiales, dendritas y axones. Cada núcleo neuromórfico consta de 1024 bloques, que a su vez consisten en una sinapsis artificial, dendrita y axón”, explican en su publicación. Toda una red fabricada a nivel de hardware con la que se pretende acelerar aún los algoritmos de programación, o software, de las redes neuronales.
En este sentido, existen también numerosas investigaciones que van más allá de la ciencia computacional y que quieren lograr reproducir el cerebro humano a base de grandes ordenadores, sólo por entender más el complejo cerebro humano. A pesar del susto que puede dar, los neurocientíficos inciden en que los experimentos que han tenido lugar hasta ahora no son capaces, por ejemplo de reproducir la conciencia.
Por mucha ciencia que se desarrolle, de momento los ordenadores son buenos buscando patrones, pero están lejos de ser capaces de otras funciones típicamente humanas como la empatía o la creatividad.