You are on page 1of 11

Explicar acerca de una Red Neuronal Artificial (RNA

)
Fundamentos Biológicos Las Redes Neuronales Artificiales (RNA) son redes en las que existen elementos procesadores de información de cuyas interacciones locales depende el comportamiento del conjunto del sistema. Las RNAs tratan de emular el comportamiento del cerebro humano, del cual se conoce que esta basado en el aprendizaje a partir de la experiencia y extracción de conocimiento genérico a partir de un conjunto de datos. La imitación se realiza de tres formas: 1) Por simulación, mediante un programa para computador. 2) Por emulación, mediante el modelado a través de estructuras de procesamiento con cierta capacidad de cálculo paralelo. 3) Por implementación de hardware de RNAs, mediante la construcción física de sistemas cuya arquitectura se aproxima a la estructura de la red neuronal biológica. Sin embargo, existen diferencias significativas entre el cerebro biológico y el computador (Tabla 1) Tabla 1: Cerebro humano vs. Computador convencional
Característica Velocidad de proceso Estilo de procesamiento Número de procesadores Conexiones Almacenamiento del conocimiento Tolerancia a fallos Tipo de control del proceso Consumo de energía para ejecutar una operación/seg Cerebro humano Entre 10-3 y 10-2 seg Paralelo Entre 1011 y 1014 10,000 por procesador Distribuido Amplio Autoorganizado (democrático) 10-16 Julios Computador Ente 10-8 y 10-9 seg Secuencial (en serie) Pocos Pocas En direcciones fijas (posiciones precisas) Poca o nula Centralizado (dictatorial) 10-6 Julios

Los computadores presentan habitualmente una arquitectura tipo Von Neumann, y emplea un microprocesador muy rápido para ejecutar

operaciones en serie de manera fiable, por otro lado el cerebro humano esta compuesto por millones de procesadores elementales o neuronas interconectadas entre sí formando redes. Mientras que los computadores convencionales realizan un procesamiento en serie, las neuronas biológicas no necesitan ser programadas, si no que aprenden a partir de los estímulos que reciben del entorno y operan siguiendo un esquema masivamente paralelo. El elemento fundamental de los sistemas neuronales biológicos es la neurona (etimológicamente “célula nerviosa”) de forma genérica una neurona esta compuesta de (ver Fig 1): 1) Cuerpo celular o soma 2) Axón, es una rama principal que parte del cuerpo celular 3) Arbol dendrítico, compuesto por dendritas Figura 1. Estructuras típicas de las neuronas biológicas

La conexión entre el axón de una neurona y las dendritas de otra recibe el nombre de sinapsis o sinapsis (etimológicamente “contacto”), y determina la fuerza y tipo de relación entre ellas (Figura 2). El hecho de que unas sinapsis sean excitadoras o inhibidoras, y que tengan una mayor o menor importancia respecto al input final que recibe el soma, se determina biológicamente a través del aprendizaje. No obstante, las

sinapsis son unidireccionales, es decir, la información fluye siempre en un único sentido. La transmisión de información entre neuronas se realiza a través de señales de distinta naturaleza: eléctrica y química; la señal eléctrica prevalece en el interior de la neurona, mientras que la señal química lo hace en el exterior. Figura 2. Sinapsis neuronales

De forma simplista podemos decir que: 1.- Las dendritas constituyen el canal de entrada de información 2.- El soma o cuerpo celular, es el órgano de cómputo. 3.- El axón corresponde al canal de salida, y a la vez envía información a otras neuronas. Cada neurona recibe información de aproximadamente 10,000 neuronas y envía impulsos a cientos de ellas. 4.- Algunas neuronas reciben información directamente del exterior. Existen tres conceptos claves a emular:  Procesamiento paralelo, derivado de que los miles de millones de neuronas que intervienen, por ejemplo en el proceso de ver, están operando en paralelo sobre la totalidad dela imagen. Memoria distribuida, mientras que en un computador la información está en posiciones de memoria bien definidas, en las

redes neuronales biológicas dicha información está distribuida por la sinapsis de la red, existiendo una redundancia en el almacenamiento, para evitar la perdida de información en caso de que una sinapsis resulte dañada. Adaptabilidad al entorno, por medio de la información de las sinapsis. Por medio de esta adaptabilidad se puede aprender de la experiencia y es posible generalizar conceptos a partir de casos particulares.

El modelo estándart de neurona artificial El denominado modelo estándard de neurona artificial según los principios descritos en Rumelhart y McClelland (1986) y McClelland y Rumelhart(1986). Figura 3. Sistema global de proceso de una red neuronal

