Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Apuntes Ampliados
Apuntes Ampliados
Grupo:
2 Ingeniera Informtica A
Asignatura:
Modelos de Computacin II
Profesor:
NDICE
Portada
ndice
Apuntes ampliados
3 a 33
3 a 20
20 a 27
Retropropagacin o Backpropagation
27 a 32
32 a 34
Bibliografa
35
REDES NEURONALES
Conceptos bsicos sobre Redes Neuronales
De dnde surge la conexin cerebro vs. Mquinas?
Cuando trabajamos en el mbito de las Redes Neuronales, tenemos
que comenzar por mostrar una conexin clara y evidente entre las
mquinas y el cerebro humano.
La diferencia ms importante y decisiva es la forma en que se
produce el almacenamiento de informacin en el cerebro y en el
ordenador.
En el ordenador, los datos se guardan en posiciones de memoria que
son celdillas aisladas entre s. As cuando se quiere acceder a una
posicin de memoria se obtiene el dato de esta celdilla, sin que las
posiciones de memoria contiguas se vean afectadas por dicha
operacin.
En el cerebro, la gestin es totalmente diferente. Cuando buscamos
una informacin no hace falta que sepamos dnde se encuentra
almacenada y en realidad no lo podemos saber ya que nadie sabe
dnde guarda el cerebro los datos.
En todo el mundo pero sobre todo en Estados Unidos y Japn,
cientficos expertos tratan de dar con la clave de la memoria
asociativa. Si se consiguiera construir un chip de memoria segn el
modelo humano, la ciencia dara un paso gigante en la fascinante
carrera hacia la inteligencia artificial.
Un superordenador llamado cerebro
El hombre necesita un sistema de proceso de datos de mltiple
propsito capaz de tratar gran cantidad de informacin muy distinta y
en muy poco tiempo y con el mayor sentido prctico(pero no
necesariamente con exactitud), para inmediatamente poder actuar en
consecuencia.
Los ordenadores, en cambio, son altamente especializados con
capacidad para procesar con exactitud informacin muy concreta (en
principio solo nmeros) siguiendo unas instrucciones dadas.
El cerebro humano posee ms de diez millones de neuronas las
cuales ya estn presentes en el momento del nacimiento. Conforme
3
Computadora
La frecuencia de los
impulsos nerviosos puede variar.
La frecuencia de transmisin
es inalterable y est dada por el reloj
interno de la mquina.
La informacin se guarda en
posiciones de memoria de acceso
directo por su direccin.
En el interior de una
computadora los impulsos fluyen a la
velocidad de la luz.
Redes Neuronales
Artificiales
Neuronas
Unidades de proceso
Conexiones sinpticas
Conexiones ponderadas
Funcin de propagacin o de
red
10
11
Las conexiones entre una capa y otra pueden ser totales, es decir,
que cada unidad se conecta con todas las unidades de la capa
siguiente, o parciales, en las cuales una unidad se conecta con slo
algunas de las capas de la unidad siguiente,
generalmente siguiendo algn patrn aleatorio o pseudo-aleatorio
(por ejemplo, mediante algoritmos genticos).
Fases de procesamiento
Fase de Aprendizaje
El aprendizaje consiste en la presentacin de patrones a la red, y la
subsiguiente modificacin de los pesos de las conexiones siguiendo
alguna regla de aprendizaje que trata de optimizar su respuesta,
generalmente mediante la minimizacin del error o la optimizacin de
alguna "funcin de energa".
El modo de aprendizaje ms sencillo consiste en la presentacin de
patrones de entrada junto a los patrones de salida deseados (targets)
para cada patrn de entrada, por eso se llama aprendizaje
supervisado. Si no se le presentan a la red los patrones de salida
deseados, diremos que se trata de aprendizaje no supervisado, ya
que no se le indica a la red que resultados debe dar, sino que se le
deja seguir alguna regla de auto-organizacin. Un tercer tipo de
aprendizaje, a medio camino entre los anteriores, es el llamado
aprendizaje reforzado, en este caso el supervisor se limita a indicar
si la salida ofrecida por la red es correcta o incorrecta, pero no indica
que respuesta debe dar.
Cualquiera que sea el tipo de aprendizaje usado, una caracterstica
esencial de la red es la regla de aprendizaje usada, que indica como
se modifican los pesos de las conexiones en funcin de los datos
usados en la entrada, es decir, de la historia de aprendizaje de la red.
Por ejemplo, entre los algoritmos de aprendizaje supervisado, la regla
delta generalizada, modifica los pesos realizando en cada ciclo de
aprendizaje un incremento los pesos proporcional a la tasa de
variacin del error respecto al peso, en sentido negativo.
El aprendizaje requiere la presentacin repetida de un nmero
relativamente amplio de ejemplos de entrenamiento hasta lograr una
respuesta satisfactoria del sistema (segn la medida de error o
funcin de energa utilizada).
Es usual disponer de un conjunto de datos distintos a los usados para
el entrenamiento, para los cuales se conoce la respuesta correcta, y
se usan como test, evaluando con ello si la red responde
adecuadamente frente a datos distintos a los usados durante el
aprendizaje (generalizacin), si es as se considera que la red
funciona bien y se puede pasar a la fase de aplicacin (recall), es
12
13
Volver al paso 2
Aprendizaje no supervisado
Una de las crticas principales al aprendizaje supervisado, dejando de
lado los aspectos computacionales era su dudosa plausibilidad
biolgica, pues:
-
14
15
Aprendizaje competitivo
En el aprendizaje por componentes principales, un pequeo nmero
de unidades coopera en la representacin del patrn de entrada. En el
aprendizaje competitivo, un gran nmero de unidades ocultas pugnan
entre s, con lo que finalmente se utiliza una sola unidad oculta para
representar un patrn de entrada determinado o un conjunto de
patrones similares. La unidad oculta seleccionada es aquella cuyos
pesos incidentes se asemejan ms al patrn de entrada. El
aprendizaje consiste en reforzar las conexiones de la unidad ganadora
y debilitar las otras, para que los pesos de la unidad ganadora se
asemejen cada vez ms al patrn de entrada. Generalmente se
utilizan reglas basadas en la regla de Hebb o regla del producto. La
reconstruccin del patrn de entrada consistir en copiar la
distribucin de pesos de la unidad ganadora.
Cdigos demogrficos
El problema de los componentes principales es que eliminan toda la
redundancia, y con ello pierden la tolerancia a fallos, ya que cada
patrn o conjunto de patrones de entrada similares queda
representado por una sola neurona. La solucin a este dilema, que
adems parece ser la utilizada por el cerebro, son los cdigos
demogrficos, una solucin intermedia entre las representaciones
distribuidas puras y representaciones puramente locales.
Se trata de representar cada patrn de entrada por un conjunto o
poblacin de unidades activas simultneamente, de manera que la
disfuncin de alguna unidad no provoca la prdida de la informacin.
Los cdigos demogrficos parecen contradecir el principio de
economa de las representaciones, sin embargo, una poblacin de
neuronas es muy fcil de representar si se compone de un grupo de
neuronas vecinas con un centro prominente de actividad. En ese caso
es suficiente con describir dicho centro, ms alguna medida de la
forma en que la actividad de las unidades adyacentes decae a
medida que nos alejamos del centro.
Aprendizaje reforzado
Como ya comentamos, la idea es similar a la del aprendizaje
supervisado, slo que aqu la informacin dada por el maestro es
mnima, se limita a indicar si la respuesta de la red es correcta o
incorrecta. En este sentido se asimila a la nocin tomada de la
16
17
18
Optimizacin
Las RRNN son una herramientas interesantes para la optimizacin de
aplicaciones, que normalmente implican la bsqueda del mnimo
absoluto de una funcin de energa:
19
20
Aprendizaje de gramticas
(Rumelhart,D. & McClelland, J.) estudiaron la forma en que
construimos las reglas sobre el lenguaje, y trataron de ensear a una
red neuronal el pasado de los verbos ingleses. El sistema fue
mejorando y al final era capaz de generalizar y conjugar verbos
desconocidos.
Compresin de imgenes
(Cottrell, G.W. y otros) han conseguido codificar imgenes con una
relacin de compresin de hasta 8:1 sin tener que idear ninguna regla
y alta fidelidad en la reconstruccin.
Reconocimiento de caracteres
Reconocimiento de escritura manual
Nestor, Inc => leen lo escrito mediante una tarjeta digitalizadora.
Tras aprender, son capaces de reconocer escrituras que nunca haban
visto antes. Se ha empleado por ejemplo para reconocer kanji
(escritura japonesa), eliminando la gran dificultad que presenta este
lenguaje para introducirlo en el computador.
El Neocognitrn (Kunihiko Fukishima): simula la forma en que la
informacin visual avanza en la corteza cerebral. Consigue un
reconocimiento muy avanzado de patrones con gran capacidad de
abstraccin y generalizacin, que lo hacen capaz de reconocer
patrones con distinta orientacin y altos niveles de distorsin.
Reconocimiento de patrones en imgenes
Clasificacin de objetivos:
En este campo se han desarrollado numerosas aplicaciones como la
clasificacin de imgenes de sonar y radar, la deteccin de clulas
cancerosas, lesiones neurolgicas y cardacas, prospecciones
geolgicas, etc.. Son muy tiles para procesar imgenes de las que
no se sabe bien cuales son las caractersticas esenciales o
diferenciales, ya que las redes no necesitan disponer de reglas
explcitas previas para realizar la clasificacin, sino que extraen el
conocimiento necesario.
Visin artificial en robots industriales
Por ejemplo, para inspeccin de etiquetas, clasificacin de
componentes, etc. Supera a otros sistemas de visin , adems
minimiza los requerimientos de operadores y facilita el
mantenimiento.
21
Filtro de ruido
Las redes neuronales artificiales son mejores preservando la
estructura profunda y el detalle que los filtros tradicionales cuando
eliminan el ruido. La primera aplicacin profesional de las redes
neuronales consisti en un filtro para eliminar ruido en las lneas
telefnicas.
Problemas de combinatoria
Las redes neuronales artificiales estn ofreciendo ciertas esperanzas
en el rea de problemas algortmicamente tan complejos como los
NP-completos; por ejemplo, el problema del viajante de comercio
(Hopfield, J. & Tank, D.)
Otras aplicaciones
Modelado y prediccin de indicadores econmicos
Se obtienen mejores resultados que con cualquier otro mtodo
conocido (como los programas de media mvil). Se ha aplicado por
ejemplo a la prediccin de tasas de inters, dficits comerciales,
precios de stock, etc.
Historia
En 1956 se organiz en Dartmouth la primera conferencia sobre IA.
Aqu se discuti el uso potencial de las computadoras para simular
"todos los aspectos del aprendizaje o cualquier otra caracterstica de
la inteligencia" y se present la primera simulacin de una red
neuronal, aunque todava no se saban interpretar los datos
resultantes.
En 1959, Widrow publica una teora sobre la adaptacin neuronal y
unos modelos inspirados en esa teora, el Adaline (Adaptative Linear
Neuron) y el Madaline (Multiple Adaline). Estos modelos fueron usados
en numerosas aplicaciones y permitieron usar, por primera vez, una
red neuronal en un problema importante del mundo real: filtros
adaptativos para eliminar ecos en las lneas telefnicas.
En 1962, Rosemblatt publica los resultados de un ambicioso proyecto
de investigacin, el desarrollo del Perceptrn, un identificador de
patrones pticos binarios, y salida binaria. Las capacidades del
Perceptrn se extendieron al desarrollar la regla de aprendizaje delta,
que permita emplear seales continuas de entrada y salida.
22
25
26
27
28
Leer(x[i] (i=1..n), y)
2.1.1 Calcular error en ese ejemplo
SP = W[n+1] + x[i] * W[i] (salida del perceptrn con la entrada del
ejemplo h)
SP= 1/(1+e^(-SP))
Error = y - SP (diferencia entre el valor de y en el ejemplo h y SP)
2.1.2 Actualizar los pesos segn el error de ese ejemplo
2.1.2.1 Actualizar los pesos de las entradas
Para cada i=1..n
W[i] = W[i] + *SP*(1-SP)*x[i]*Error
2.1.2.2 Actualizar el bias (= -umbral)
W[n+1]=W[n+1] + *SP*(1-SP)*Error
2.1.3 Incrementar contador de ejemplos
k=k+1
Cerrar(<fichero de ejemplos>)
Paso 2.2.: Calcular Error Cuadratico Medio
ECM=0;
Abrir(<fichero de ejemplos>)
Mientras no este en el final del fichero
Leer(x[i] (i=1..n), y)
SP = W[n+1] + x[i] * W[i]
SP= 1/(1+e^(-SP))
Error = y SP
ECM=ECM+(Error)^2
ECM=ECM/k
Cerrar(<fichero de ejemplos>)
Paso 2.3.: Incrementar el contador de iteraciones
I=I+1
PASO 3: Salida
Escribe( El perceptrn aprendido es el de pesos: )
Para i=1..n
Escribe( W,i,=,W[i])
Escribe(Con bias =, W[n+1])
29
Adaline
Es una de las estructuras neuronales ms simples junto con el
perceptrn.
Est formada por un nico elemento de procesado (Adaline: Adaptive
Linear Elemento; "Widrow-Hoff").
Si se combinan varios adalines se obtiene la configuracin
denominada Madaline.
Para su entrenamiento se utiliza un aprendizaje supervisado,
concretamente, por correccin de error. El aprendizaje es Off Line.
entonces :
30
Sea:
Consecuencias:
Posee un extremo
El extremo es mnimo
31
Backpropagation o Retropropagacin:
Redes de Retropropagacin (Back-prop)
Al hablar de redes de retropropagacin o redes de propagacin hacia
atrs hacemos referencia a un algoritmo de aprendizaje ms que a
una arquitectura determinada.
La retropropagacin consiste en propagar el error hacia atrs, es
decir, de la capa de salida hacia la capa de entrada, pasando por las
capas ocultas intermedias y ajustando los pesos de las conexiones
con el fin de reducir dicho error.
Hay distintas versiones o reglas del algoritmo de retropropagacin y
distintos arquitecturas conexionistas a las que pueden ser aplicados.
Durante mucho tiempo no se dispuso de algoritmos para entrenar
redes multicapa, y como las redes de una capa estaban muy limitadas
en cuanto a lo que eran capaces de representar, el campo de las
redes neuronales artificiales estaba estancado.
La invencin y perfeccionamiento del algoritmo de retropropagacin
dio un gran impulso al desarrollo de este campo. Tiene un buen
fundamento matemtico y a pesar de sus limitaciones ha expandido
enormemente el rango de problemas donde se aplican las redes
neuronales artificiales.
Al parecer el algoritmo fue ideado a principios de los 70 por Werbos, y
redescubierto a principios de los 80 por Parker y Rumelhart
independientemente. Sin embargo, no se hizo popular hasta 1986,
cuando Rumerlhart, Hinton y Williams presentaron una descripcin
clara y concisa del mismo.
Y es que en un primer momento no se valor como se mereca. El
hecho de que permaneciera en el olvido tanto tiempo tambin debe
ser una consecuencia de la condicin interdisciplinar del campo,
repartido entre las matemticas y ciencias de la computacin, las
neurociencias y la psicologa.
Desde la fecha clave de 1986 han surgido nuevas versiones que han
tratado de aumentar la velocidad de convergencia del algoritmo y
han tratado de superar algunos de sus inconvenientes, como la
tendencia a alcanzar mnimos locales y no globales.
Descripcin matemtica del algoritmo de retropropagacin
32
Se explica una versin del algoritmo (Hinton, 1992) para redes con las
siguientes caractersticas:
1.
2.
3.
No recurrentes
Funcin de activacin sigmoidal
Capas totalmente interconectadas
Operacin totalmente sncrona
Aleatorizamos los pesos de las conexiones.
Presentamos un patrn de entrada y calculamos la salida.
Dada una unidad j-sima de la capa de salida y unidades isimas de la capa oculta inmediatamente anterior, calculamos
la entrada total ponderada y la salida o activacin de la misma.
33
34
Valoracin
El algoritmo de retropropagacin presenta ciertos problemas, algunos
referentes a su dudosa plausibilidad neurofisiolgica, y otros
referentes a ciertos aspectos computacionales, que son los que
vamos a comentar a continuacin:
35
36
Validacin
Necesidad de validacin
Una vez tenemos nuestro modelo, es necesario probarlo ante
diferentes situaciones y circunstancias.
Es preciso asegurarse de que nuestra red funciona correctamente, ya
que podra no hacerlo por diferentes motivos. Los ms usuales son los
siguientes:
-
Entrenamiento insuficiente
37
38
Bootstrapping
Stacked generalization
39
BIBLIOGRAFA
Las principales fuentes bibliogrficas son sitios de la red:
URL: www.iiia.csic.es
URL: www.gc.ssr.upm.es
URL: www.monografias.com
URL: http://ohm.utp.edu.co
URL: www.lfcia.org
URL: www.gui.uva.es
URL: http://electronica.com.mx
URL: www.google.es
40
URL: www.ugr.es
41