sábado, 22 de mayo de 2010

Redes neuronales artificiales (RNA). Concepto y evolución histórica.

1.1. Redes neuronales artificiales (RNA). Concepto y evolución histórica.



Las Redes Neuronales Artificiales (RNA) o sistemas conexionistas son sistemas de
procesamiento de la información cuya estructura y funcionamiento están inspirados en
las redes neuronales biológicas. Consisten en un conjunto de elementos simples de
procesamiento llamados nodos o neuronas conectadas entre sí por conexiones que
tienen un valor numérico modificable llamado peso.
La actividad que una unidad de procesamiento o neurona artificial realiza en un sistema
de este tipo es simple. Normalmente, consiste en sumar los valores de las entradas
(inputs) que recibe de otras unidades conectadas a ella, comparar esta cantidad con el
valor umbral y, si lo iguala o supera, enviar activación o salida (output) a las unidades a
las que esté conectada. Tanto las entradas que la unidad recibe como las salidas que
envía dependen a su vez del peso o fuerza de las conexiones por las cuales se realizan
dichas operaciones.
La arquitectura de procesamiento de la información de los sistemas de RNA se
distingue de la arquitectura convencional Von Neumann (fundamento de la mayor parte
de los ordenadores existentes) en una serie de aspectos fundamentales.
En primer lugar, el procesamiento de la información de un modelo Von Neumann es
secuencial, esto es, una unidad o procesador central se encarga de realizar una tras otra
determinadas transformaciones de expresiones binarias almacenadas en la memoria del
ordenador. Estas transformaciones son realizadas de acuerdo con una serie de
instrucciones (algoritmo, programa), también almacenadas en la memoria. La operación
básica de un sistema de este tipo sería: localización de una expresión en la memoria,
traslado de dicha expresión a la unidad de procesamiento, transformación de la
expresión y colocación de la nueva expresión en otro compartimento de la memoria. Por
su parte, el procesamiento en un sistema conexionista no es secuencial sino paralelo,
esto es, muchas unidades de procesamiento pueden estar funcionando simultáneamente.
En segundo lugar, un rasgo fundamental de una arquitectura Von Neumann es el
carácter discreto de su memoria, que está compuesta por un gran número de ubicaciones
físicas o compartimentos independientes donde se almacenan en código digital tanto las
instrucciones (operaciones a realizar) como los datos o números que el ordenador va a
utilizar en sus operaciones. En redes neuronales, en cambio, la información que posee
un sistema no está localizada o almacenada en compartimentos discretos, sino que está
distribuida a lo largo de los parámetros del sistema. Los parámetros que definen el
“conocimiento” que una red neuronal posee en un momento dado son sus conexiones y
el estado de activación de sus unidades de procesamiento. En un sistema conexionista
las expresiones lingüísticas o simbólicas no existen como tales. Serían el resultado
emergente de la interacción de muchas unidades en un nivel subsimbólico.
Un sistema de procesamiento distribuido en paralelo presenta una serie de ventajas
frente a un modelo convencional Von Neumann. Por un lado, tenemos la resistencia al
funcionamiento defectuoso de una pequeña parte del sistema. En un modelo
conexionista, cada unidad lleva a cabo una computación simple. La fiabilidad de la
computación total que el sistema realiza depende de la interacción paralela de un gran
número de unidades y, consecuentemente, en la mayoría de casos, el sistema puede
continuar su funcionamiento normal, aunque una pequeña parte del mismo haya
resultado dañada. En los sistemas convencionales, en cambio, un defecto en un solo
paso de una larga cadena de operaciones puede echar a perder la totalidad de la
computación. Por otro lado, un modelo conexionista es capaz, en ciertas circunstancias,
de reconocer un objeto a pesar de que sólo se le presente como entrada una parte del
mismo, o a pesar de que la imagen del objeto esté distorsionada. En cambio, en un
sistema convencional el objeto presentado debe corresponderse con una determinada
información almacenada en memoria, de lo contrario, no es capaz de reconocer el
objeto.
Por último, un sistema de RNA no se programa para realizar una determinada tarea a
diferencia de una arquitectura Von Neumann, sino que es “entrenado” a tal efecto.
Consideremos un ejemplo típico de aprendizaje o formación de conceptos en la
estructura de una RNA. Supongamos que presentamos a la red dos tipos de objetos, por
ejemplo la letra A y la letra E con distintos tamaños y en distintas posiciones. En el
aprendizaje de la red neuronal se consigue, tras un número elevado de presentaciones de
los diferentes objetos y consiguiente ajuste o modificación de las conexiones del
sistema, que la red distinga entre As y Es, sea cual fuere su tamaño y posición en la
pantalla. Para ello, podríamos entrenar la red neuronal para que proporcionase como
salida el valor 1 cada vez que se presente una A y el valor 0 en caso de que se presente