El elemento fundamental de una red neuronal es la “neurona”, también llamado “nodo”, cuyo modelo se muestra en la Figura 4. En ella, la suma de las n entradas xj de la neurona i, ponderadas con los pesos sinápticos wij, genera la entrada ponderada total o “potencial postsináptico” de la neuroina i. Los pesos sinápticos wij miden la intensidad de la interacción entre las dos neuronas que están conectadas por el enlace. Posteriormente, se aplica una función de activación o transferencia (f) a la diferencia entre “potencial postsináptico” y el umbral θi, obteniéndose la salida de la neurona (yi). Figura 4. Modelo de neurona artificial o Perceptrón simple

Donde

( )

(∑

) es el modelo matemático más elemental.

La función de activación f() se suele considerar determinista, y en la mayor parte de los modelos es monótona creciente y continua. La forma ( ) ( ) de las funciones de activación más empleadas en las redes neuronales artificiales se muestra en la Tabla 2. Donde x representa el postsináptico e y el estado de activación. Tabla 2. Algunas funciones de activación más empleadas

Topología
La topología viene a ser la arquitectura, estructura o patrón de conexionado de una red neuronal. En una red neuronal artificial los nodos se conectan por medio de sinapsis, estando el comportamiento de la red determinado por la estructura de conexiones sinápticas. Estas conexiones sinápticas son direccionales, es decir, la información solamente puede propagarse en un único sentido (desde la neurona presináptica a la pos-sináptica). En general las neuronas se suelen agrupar en unidades estructurales que denominaremos capas. El conjunto de una o más capas constituye la red neuronal. Se distinguen tres tipos de capas: de entrada, de salida y ocultas. Una capa de entrada, también denominada sensorial, está compuesta por neuronas que reciben datos o señales procedentes del entorno. Una capa de salida se compone de neuronas que proporcionan la respuesta de la red neuronal. Una capa oculta no tiene una conexión directa con el entorno, es decir, no se conecta directamente ni a órganos sensores ni a efectores. Este tipo de capa oculta proporciona grados de libertad a la red neuronal gracias a los cuales es capaz de representar más fehacientemente determinadas características del entorno que trata de modelar. Figura 5. Figura 5. Arquitectura unidireccional con tres capas de neuronas: una capa de entrada, una capa oculta y una capa de salida

Se tiene tres tipos de básicos de RNAs, dos de propagación hacia adelante (Monocapa y multicapa) y una recurrente.

1.- Red Monocapa, (Figura 6.1) se corresponde con la red neuronal más sencilla ya que se tiene una capa de neuronas que proyectan las entradas a una capa de neuronas de salida donde se realizan los diferentes cálculos. Figura 6.1. Red Monocapa

2.- Red multicapa (Figura 6.2), es una generalización de la anterior, existiendo un conjunto de capas intermedias entre la capa de entrada y la de salida (capas ocultas). Este tipo de red puede estar total o parcialmente conectada. Figura 6.1. Red Multicapa

3.- Red recurrente (Figura 6.3), este tipo de red se diferencia de las anteriores en la existencia de lazos de realimentación en la red. Estos lazos pueden ser entre neuronas de diferentes capas, neuronas de la misma capa o, entre una misma neurona. Esta estructura la hace especialmente adecuada para estudiar la dinámica de los sistemas no lineales.

Figura 6.1. Red recurrente

Aprendizaje
Este concepto es sustancialmente la modificación de la respuesta producido por la interacción con el medio y de esta forma establecer nuevas respuestas que se adaptan a estímulos externos. En el caso del cerebro estas cualidad se alberga en las sinapsis en el caso de las redes neuronales, el conocimiento esta en los pesos de las conexiones. Por esto, todo mecanismo de aprendizaje demanda modificaciones en dichos pesos, las cuales se pueden hacer a dos niveles: 1.- A través del modelado de las sinapsis; que consiste en modificar los pesos sinápticos siguiendo una cierta regla de aprendizaje, construida normalmente a partir de la optimización de una función de error, que mide la eficacia actual de la operación de la red. Si denominamos wij(t) al peso que conecta la neurona pre-sináptica j con la post-sináptica i en la iteración t, el algoritmo de aprendizaje, en función de las señales que en el instante t llegan procedentes del entorno, proporcionará el valor Δwij(t) que da la modificación que se debe incorporar en dicho peso, el cual quedará actualizado de la forma:Δwij(t+1) = wij(t) + Δwij(t) El proceso de aprendizaje es usualmente iterativo, actualizándose los pesos de la manera anterior, una y otra vez, hasta que la red neuronal alcanza el rendimiento deseado. 2.- A través de la creación o destrucción de neuronas; en el cual se lleva a cabo una modificación de la propia arquitectura de la red. De este modo algunos de los tipos de aprendizaje mas relevantes que se pueden distinguir son:

