Redes Neuronales, ¿qué son?.

Introducción a las redes neuronales.

William Khepri
9 min readNov 2, 2018

Las redes neuronales son muy interesantes pero pueden resultar complejas de comprender.

Brain Networks

Empecemos por el principio: ¿Qué es una red neuronal?

Explicado de una forma simplista digamos que es un conjunto de nodos que procesa y envía información entre si. Pero antes hagamos una pequeña introducción histórica.

Origen y desarrollo del concepto de Red Neuronal.

Las primeras investigaciones sobre el tema, datan aproximadamente de principios del siglo XIX pero no fue hasta la década de los años 40 y 50, en el siglo XX, cuando cobró mayor fuerza, gracias al movimiento Conexionista. Este movimiento sostenía la premisa de que el secreto del proceso del aprendizaje y el conocimiento se halla fundamentalmente en axiomas o verdades incuestionables y que el conocimiento es independiente de la estructura que manejen los símbolos, y la representación del conocimiento se hace desde el estrato mas básico de la inteligencia: el cerebro, especialmente en las neuronas y las múltiples conexiones entre ellas.

Éste interés notable por las redes neuronales se vio disminuido en los años 70 debido al surgimiento de autores como Minsky y Papert (1969) los cuales manifestaron las limitaciones del proceso de aprendizaje de las arquitecturas de las redes neuronales.

El principio central del conexionismo es que los fenómenos mentales pueden ser descritos por redes de unidades sencillas y frecuentemente iguales que se interconectan.

Esquema de una red neuronal

En el diagrama, cada nodo circular representa una neurona artificial y cada flecha representa una conexión desde la salida de una neurona a la entrada de otra.

El principal objetivo de una neurona artificial es resolver problemas del mismo modo que lo haría un cerebro humano, aunque las redes neuronales son bastante mas abstractas.

Un aspecto interesante de éstos sistemas es que son impredecibles en su éxito con el auto-aprendizaje. Después del entrenamiento algunos se vuelven expertos en la resolución de un problema y otros en cambio no funcionan tan bien.

Características de las redes neuronales artificiales.

Las ANN (Artificial Neural Networks) están inspiradas en las redes neuronales biológicas del cerebro humano. Están constituidas por elementos que se comportan de forma similar a una neurona biológica en sus funciones mas comunes. Dichos elementos están organizados de una forma similar a como se presentan en el cerebro.

Al margen de “parecerse” al cerebro presentan una serie de características propias del cerebro. Por ejemplo las ANN aprenden de la experiencia, generalizan de ejemplos previos a ejemplos nuevos y abstraen las características principales de una serie de datos.

Aprender: Adquirir el conocimiento de una cosa por medio del estudio, ejercicio o experiencia. Las ANN pueden cambiar su comportamiento en función del entorno. Se les muestra un conjunto de entradas y ellas mismas se ajustan para producir unas salidas consistentes.

Generalizar: extender o ampliar una cosa. Las ANN generalizan automáticamente debido a su propia estructura y naturaleza. Estas redes pueden ofrecer, dentro de un margen, respuestas correctas a entradas que presentan pequeñas variaciones debido a los efectos de ruido o distorsión.

Abstraer: aislar mentalmente o considerar por separado las cualidades de un objeto. Algunas ANN son capaces de abstraer la esencia de un conjunto de entradas que aparentemente no presentan aspectos comunes o relativos.

Estructura básica de una red neuronal.

Analogía con el cerebro.-

Estructura de una neurona.

La neurona es la unidad fundamental el sistema nervioso y en particular del cerebro. Cada neurona es una simple unidad procesadora que recibe y combina señales desde y hacia otras neuronas. Si la combinación de entradas es suficientemente fuerte la salida de la neurona se activa.

El cerebro consiste en uno o varios billones de neuronas densamente interconectadas. El axón (salida) de la neurona se ramifica y está conectada a las dentritas (entradas) de otras neuronas a través de uniones llamas sinapsis. La eficacia de la sinapsis es modificable durante el proceso de aprendizaje de la red.

Redes Neuronales Artificiales.

En las Redes Neuronales Artificiales, ANN, la unidad análoga a la neurona biológica es el elemento procesador, PE (process element). Un elemento procesador tiene varias entradas y las combina, normalmente con una suma básica. La suma de las entradas es modificada por una función de transferencia y el valor de la salida de esta función de transferencia se pasa directamente a la salida del elemento procesador.