una E. El aprendizaje en una RNA es un proceso de ajuste o modificación de los valores
o pesos de las conexiones, “hasta que la conducta del sistema acaba por reproducir las
propiedades estadísticas de sus entradas” (Fodor y Pylyshyn, 1988, p. 30). En nuestro
ejemplo, podríamos decir que la red ha “aprendido” el concepto de letra A y letra E sin
poseer reglas concretas para el reconocimiento de dichas figuras, sin poseer un
programa explícito de instrucciones para su reconocimiento.
Por tanto, para entrenar a un sistema conexionista en la realización de una determinada
clasificación es necesario realizar dos operaciones. Primero, hay que seleccionar una
muestra representativa con respecto a dicha clasificación, de pares de entradas y sus
correspondientes salidas. Segundo, es necesario un algoritmo o regla para ajustar los
valores modificables de las conexiones entre las unidades en un proceso iterativo de
presentación de entradas, observación de salidas y modificación de las conexiones.
Las RNA constituyen una línea de investigación en Inteligencia Artificial (IA), la cual
tiene como objetivo primario la construcción de máquinas inteligentes (Grimson y Patil,
1987). Los orígenes de la IA hay que buscarlos en el movimiento científico de la
cibernética de los años cuarenta y cincuenta. Este movimiento científico se articuló en
torno a la idea de que el funcionamiento de muchos sistemas, vivos o artificiales, puede
ser captado mejor por modelos basados en la transferencia de información que por
modelos basados en la transferencia de energía. La cibernética se propuso estudiar los
elementos comunes entre el funcionamiento de máquinas automáticas y el del sistema
nervioso humano (los procesos de control y comunicación en el animal y en la
máquina). Este problema fue abordado en un esfuerzo interdisciplinar, en el que
intervinieron investigadores procedentes de áreas como matemáticas, ingeniería
electrónica, fisiología y neurociencia, lógica formal, ciencias de la computación y
psicología.
Una importante característica de la cibernética fue la proliferación de distintas
perspectivas en torno al problema de las relaciones entre cerebro y máquina. En la
segunda mitad de la década de los cincuenta comenzaron a destacar dos de entre estas
perspectivas: la IA basada en el procesamiento simbólico, y la investigación en redes
neuronales.
La IA simbólica se basó en la expansión del uso de los ordenadores desde el área de
aplicación del cálculo numérico a tareas simbólicas, esto es, al procesamiento de
elementos que representan palabras, proposiciones u otras entidades conceptuales. Estos
sistemas de IA se basan en las expresiones simbólicas que contienen y en la posibilidad
de manipular y transformar dichas expresiones de una manera sensible a la estructura
lógico-sintáctica de las mismas. Las estructuras representacionales que contiene un
sistema de este tipo son manipuladas y transformadas de acuerdo con ciertas reglas y
estrategias (algoritmos y reglas heurísticas), y la expresión resultante es la solución de
un determinado problema. En un sistema de este tipo, el procesamiento de la
información tiene lugar en el nivel simbólico o representacional y no en el nivel
neurobiológico. Los sistemas de IA simbólica simulan procesos mentales y cognitivos
humanos por medio de programas ejecutados por un ordenador del tipo Von Neumann.
Entre los investigadores más importantes de esta primera época de investigación en este
paradigma se puede destacar a John McCarthy, Allen Newell, Herbert Simon y Marvin
Minsky (Olazarán, 1993).
Paralelamente, en la segunda mitad de los años 50, algunos investigadores comenzaron
a desarrollar una perspectiva diferente en la construcción de máquinas inteligentes: la
perspectiva de las RNA o sistemas conexionistas. Esta perspectiva no perseguía la
modelación de redes neuronales fisiológicas, sino la construcción de máquinas
inteligentes empleando arquitecturas computacionales de cierta semejanza con las redes
neuronales del cerebro. Como antecedentes más directos a este grupo de investigadores,
cabe destacar las aportaciones, por un lado, de Warren McCulloch y Walter Pitts y, por
otro lado, de Donald Hebb.
McCulloch y Pitts (1943) presentaron la estructura y funcionamiento de la unidad
elemental de procesamiento de una red conexionista. La neurona de McCulloch-Pitts
(ver figura 1), como actualmente se conoce, tiene un funcionamiento muy sencillo: si la
suma de entradas excitatorias supera el umbral de activación de la unidad, y además no
hay una entrada inhibitoria, la neurona se activa y emite respuesta (representada por el
valor 1); en caso contrario, la neurona no se activa (valor 0 que indica la ausencia de
respuesta).
Combinando varias neuronas de este tipo con los adecuados umbrales de respuesta, se
puede construir una red que compute cualquier función lógica finita.
Hebb (1949) postuló un sencillo pero potente mecanismo de regulación de las
conexiones neuronales, que constituyó la base de las reglas de aprendizaje que más
tarde se desarrollarían. La regla de Hebb, en su versión más elemental, se expresa como
sigue: “Cuando un axón de una célula A está bastante cerca para excitar a una célula B
y repetida o persistentemente dispara, entonces se produce algún proceso de desarrollo
o cambio metabólico de tal forma que la eficiencia del disparo de A hacia B aumenta”
(Hebb, 1949, p. 42). La propuesta de Hebb es de especial relevancia porque indica que
la información necesaria para modificar el valor de una conexión se encuentra
localmente disponible a ambos lados de la conexión. En la actualidad existe un gran
número de redes neuronales cuyo aprendizaje está basado en la regla de Hebb como las
conocidas redes de Hopfield (1982) y algunos modelos de red propuestos por Kohonen
(1977).
La evolución de la investigación en redes neuronales desde los años 50 a nuestros días
ha estado condicionada por dos grandes acontecimientos: el abandono de esta línea de
investigación en la segunda mitad de los 60 debido a las limitaciones observadas en la
red Perceptrón simple y la emergencia del conexionismo en la segunda mitad de los 80
como paradigma aceptado en IA, gracias, entre otros avances, a la aparición de un
algoritmo, denominado backpropagation error (propagación del error hacia atrás) o
simplemente backpropagation, que permite modificar las conexiones de arquitecturas
multiestrato.
En el primer período de la investigación en redes neuronales, entre mediados de los 50 y
mediados de los 60, una cantidad importante de científicos, ingenieros y grupos de
investigación dedicaron importantes esfuerzos a la construcción y experimentación de

