2. El Modelo Adaline
La función tiende a cero cuando los pesos se hacen
mejores. Esta regla de aprendizaje se conoce como la
regla delta o de Widrow-Hoff o regla LMS (the Least
Mean Squared)
Arquitectura del ADALINE
3. Comparaciones Perceptron - ADALINE
La regla del aprendizaje de ADALINE es idéntica a la regla del
Perceptron en el caso de una función de transferencia lineal. No
obstante la motivación de ambas reglas no son las mismas: en el caso
ADALINE, se busca minimizar la función de costo de funcionamiento
del dispositivo, mientras que en el caso del Perceptron, se persigue la
determinación de hiperplano separador entre dos clases.
La regla de aprendizaje del Perceptron converge, en el caso de existir
solución luego de un numero finito de iteraciones. Por su parte, la regla
delta (caso ADALINE), es de convergencia asintótica, en principio
luego de muchas iteraciones.
El empleo de muchas funciones de transferencia sobre el mismo
conjunto de entrenamiento, trae como consecuencia que la dinámica
de aprendizaje tienda a resultados distintos para los pesos sinápticos.
4. Comparaciones Perceptron - ADALINE
El enfoque de descenso de gradiente(ADALINE) es
fácilmente generalizable a redes de varias capas,
mientras que la regla del perceptron no lo es
El Perceptron Multicapas
El perceptrón multicapas es una red Neuronal
artificial(RNA) formada por múltiples capas, lo cual le
permite resolver problemas que no son linealmente
separables, lo
El perceptrón multicapas puede ser totalmente o
localmente conectado.
En el primer caso cada salida de una neurona de la capa
"i" es entrada de todas las neuronas de la capa "i+1“.
5. El Perceptron Multicapas
En el segundo caso, cada neurona de la capa "i" es
entrada de una serie de neuronas (región) de la capa
"i+1".
Las capas pueden clasificarse en tres tipos:
Capa de entrada: Constituida por aquellas neuronas
que introducen los patrones de entrada en la red. En
estas neuronas no se produce procesamiento.
Capas ocultas: Formada por aquellas neuronas cuyas
entradas provienen de capas anteriores y las salidas
pasan a neuronas de capas posteriores.
Capa de salida: Neuronas cuyos valores de salida se
corresponden con las salidas de toda la red.
7. El Perceptron Multicapas
Las neuronas de la capa oculta usan como regla de
propagación la suma ponderada de las entradas con los
pesos sinápticos wij y sobre esa suma ponderada se
aplica una función de transferencia de tipo sigmoide, que
es acotada en respuesta.
Forma funcional de una sigmoide
8. El Perceptron Multicapas
Aprendizaje
El aprendizaje que se suele usar en este tipo de redes
recibe el nombre de retropropagacion del error
(backpropagation).
Como función de coste global, se usa el error cuadrático
medio. Es decir, que dado un par (xk, dk) correspondiente
a la entrada k de los datos de entrenamiento y salida
deseada asociada se calcula la cantidad:
Formula del Error Cuadrático Medio
9. El Perceptron Multicapas
que vemos que es la suma de los errores parciales
debido a cada patrón (índice p), resultantes de la
diferencia entre la salida deseada dp y la salida que da
la red f(.) ante el vector de entrada xk.
Si estas salidas son muy diferentes de las salidas
deseadas, el error cuadrático medio Será grande. f es la
función de activación de las neuronas de la capa de
salida e y la salida que proporcionan las neuronas de la
ultima capa oculta.
El procedimiento de minimización utilizado sobre la
función de coste global es el Descenso de Gradiente
10. El Perceptron Multicapas
Algoritmo Backpropagation
La aplicación del algoritmo tiene dos fases, una hacia
delante y otra hacia atrás. Durante la primera fase el patrón
de entrada es presentado a la red y propagado a través de
las capas hasta llegar a la capa de salida.
Obtenidos los valores de salida de la red, se inicia la
segunda fase, comparándose éstos valores con la salida
esperada para obtener el error.
Se ajustan los pesos de la última capa proporcionalmente
al error. Se pasa a la capa anterior con una retropopagación
del error, ajustando los pesos y continuando con este
proceso hasta llegar a la primer capa.
De esta manera se han modificado los pesos de las
conexiones de la red para cada patrón de aprendizaje del
problema, del que conocíamos su valor de entrada y la
salida deseada que debería generar la red ante dicho
patrón.
11. Backpropagation
La técnica Backpropagation requiere el uso de neuronas
cuya función de activación sea continua, y por lo tanto,
diferenciable. Generalmente, la función utilizada será del
tipo sigmoidal.
Pasos para aplicar el algoritmo de entrenamiento
Paso 1:Inicializar los pesos de la red con valores
pequeños aleatorios.
Paso 2:Presentar un patrón de entrada y especificar la
salida deseada que debe generar la red.
Paso 3:Calcular la salida actual de la red. Para ello
presentamos las entradas a la red y vamos calculando la
salida que presenta cada capa hasta llegar a la capa de
salida, ésta será la salida de la red. Los pasos son los
siguientes:
12. Backpropagation
Se calculan las entradas netas para las neuronas ocultas
procedentes de las neuronas de entrada. Para una neurona
j oculta:
en donde el índice h se refiere a magnitudes de la capa
oculta; el subíndice p, al p-ésimo vector de entrenamiento,
y j a la j-ésima neurona oculta. El término θ puede ser
opcional, pues actúa como una entrada más.
13. Backpropagation
Se calculan las salidas de las neuronas ocultas:
.
Se realizan los mismos cálculos para obtener las salidas
de las neuronas de salida:
14. Backpropagation
Paso 4:Calcular los términos de error para todas las
neuronas.
Si la neurona k es una neurona de la capa de salida, el
valor de la delta es:
La función f debe ser derivable. En general disponemos de
dos formas de función de salida
La función lineal :
La función sigmoidal:
15. Backpropagation
Paso 5:Actualización de los pesos: para ello utilizamos un algoritmo
recursivo, comenzando por las neuronas de salida y trabajando
hacia atrás hasta llegar a la capa de entrada, ajustando los pesos
de la siguiente forma:
Para los pesos de las neuronas de la capa de salida:
Para los pesos de las neuronas de la capa oculta:
En ambos casos, para acelerar el proceso de aprendizaje se puede
añadir un término momento.
16. Backpropagation
Paso 5:Actualización de los pesos: para ello utilizamos
un algoritmo recursivo, comenzando por las neuronas de
salida y trabajando hacia atrás hasta llegar a la capa de
entrada, ajustando los pesos de la siguiente forma:
Para los pesos de las neuronas de la capa de salida:
17. Backpropagation
Paso 6: El proceso se repite hasta que el término de
error resulta aceptablemente pequeño para
cada uno de los patrones aprendidos.
Consideraciones sobre el algoritmo de aprendizaje
El algoritmo encuentra un valor mínimo de error (local o
global) mediante una aplicación de pasos (gradiente)
descendentes.
Cada punto de la superficie de la función corresponde a
un conjunto de valores de los pesos de la red.
18. Backpropagation
Con el gradiente descendente, siempre que se realiza
un cambio en todos los pesos de la red, se asegura el
descenso por la superficie del error hasta encontrar el
valle más cercano, lo que puede hacer que el proceso
de aprendizaje se detenga en un mínimo local de error.
Uno de los problemas del algoritmo es que en busca de minimizar
la función de error, puede caer en un mínimo local o en algún punto
estacionario, con lo cual no se llega a encontrar el mínimo global de
la función de error. Sin embargo, no tiene porqué alcanzarse el
mínimo global en todas las aplicaciones, sino que puede ser
suficiente con un error mínimo preestablecido.
19. Ejemplo usando un Perceptron
Considere un modelo del perceptron simple, el cual
deberá ser entrenado para que lleve a cabo el
funcionamiento de una compuerta lógica OR.
x1 x2 SD
0 0 0
0 1 1
1 0 1
1 1 1
20. Ejemplo usando un Perceptron
Donde:
n
ACT = ∑ ( xi ∗ wi ) + u
i=1
E = SD − Y ∆ wi = λ ∗ E ∗ xi wi +1 = wi + ∆wi
u= u+ E
λ : Regula la velocidad de aprendizaje (0≤ λ ≤1 ; λ =1)