La salida del PE se puede conectar a las entradas de otras neuronas artificiales (PE) mediante conexiones ponderadas correspondientes a la eficacia de la sinapsis de las conexiones neuronales.

Diagrama de una Neurona Artificial (PE)

Una red neuronal consiste en un conjunto de unidades elementales PE conectadas de una forma concreta. El interés de las ANN no reside solamente en el modelo del elemento PE sino en las formas en que se conectan estos elementos procesadores. Generalmente los elementos PE están organizados en grupos llamados niveles o capas. Una red típica consiste en una secuencia de capas con conexiones entre capas adyacentes consecutivas.

Existen dos capas con conexiones con el mundo exterior. Una capa de entrada, 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 capan reciben el nombre de capas ocultas.

Arquitectura de una Red Neuronal Simple.

Historia de la computación neuronal.

En 1943, el neurobiólogo Warren McCulloch, y el estadístico Walter Pitss, publicaron el artículo “A logical calculus of Ideas Inminent in Nervous Activity”. Este artículo constituyó la base y el iniio del desarrollo en diferentes campos como son los Ordenadores Digitales (John Von Neuman), la Inteligencia Artificial (Marvin Minsky con los Sistemas Expertos) y el funcionamiento del ojo (Frank Rosenblatt con la famosa red llamada Perceptrón).

En 1956, los pioneros de la Inteligencia Artificial, Minsky, McCarthy, Rochester, Shanon, organizaron las primera conferencia de Inteligencia Artificial que fue patrocinada por la Fundación Rochester. Esta conferencia se celebró en el verano de 1956 en la localdad inglesa de Darmouth y en muchos libros se hace referencia al verano de este año como la primera toma de contacto seria con las redes neuronales artificiales.

Nathaural Rochester del equipo de investigación de IBM presentó el modelo de una red neuronal que él mismo realizó y puede considerarse como el primer software de simulación de redes neuronales artificiales.

En 1957, Frank Rosenblatt publicó el mayor trabajo de investigación en computación neuronal realizado hasta esas fechas. Su trabajo consistía en el desarrollo de un elemento llamado “Perceptrón”.

El perceptrón es un sistema clasificador de patrones que puede identificar patrones geométricos y abstractos. El primer perceptrón era capaz de aprender algo y era robusto, de forma que su comportamiento variaba sólo si resultaban dañados los componentes del sistema. Además presentaba la característica de ser flexible y comportarse correctamente después de que algunas celdas fueran destruidas.

El perceptrón fue originalmente diseñado para el reconocimiento óptico de patrones. Una rejilla de 400 fotocélulas, correspondientes a las neuronas de la retina sensibles a la luz, recibe el estímulo óptico. Estas fotocélulas están conectadas a elementos asociativos que recogen los impulsos eléctricos emitidos desde las fotocélulas. Las conexiones entre los elementos asociativos y las fotocélulas se realizan de forma aleatoria.

Si las células presentan un valor de entrada superior a un umbral predeterminado entonces el elemento asociativo produce una salida. En la figura se muestra la estructura de la red perceptrón.

Perceptón de 5 unidades.

El peceptrón presenta algunas limitaciones debido a que se trataba de un dispositivo en desarrollo. La mayor limitación la reflejan Minsky y Papert años mas tarde, y ponían de manifiesto la incapacidad del perceptrón en resolver algunas tareas o problemas sencillos como por ejemplo la función lógica OR exclusivo.

Uno de los mayores cambios realizados en el perceptrón de Rossenblant a lo largo de la década de los 60 ha sido el desarrollo de sistemas multicapa que pueden aprender y categorizar datos complejos.

En 1959, Bernard Widrow en Standford desarrolló un elemento adaptativo lineal llamado “Adaline” (Adaptative Linear Neuron). La Adaline y una versión de dos capas, llamada “Madaline”, fueron utilizadas en distintas aplicaciones como reconocimiento de voz y caracteres, predicción del tiempo, control adaptativo y sobre todo en el desarrollo de filtros adaptativos que eliminen los ecos de las líneas telefónicas.

