Beruflich Dokumente
Kultur Dokumente
Dis eador
+HUUDPLHQWDV HVWiQGDU
6LVWHPD KtEULGR
a)
Figura .1.
b)
1. Sistemas de procesado de la informacin. Los tres niveles de Marr. Problemas mal definidos. Sistemas de aprendizaje.
En los sistemas de procesado de la informacin, las entradas deben ser tratadas de manera que produzcan a la salida resultados tiles de acuerdo con el problema que se est tratando de resolver (Fig. 2). Para construir estos sistemas nos podemos basar en algn paradigma vlido para una amplia gama de problemas de diseo, como por ejemplo el conocido anlisis-sntesis-evaluacin (Brama, 1997), o por el contrario utilizar algn paradigma pensado ms especficamente para el diseo de este tipo de sistemas, como son los tres niveles de Marr (Marr, 1977) (cap. 1; Marr, 1982). Este paradigma es del tipo top-down en donde el diseo se divide en tres partes bien diferenciadas (Fig. 3): 1. Formulacin de una teora computacional que describa el problema de informacin de procesado que se pretende resolver 2. Definicin de un algoritmo que acta sobre un espacio de entrada y salida particulares que implemente la teora computacional definida 3. Construccin del algoritmo en una mquina fsica (software y/o hardware)
Figura 2. Un ejemplo de sistema de procesado de la informacin. En este sistema la entrada que es una imagen binaria que contiene texto manuscrito debe de ser procesada de manera que a la salida el sistema produzca los caracteres ASCII correspondientes a dicho texto.
Qu?
Teora Computacional
Cmo?
Construccin Fsica
H&S
Figura 3. Proceso de diseo en un sistema de procesado de informacin basado en los tres niveles de Marr.
Pero, qu sucede si la teora que permite describir el problema a resolver no est completamente desarrollada? Esto sucede con frecuencia en problemas de inteligencia artificial ya que estos son problemas especialmente mal definidos debido a que pretenden emular capacidades cognitivas humanas. Es evidente que ya no podemos disear de manera tan sistemtica dispositivos que traten con este tipo de problemas puesto que siempre habr lagunas tericas que nos impidan escribir de manera directa los algoritmos necesarios. En estas situaciones, es cuando los sistemas de aprendizaje entran a tomar protagonismo. Si no podemos desarrollar una teora sobre la totalidad (o parte) de nuestro problema de ingeniera que nos permita construir un modelo algortmico adecuado, podemos construirlo (el modelo) con la ayuda de un aprendiz artificial. Este sistema puede extraer del conocimiento de que se disponga del problema, un modelo que intente dar cuenta de su estructura computacional, por ejemplo, en forma de medidas o bien de reglas que expertos que trabajan en el problema determinen. De esta manera es posible construir sistemas de procesado de la informacin que histricamente han sido difciles de constituir. Aunque como ya se ha visto, esto ser nicamente posible en aquellos problemas en los que se disponga de un cierto conocimiento emprico (medidas, reglas). El sistema de aprendizaje necesita este conocimiento emprico para construir de forma automtica el algoritmo. Ello resulta difcil o imposible de determinar de forma manual. As en problemas de difcil modelizacin y en los que se dispone de un conocimiento emprico de los mismos, es todava posible utilizar como paradigma de diseo los tres niveles de Marr si insertamos un aprendiz artificial que haga el papel de implementador automtico de algoritmos (Fig. 4). Es posible, sin embargo, que la solucin del aprendiz deba ser revisada y posiblemente corregida a travs de un nuevo anlisis del problema que ahora es ms factible ya que se tiene un sistema fsico en funcionamiento, y que describe mejor el problema a resolver. De esta manera el diseo en este tipo de sistemas es del tipo meet-in-the-middle (top-down y bottom-up a la vez).
Tecnologa de aprendizaje
Conocimiento terico incompleto
Qu?
Aprendiz
Construccin fsica.
H&S
matemticos. Ante todo las ANN geometrizan la computacin. Estos sistemas utilizan representaciones internas numricas para tratar con los estmulos que reciben y producir sus respuestas, construyendo transformaciones entre diferentes espacios multidimensionales numricos para poder asociar de manera adecuada los estmulos de entrada con respuestas adecuadas en el espacio de salida. As si asociamos a cada espacio multidimensional una norma, la neurocomputacin puede entenderse dentro de un marco vectorial. Los nmeros se transforman entonces en vectores y el comportamiento interno (o a nivel microscpico) de las ANN se puede interpretar geomtricamente (Fig. 6).
Arquitectura
.5 .5 .8
5.2
.9
-.8
1 .2
-2.5
.5
HQWUDGD QHXURQD
FRQH[LyQ VDOLGD
Algoritmo de aprendizaje
A nivel macroscpico estos sistemas se pueden considerar en la mayora de los casos como procesadores estadsticos de la informacin (Fig. 7). Es decir, suelen inferir (habitualmente de manera no paramtrica) a partir de los datos, determinadas estadsticas pertenecientes a los vectores aleatorios que conforman los espacios de entrada y salida. Cabe decir que la computacin en trminos estadsticos resulta un marco adecuado, puesto que para construir su solucin, estos sistemas deben descubrir las regularidades o relaciones existentes entre los datos, que habitualmente muestran un cierto grado de ambigedad. As nos podemos encontrar que cada vez con mayor frecuencia las ANN son presentadas y estudiadas en un marco eminentemente estadstico (Bishop, 1995)(Jordan, 1996)(Bishop, 1996)(Ripley, 1997), aunque cabe decir que este tratamiento no es novedoso (Nilsson, 1965) (Duda, 1973).
`1(x) `M(x)
M i=1
w1
g(x)
wM
+
wM+1
(g( )) x
f(x)
H
X
`
g>0
g>0
v
V
g
+ a b
g(x)= wi i (x)+wM+1
2.1. Elementos.
Los elementos de los que constan las ANN son los siguientes (Rumelhart, 1986): unidades de procesado (neuronas) que siguen un modelo de activacin determinado (modelo neuronal) una forma de conexin entre las unidades y una regla de propagacin a travs de esas unidades (arquitectura de la red) una regla de aprendizaje (algoritmo de aprendizaje) que modifique a partir de la experiencia las conexiones entre unidades y/o los parmetros ajustables de las neuronas una conexin de la red a travs de un conjunto de entradas y salidas con el entorno dentro del cual debe operar
2.1.1. Modelos neuronales. Una neurona o nodo es el elemento de procesado de informacin bsico dentro de una red neuronal. En general existen muchos modelos neuronales diferentes ya que en la actualidad se ha desarrollado un amplio trabajo en este campo. No obstante hay algunos modelos que son los ms conocidos ya que son los ms utilizados para una gran parte de aplicaciones. De entre estos destacamos los siguientes: 7
... ...
dH
g v
( )=
d
H
(v )
w
si v
w + w
T
(v )
H
M +1
0 < 0
si v
w + w
M +1
. .
. . .
. . .
^ P(Ci/X)
^ P(j/X)
^ P(Ci/J)
. .
`1(x) `M(x)
M
w1
g (x ) = w (x ) + w
i i i =1
...
...
wM
M +1
g(x)
+
wM+1
(g(x))
f(x)
. .
w, A
g(x) (g(x))
f(x)
2.1.2. Arquitecturas de red. Una vez elegido el tipo de neuronas o nodos, es necesario adoptar una topologa determinada en el conexionado entre las neuronas y una forma de propagar las seales a travs de la red resultante. Una manera habitual de estructurar las neuronas es organizarlas en capas interconectadas entre ellas. Puesto que suelen implementarse de manera digital, su activacin es sncrona es decir se propagan a la vez todas las seales de una capa a la siguiente y as sucesivamente. En este marco nos podemos encontrar al menos con cuatro tipos de arquitectura de red: 8
1. Red feedforward de una sola capa. El tipo de red ms simple, organizada en forma de capas, es aquella que tiene una nica capa de neuronas (Fig.10). En ella hay una capa de entrada formada por nodos de entrada que se proyecta a la capa de salida, pero no al revs. Es decir la red proyecta sus conexiones nicamente de entrada hacia salida.
. .
. . .
. . .
f(X)
2. Red feedforward de ms de una capa. En este tipo de redes feedforward hay una o ms capas ocultas (Fig. 11). La funcin de las neuronas ocultas es intervenir entre la seal de entrada externa y la red de salida proporcionando al sistema un mayor poder computacional. Estas redes pueden estar totalmente conectadas, es decir todo nodo de una capa se conecta a todo nodo de la siguiente capa, o no.
X . .
... . . . . . . . . . . . .
Capa de Salida
f(X)
3. Red recurrente. Se distingue de la red feedforward debido a que tiene al menos un bucle de retroalimentacin, es decir alguna salida de algn nodo esta conectado hacia atrs (Fig.12). 4. Red winner-takes-all. En estas redes de una nica capa existen conexiones laterales de inhibicin que hacen que para cada patrn de entrada se active una nica neurona (Fig.13).
. X . . .
. . . . .
. . .
...
. . .
f(X)
z 1
z 1
X . .
. . .
. f(X) . .
Capa de Salida
Capa de entrada
Inhibicin lateral
2.2. Aprendizaje.
Una de las capacidades que hacen atractivas a las ANN es su capacidad para aprender de su entorno y mejorar su respuesta de acuerdo con alguna medida predefinida a travs de un proceso de aprendizaje, que se da a lo largo del tiempo. Aprender significa bsicamente que la red sufre un cambio de parmetros. Mientras dura el aprendizaje los parmetros libres de la red se adaptan a travs de un proceso de estimulacin del entorno en el que la red est inmersa (p.45; Haykin, 1994). El objetivo de dicho cambio es mejorar su respuesta al entorno que se cuantificar con la medida de que el algoritmo de aprendizaje dispone. 2.2.1. Paradigmas de aprendizaje. Existen diferentes tipos de aprendizaje que identifican diferentes maneras de relacionarse con el entorno. Destacamos las tres clases bsicas de paradigmas de aprendizaje: Aprendizaje supervisado. El elemento esencial del aprendizaje supervisado es que se dispone de un maestro externo. En trminos prcticos esto significa que el sistema tiene un conocimiento del entorno, representado a travs de un conjunto de ejemplos de entrada y salida {(xi, yi)}. El objetivo del proceso de aprendizaje es la construccin de una solucin con las muestras extradas del entorno que refleje su estructura computacional. As el algoritmo de 10
aprendizaje ir pasando repetidas veces el conjunto de muestras por la red de manera que esta consiga reproducir para cada muestra de entrada xi, la deseada respuesta yi. Para ello se dispondr de una funcin que evale en cada instante lo bien o lo mal que la red consigue reproducir la salida deseada, adaptndose de forma que cada vez la red reproduzca mejor el conjunto de muestras (Fig.14).
Xi . .
... . . . . . . . . . . . .
f(Xi)
yi
+ +
datos
Algoritmo de aprendizaje
ei
T={(x i ,y i )}
i=1..N
Aprendizaje de refuerzo. En un aprendizaje en lnea de una funcin a travs de un proceso de prueba y error diseado para maximizar una medida de la respuesta del tipo escalar denominada seal de refuerzo. A diferencia del aprendizaje supervisado, aqu se dispone de {(xi)} y de un crtico que nos proporciona en cada instante la seal de refuerzo ri. As el sistema deber ejecutar una accin sobre el entorno para una entrada xi y esperar la respuesta del crtico en forma de la seal ri que le indicar si el sistema est ejecutando la accin correcta o no. Entonces el sistema nicamente se adaptar si no est respondiendo de manera correcta al estmulo de entrada (Fig.15).
11
Xi . .
... . . . . . . . . . . . .
f(Xi)
Algoritmo de
datos
aprendizaje
i
ei
Crtico
xi
T={(x )}
i=1..N
Aprendizaje no supervisado o auto-organizado. En el aprendizaje auto-organizado no existe ningn maestro ni seal de refuerzo. Unicamente se dispone de un conjunto de muestras {(xi)} pertenecientes al espacio de entrada. El sistema se adapta a estas muestras de acuerdo con una medida que representa la calidad de representacin de la red del espacio de entrada (Fig.16).
Xi . .
... . . . . . . . . . . . .
f(Xi)
datos
Algoritmo de aprendizaje
T={(x i )}
i=1..N
2.2.2. Tareas a aprender. La eleccin de un paradigma de aprendizaje viene bastante condicionada por el tipo de tarea que debe la red neuronal aprender. Algunas de estas tareas o problemas a resolver pueden ser las que 12
siguen: 1. Aproximacin de funciones. Dada una funcin no lineal desconocida y=f(x) representada por un conjunto de muestras {(xi,yi)}, el problema consiste un construir un estimador de f. 2. Asociacin. Existen dos formas de asociacin: heteroasociacin y autoasociacin. En el primer tipo se pide que la red asocie un conjunto de pares entrada-salida {(xi,yi)}, mientras que en la segunda que sea capaz de recuperar a la salida versiones ruidosas del conjunto de muestras {(xi)} que se le presenten. 3. Clasificacin de patrones. En los procesos de clasificacin, los patrones (o vectores) de entrada deben de asignarse a un nmero fijo de clases. Se dispone de un conjunto de patrones etiquetados (se indica a que clase pertenecen) {(xi,equiqueta de clasei)} y se pide la construccin, a partir de dichos datos, de un clasificador que asigne correctamente futuros patrones de entrada a la clase que pertenecen con la mnima probabilidad de error posible. 4. Control. En este caso existe una planta a controlar que puede ser definida como {x(t),y(t)} donde x(t) es el control de entrada e y(t) es la salida de la planta resultante. El objetivo es construir un controlador de esta planta.
resulta insatisfactorio (y algunas veces es imposible). 4. Tolerancia a fallos. Habitualmente podemos encontrar que en muchas redes neuronales la degradacin de su respuesta frente a condiciones adversas (por ejemplo en caso de que algunas conexiones o neuronas fallen) no es abrupta sino suave. Es decir a medida que van fallando ms partes la respuesta se ha degradando poco a poco. 5. Paralelismo masivo. Debido a la naturaleza masivamente paralela de los modelos neuronales es posible acelerar considerablemente el clculo que deben realizar. Adems esta misma caracterstica les hace candidatos ideales para ser implementados utilizando tecnologa VLSI.
Referencias
(Anderson, 1995) Anderson, James A. "An Introduction to Neural Networks", MIT Press, 1995 (Bishop, 1995) Bishop, Christopher M. "Neural Networks for Pattern Recognition", Oxford University Press, 1995 (Bishop, 1996) Bishop, Christopher M. "Theoretical Foundations of Neural Networks", Technical Report: NCRG/96/024, Aston University, also as Physics Computing '96, Krakow, Poland, 1996 (Brama, 1997) Brama, Dan and Maimon, Oded. "The Design Process: Properties, Paradigms, and Structure", IEEE Transactions on Systems, Man, and Cybernetics- Part A: Systems and Humans. Vol. 27, No.2, p. 146-66, March 1997 (Duda, 1973) Duda, R.O. & Hart, P.E. "Pattern Classification and Scene Analysis", WileyInterscience, 1973 (Haykin, 1994) Haykin, Simon. "Neural Networks. A Comprensive Foundation", IEEE Press, 1994 (Jordan, 1996) Jordan, Michael I. & Bishop, Christopher M. "Neural Networks", A.I. Memo No. 1562, Artificial Intelligence Laboratory, MIT, 1996 (Kohonen, 1987) Kohonen, Teuvo. "Adaptive, associative, and self-organizing functions in neural computing", Applied Optics, Vol. 26, No. 23, 1 December 1987 (Marr, 1977) Marr, David. "Artificial Intelligence- A Personal View", Artificial Intelligence, Vol. 9, p. 37-48, 1977 (Marr, 1982) Marr, David. "Vision- A Computational Investigation into the Human Representation and Processing of Visual Information", Freeman, 1982 14
(McCulloch, 1965) McCulloch, Warren S. "Embodiments of Mind", MIT Press, 1965 (Nilsson, 1965, 1990) Nilsson, Nils J. "The Mathematical Foundations of Learning Machines", Morgan Kaufmann, 1990 (Ripley, 1997) Ripley, B.D. "Can Statistical Theory Us Use Neural Networks Better?", Proceedings of the Interface '97, 29th Symposium on the Interface: Computing Science and Statistics, 1997 (Rumerhart, 1986) Rumelhart, D.E., Hinton, G.E. & McClelland, J.L. "A General Framework for Paralle Distributed Processing" en "PDP: Explorations in the Microstructure of Cognition", Vol 1: Foundations, MIT Press, 1986
15