estos sistemas. Entre los grupos más importantes se podrían destacar el grupo de F.
Rosenblatt en la Universidad de Cornell (Nueva York), el grupo de C. Rosen en el
Instituto de Investigación de Stanford (California), y el grupo de B. Widrow en el
Departamento de Ingeniería Electrónica de la Universidad de Stanford.
En este período se produjeron importantes contribuciones científicas. Una de las más
importantes fue el trabajo de los grupos de Rosenblatt y Widrow con sistemas
conexionistas de único estrato o capa (RNA que solo tienen un estrato de conexiones
modificables). La red diseñada por Rosenblatt (1958), denominada Perceptrón, es un
sistema de este tipo (ver figura 2). A pesar de tener dos estratos de conexiones, sólo uno
de ellos está compuesto de conexiones modificables. La capa de entrada o retina
consiste en un conjunto de unidades de entrada binarias conectadas por conexiones con
valor fijo con las unidades de la capa de asociación o de predicados. La última capa es
la de respuesta o decisión, cuya única unidad, con salida binaria, es la que tiene
conexiones modificables con los predicados de la capa anterior.
Figura 2. El Perceptrón de Rosenblatt.
El teorema de convergencia de la regla de aprendizaje del Perceptrón desarrollado por
Rosenblatt establecía que, si los parámetros o pesos del sistema eran capaces de realizar
una determinada clasificación, el sistema acabaría aprendiéndola en un número finito de

pasos, si se modificaban las conexiones de acuerdo con dicha regla de aprendizaje
(Fausett, 1994). Más concretamente, la regla de aprendizaje del Perceptrón es un
algoritmo de los denominados supervisado por corrección de errores y consiste en ir
ajustando de forma iterativa los pesos en proporción a la diferencia existente entre la
salida actual de la red y la salida deseada, con el objetivo de minimizar el error actual de
la red.

1 comentario:

  1. Casino Hotel & Racetrack - Mapyro
    Find the 대전광역 출장샵 best casino 공주 출장샵 hotels 군포 출장안마 in 대전광역 출장마사지 San Diego. Try your luck 여수 출장안마 at the world's best casino hotel, racebook, gaming and entertainment.

    ResponderEliminar