A mediados de los 60, Minsky y Papert pertenecientes al Laboratorio de Investigación de Electrónica de MIT(Massachussets Institute Technology) comenzaron un trabajo profundo de crítica al perceptrón. El resultado de este trabajo, el libro Perceptrons, era un análisis matemático del concepto de perceptón. La conclusión de dicho trabajo, que se transmitió a la comunidad científica del mundo entero, es que el Perceptrón y la Computación Neuronal no eran temas interesantes que estudiar y desarrollar. A partir de ese momento descendieron drásticamente las inversiones en la investigación de la computación neuronal.

Uno de los pocos investigadores que continuaron con su trabajo en la computación neuronal tras la publicación del libro Perceptrons fue James Anderson. Su trabajo se basó en el desarrollo de un modelo lineal que consiste en un modelo asociativo distribuido basado en el principio de Hebb (las conexiones son reforzadas cada vez que son activadas las neuronas). Una versión extendida de este modelo lineal es el llamado modelo Brain-State-in-a-Box(BSB).

Teuvo Kohonen, de la Universidad de Helsinki, es uno de los mayores impulsores de la computación neuronal de la década de los 70. De su trabajo de investigación destacan dos aportaciones: la primera es la descripción y análisis de una clase grande de reglas adaptativas, reglas en las que las conexiones ponderadas se modifican de una forma dependiente de los valores anteriores y posteriores de las sinapsis. Y la segunda aportación es el principio de aprendizaje competitivo en el que los elementos compiten por responder a un estímulo de entrada, y el ganador se adapta él mismo para responder con mayor efecto al estímulo.

Otro investigador que continuó con su trabajo en el mundo de la computación neuronal a pesar del mal presagio que indicaron Minsky y Papert fue Stephen Grossberg. Grossberg estaba especialmente interesado en la utilización de datos de la neurología para construir modelos de computación neuronal. La mayoría de sus reglas y postulados derivaron de estudio fisiológicos. Su trabajo ha constituido un gran impulso en la investigación del diseño y construcción de modelos neuronales. Una de estas clases de redes es la Adaptative Resonance Theory(ART).

En 1982 John Hopfield con la publicación del artículo Hopfield Model o Crossbar Associative Network, junto con la invención del algorito Backpropagation(propagación hacia atrás) se consiguió devolver el interés y la confianza en el fascinante campo de la computación neuronal tras dos décadas de casi absoluta inactividad y desinterés.

Hopfield presenta un sistema de computación neuronal consistente en elementos procesadores interconectados que buscan y tienden a un mínimo de energía. Esta red con este tipo de función de energía y mecanismo de respuesta no es mas que un caso de la clase genérica de redes que consideró Grossberg.

Investigación a dia de hoy.

Existen hoy en día muchos grupos con sede en diferentes universidades de todo el mundo que están realizando trabajos de investigación en el área de las redes neuronales artificiales. Cada grupo tiene diferente énfasis y motivación con los neurólogos, psicólogos del nuevo conocimiento, físicos, programadores y matemáticos. Todos ellos ofrecen nuevos puntos de vista e intuiciones en esta área de la técnica.

Grossberg continúa trabajando en compañía de Carpenter en la Universidad de Boston, mientras Teuvo Kohonen está en la Universidad de Helsinki. Uno de los mayores grupos de investigación de los últimos años ha sido el grupo PDP(Parallel Distributed Processing) formado por Rumelhart, McClelland y Hinton.

Rumelhalrt de la Universidad de Standford es uno de los principales impulsores de la red más utilizada en la mayoría de las aplicaciones actuales, la famos red neuronal Backpropagation. En la Universidad de Carnegie-Mellon, el grupo de investigación a la cabeza con McClelland destaca por el estudio de las posibles aplicaciones de la Backpropagation. Y en la Universidad de Toronto, Hinton y Sejnowski han desarrollado una máquina llamada Boltzman que consiste en la red de Hopfield con dos modificaciones significativas.

Bart Kosko ha diseñado una red llamada BAM (Bidirectional Associate Memory) basado en la red de Grossberg. Por último indicar la existencia de grande grupos de investigación como los de California Berkeley y University of California San Diego.

Conviene no olvidar el esfuerzo económico y técnico que están realizando las empresas privadas tanto en USA como en Japón y en la Comunidad Económica Europea. Como botón de muestra de las inversiones de estos países baste conocer que sólo en USA se gasta más de 100 millones de dólares al año.

--

--

William Khepri

Desarrollador de Software y Autodidacta de la seguridad informática. Escribo sobre seguridad informática y tecnología.