1.- Aprendizaje supervisado. En el aprendizaje supervisado se presenta a la red un conjunto de patrones, junto con la salida deseada u objetivo, e iterativamente ésta ajusta sus pesos hasta que la salida tiende a ser la deseada, utilizando para ello información detallada del error que se comete en cada paso. De este modo, la red es capaz de estimar relaciones entrada/salida sin necesidad de proponer una cierta forma funcional de partida. Es decir, si E[w] es una función que representa el error esperado de la operación de la red, expresado en función de sus pesos sinápticos w, se pretende estimar una cierta función multivariables f : Rm → Rn a partir de muestras (x;y) tomadas aleatoriamente por medio de la minimización iterativa de E[w] mediante aproximación estocástica (las técnicas de aproximación estocástica estiman valores esperados a partir de cantidades aleatorias observadas). 2.- Aprendizaje no supervisado o auto organizado. El aprendizaje no supervisado se puede describir genéricamente como la estimación de la función densidad de probabilidad p(x) que describe la distribución de patrones x Є Rn (espacio de entrada).En este tipo de aprendizaje se presentan a la red multitud de patrones sin adjuntar la respuesta que deseamos. La red, por medio de la regla de aprendizaje, estima p(x), a partir de lo cual podemos reconocer regularidades en el conjunto de entradas, extraer rasgos o agrupar patrones según su similitud 3.- Aprendizaje híbrido. En este caso existen en la red los dos tipos de aprendizajes básicos, supervisado y auto organizado, normalmente en distintas capas de neuronas. 4.- Aprendizaje reforzado. Se sitúa a medio camino entre al aprendizaje supervisado y el auto organizado. Como en el primero, se emplea información sobre el error cometido, pero en este caso existe una única señal de error, que representa un índice global del rendimiento de la red (solamente le indicamos lo bien o lo mal que está actuando). Como en el caso del no supervisado, no se suministra explícitamente la salida deseada.

Diseño y programación de una RNA
La aproximación basada en las RNA parte de un conjunto de datos de entrada suficientemente significativo y el objetivo es conseguir que la red aprenda automáticamente las propiedades deseadas. En este sentido, el diseño de la red tiene menos que ver con cuestiones como los flujos de datos y la detección de condiciones, y más que ver con cuestiones tales como la selección del modelo de red, la de las variables a incorporar y el preprocesamiento de la información que formará el conjunto de entrenamiento o aprendizaje. Asimismo, el proceso por el que los parámetros de la red se adecuan a la resolución de cada problema no se denomina genéricamente programación sino que se suele denominar entrenamiento neuronal. Por ejemplo en una red que se va a aplicar al diagnóstico de imágenes médicas; durante la fase de entrenamiento el sistema recibe imágenes de tejidos que se sabe son cancerígenos y tejidos que se sabe son sanos, así como las respectivas clasificaciones de dichas imágenes. Si el entrenamiento es el adecuado, una vez concluido, el sistema podrá recibir imágenes de tejidos no clasificados y obtener su clasificación sano/no sano con un buen grado de seguridad. Las variables de entrada pueden ser desde los puntos individuales de cada imagen hasta un vector de características de las mismas que se puedan incorporar al sistema (por ejemplo, procedencia anatómica del tejido de la imagen o la edad del paciente al que se le extrajo la muestra).

Aplicaciones
Las redes neuronales tratan de resolver de forma eficiente problemas que pueden encuadrarse dentro de tres amplios grupos: optimización, reconocimiento y generalización. Estos tres tipos engloban un elevado número de situaciones, lo que hace que el campo de aplicación de las redes neuronales en la gestión empresarial sea muy amplio. En los problemas de optimización, se trata de determinar una solución que sea óptima. Generalmente se aplican redes neuronales realimentadas, como el modelo de Hopfield citado. En la gestión empresarial, son decisiones de optimización encontrar los niveles de

tesorería, de existencias, de producción, construcción de carteras óptimas, etc. En los problemas de reconocimiento, se entrena una red neuronal con inputs como sonidos, números, letras y se procede a la fase de test presentando esos mismos patrones con ruido. Este es uno de los campos más fructíferos en el desarrollo de redes neuronales y casi todos los modelos: perceptrón, redes de Hopfield, mapas de Kohonen, etc, han sido aplicados con mayor o menor éxito. En los problemas de generalización, la red neuronal se entrena con unos inputs y el test se realiza con otros casos diferentes. Problemas típicos de generalización son los de clasificación y predicción.