Está en la página 1de 94

Redes Neuronales

MSc. Raul Ricardo Sulla Torres


Inspiracin Biolgica
Esquema de una Neurona Biologica
Inspiracin Biolgica
Esquema de una Neurona Biologica
Inspiracin Biolgica
Esquema de una Neurona Biologica
Inspiracin Biolgica

Realidad Ficcin
Redes Neuronales
Imitemos a una neurona
activacin
pesos entrada
umbral
pesos salida
i
Modelo Neuronal
Neurona Simple de una Entrada (p) sin Ganancia (b)
Modelo Neuronal
Neurona de una Simple Entrada (p) con Ganancia (b)
Modelo Neuronal
) 5 . 4 ( ) 5 . 1 ) 2 ( 3 (
5 . 1
2
3
:
) (
f f a
Entonces
b
p
w
Si
b wp f a
= =
=
=
=
+ =
... y la estructura de una red neuronal
Redes Neuronales
) (
) ( ) 1 - (
) 1 - (
1
) ( ) (

|
|
.
|

\
|
+ =
=
l
i
l
j
l n
j
l
ij
l
i
b p w f a
activacin
capa
pesos umbral
Nmero de neuronas en la capa l-1
Funcin de activacin
Redes Neuronales
(
]
w
ji
w
1i
w
Ri

a(i)
n(i)
p
1
p
j
p
R
capa
de entrada capa
de sada
capa
escondida
( )
( ) ( ) ( ) i n f i a
p w p w p w i n
R R
=
+ + + =
, 1 2 2 , 1 1 1 , 1
...
Funcin de Transferencia
La funcin f puede ser
lineal o no lineal
Principalmente son
usadas 3 funciones de
transferencia:
Hardlim
Purelin
Sigmoidea
Funcin Hardlim
La salida de la Neurona es uno si el argumento de la funcin es mayor a cero
La salida de la Neurona es cero si el argumento de la funcin es menor a cero
Esta funcin es usada principalmente en la RNA Perceptron

0 0
1 0
:
= <
= >
a n
a n
Si
Funcin purelin
n a = La salida de la Neurona (a) es igual al argumento de la funcin (n)
Esta funcin es usada principalmente en la RNA Adaline

0
0,2
0,4
0,6
0,8
1
1,2
-10 -5 0 5 10
saturacin
saturacin
Respuesta lineal
x
e
x f
1
1
) (
+
=
Funcin de activacin: sigmoide
Redes Neuronales
Funcin Sigmoide
La salida de la Neurona (a) es igual a 1/(1+e
-n
)
Esta funcin es usada principalmente en RNA multicapas que usan
algoritmos Backpropagation, en parte porque esta funcin es
diferenciable

n
e
a

+
=
1
1
Ejemplo de una Red Neuronal de
una sola Entrada nnd2n1
Neuronal de Multiples Entrada
| |
) (
...
:
, 1 2 2 , 1 1 1 , 1
2
1
, 1 2 , 1 1 , 1
n f a
b p w p w p w n
b
p
p
p
w w w n
b n
Donde
R R
R
R
=
+ + + + =
+
(
(
(
(

=
+ =

Wp
R: Numero de elementos en el vector de entrada
Notacin Abreviada
Neurona con R Entrada
R: Numero de elementos en el vector de entrada
| |
) (
...
:
, 1 2 2 , 1 1 1 , 1
2
1
, 1 2 , 1 1 , 1
n f a
b p w p w p w n
b
p
p
p
w w w n
b n
Donde
R R
R
R
=
+ + + + =
+
(
(
(
(

=
+ =

Wp
Qu controla el flujo de
informacin?
las sinpsis
= pesos
los umbrales
y la arquitectura !!!!
Redes Neuronales
Capa de Neuronas
( )
( )
( )
) (
...
...
...
, 2 2 , 1 1 ,
2 , 2 2 2 , 2 1 1 , 2
1 , 1 2 2 , 1 1 1 , 1
2
1
n a f
b p w p w p w f
b p w p w p w f
b p w p w p w f
a
a
a
R R R S S S
R R
R R
R
=
+ + + +
+ + + +
+ + + +
=
=
=

R: Numero de elementos en el vector de entrada.
S: Numero de neuronas en la capa
Notacin Abreviada
Donde:
R: Numero de elementos en el vector de entrada.
S: Numero de neuronas en la capa
) (
...
...
...
...
...
...
2
1
, 2 2 , 1 1 ,
2 , 2 2 2 , 2 1 1 , 2
1 , 1 2 2 , 1 1 1 , 1
2
1
, 2 2 , 1 1 ,
, 2 2 2 , 2 1 1 , 2
, 1 2 2 , 1 1 1 , 1
2
1
, 2 , 1 ,
, 2 2 , 2 1 , 2
, 1 2 , 1 1 , 1
n a
n
n
n
b n
b Wp n
f
n
n
n
b p w p w p w
b p w p w p w
b p w p w p w
b
b
b
p w p w p w
p w p w p w
p w p w p w
p
p
p
w w w
w w w
w w w
S
R R R S S S
R R
R R
R R R S S S
R R
R R
R R S S S
R
R
=
(
(
(
(

=
(
(
(
(

+ + + +
+ + + +
+ + + +
=
(
(
(
(

+
(
(
(
(

+ + +
+ + +
+ + +
=
+
(
(
(
(

(
(
(
(

=
+ =

Notacin Abreviada
(
(
(
(

=
R S S S
R
R
w w w
w w w
w w w
W
, 2 , 1 ,
, 2 2 , 2 1 , 2
, 1 2 , 1 1 , 1

Donde:
R: Numero de elementos
en el vector de entrada.
S: Numero de neuronas
en la capa
RNA de 3 Capas
Notacin Abreviada de RNA de 3 Capas
Neurona con 2 Entradas
Red Neuronal con Delay
Red Neuronal Recurrente
Problemas
1.- La Entrada de una simple Neurona es 2.0 su peso es 2.3 y su bias
es -3.
a) Cual es la entrada a la funcin de transferencia
b) Cual es la salida de la Neurona

2.- Cual es la salida de la Neurona del problema 1. si tiene las
siguientes funciones de transferencia:
a) Hard limit
b) Linear
c) Log-sigmoid

3.- Se tiene una Neurona de 2 entradas con los siguientes
parametros
b=1.2, W=[3 2] y p=[-5 6]
T
, calcule la salida de la neurona para las
siguientes funciones de transferencia:
a) Hardlims
b) Saturada funcin lineal
c) tangente sigmoidea
1
2
3
Red Perceptron
Red Perceptron
Una Neurona Perceptron de 2 Entradas
Algoritmo de entrenamiento del
Perceptron
Paso 1: Inicializar la Matriz de pesos w
o
. Inicializar
la Ganancia b
o

Paso 2: Se presenta el 1er patron p
1
a la red,
junto con la salida t
1
esperada.
Paso 3: Se calcula la salida de la red
a=hardlim(wp+b)
Paso 4: Calculamos e=t-a,
Si e0. Entonces:
w
f
= w
o
+ep
T
b
f
= b
o
+e

Algoritmo de entrenamiento del Perceptron
Algoritmo de entrenamiento del Perceptro
Ejemplo de entrenamiento del Perceptron
Para la red perceptron. Cuya salida esta dada por a=hardlims (W*p+b).
Se tiene los siguientes pares de entrada/salida
)
`

=
(

=
)
`

=
(

=
)
`

=
(

=
)
`

=
(

= 1 ,
2
0
1 ,
1
2
1 ,
1
0
1 ,
1
2
1 4 1 3 1 2 1 1
t t t t p p p p
Hallar el vector de pesos W
y Las ganancias b

1 ,
1
2
1
2
1
1
=
(

=
(

= t
p
p
p
| |
1
) 7 . 0 (
) 5 . 0 ) 1 ( 2 . 0 ) 2 ( 7 . 0 (
) 5 . 0
1
2
2 . 0 7 . 0 (
) (
0
0
0
0
0 1 0 0
=
=
+ + =
+
(

=
+ =
a
a
a
a
b W a
hardlims
hardlims
hardlims
p hardlims
| | 5 . 0 2 . 0 7 . 0
0 0
= = b w
Solucin: Iteracin 0
Paso 1: Inicializar la Matriz de pesos w
o
. Inicializar la Ganancia b
o
.
Escogemos al azar los siguientes valores:
Paso 3: Se calcula la salida de la red a=hardlim(wp+b)
Paso 2: Se presenta el 1er patrn p
1
a la red, junto con la salida t
1
esperada.
| |
| | | |
| | | |
| |
5 . 2
2 5 . 0
2 . 2 3 . 3
2 4 2 . 0 7 . 0
1 2 2 2 . 0 7 . 0
1
2
2 2 . 0 7 . 0
1
1
0 0 1
1
1
1
1
0 0 1
=
+ =
+ =
=
+ =
+ =
(

+ =
+ =
b
b
e b b
W
W
W
W
P e W W
T
T
Iteracin 0
Paso 4: Calculamos e=t-a, Si e0. Entonces: w
f
= w
o
+ep
T ,
b
f
= b
o
+e
2
) 1 ( 1
0
0
0 1 0
=
=
=
e
e
a t e
el error Calculamos
Como e 0, Entonces,
hay que calcular nuevamente W y b
-5 -4 -3 -2 -1 0 1 2 3 4 5
-10
-8
-6
-4
-2
0
2
4
6
8
3.3p1+2.2p2+2.5=0
1 ,
1
2
1
2
1
1
=
(

=
(

= t
p
p
p
| |
1
) 3 . 11 (
) 5 . 2 2 . 2 6 . 6 (
) 5 . 2 ) 1 ( 2 . 2 ) 2 ( 3 . 3 (
) 5 . 2
1
2
2 . 2 3 . 3 (
) (
1
1
1
1
1
1 1 1 1
=
=
+ + =
+ + =
+
(

=
+ =
a
a
a
a
a
b W a
hardlims
hardlims
hardlims
hardlims
p hardlims
| | 5 . 2 2 . 2 3 . 3
1 1
= = b W
Iteracin 1
Paso 1: Inicializar la Matriz de pesos w. Inicializar la Ganancia b.
Escogemos al azar los siguientes valores:
Paso 3: Se calcula la salida de la red a=hardlim(wp+b)
Paso 2: Se presenta el 1er patrn p
1
a la red, junto con la salida t
1
esperada.
| |
5 . 2
0
2 . 2 3 . 3
0
2
1 2
1 2
1 1 2
2
1 2
1 2
1 1 2
=
=
+ =
+ =
=
=
+ =
+ =
b
b b
b b
e b b
W
W W
p W W
p e W W
T
T
Iteracin 1
Paso 4: Calculamos e=t-a, Si e0. Entonces: w
f
= w
o
+ep
T ,
b
f
= b
o
+e
0
) 1 ( 1
1
1
1 1 1
=
=
=
e
e
a t e
el error Calculamos
Como e=0, Entonces
1 ,
1
0
2
2
1
2
=
(

=
(

= t
p
p
p
| |
1
) 3 . 0 (
) 5 . 2 2 . 2 0 (
) 5 . 2 ) 1 ( 2 . 2 ) 0 ( 3 . 3 (
) 5 . 2
1
0
2 . 2 3 . 3 (
) (
2
2
2
2
2
2 2 2 2
=
=
+ =
+ + =
+
(

=
+ =
a
a
a
a
a
b W a
hardlims
hardlims
hardlims
hardlims
p hardlims
| | 5 . 2 2 . 2 3 . 3
2 2
= = b W
Iteracin 2
Paso 1: Inicializar la Matriz de pesos w. Inicializar la Ganancia b.
Paso 3: Se calcula la salida de la red a=hardlim(wp+b)
Paso 2: Se presenta el 2do patrn p
2
a la red,
junto con la salida t
2
esperada.
| |
5 . 2
0
2 . 2 3 . 3
0
3
2 3
2 3
2 2 3
3
2 3
2 3
2 2 3
=
=
+ =
+ =
=
=
+ =
+ =
b
b b
b b
e b b
W
W W
p W W
p e W W
T
T
Iteracin 2
Paso 4: Calculamos e=t-a, Si e0. Entonces: w
f
= w
o
+ep
T ,
b
f
= b
o
+e
0
) 1 ( 1
2
2
2 2 2
=
=
=
e
e
a t e
el error Calculamos
Como e=0, Entonces
1 ,
1
2
3
2
1
3
=
(

=
(

= t
p
p
p
| |
1
) 3 11 (
) 5 . 2 2 . 2 6 6 (
) 5 . 2 ) 1 ( 2 . 2 ) 2 ( 3 . 3 (
) 5 . 2
1
2
2 . 2 3 . 3 (
) (
3
3
3
3
3
3 3 3 3
=
=
+ + =
+ + =
+
(

=
+ =
a
. a
. a
a
a
b W a
hardlims
hardlims
hardlims
hardlims
p hardlims
| | 5 . 2 2 . 2 3 . 3
3 3
= = b W
Iteracin 3
Paso 1: Inicializar la Matriz de pesos w. Inicializar la Ganancia b.
Paso 3: Se calcula la salida de la red a=hardlim(wp+b)
Paso 2: Se presenta el 3er patrn p
3
a la red,
junto con la salida t
3
esperada.
| |
5 . 2
0
2 . 2 3 . 3
0
4
3 4
3 4
3 3 4
4
3 4
3 4
3 3 4
=
=
+ =
+ =
=
=
+ =
+ =
b
b b
b b
e b b
W
W W
p W W
p e W W
T
T
Iteracin 3
Paso 4: Calculamos e=t-a, Si e0. Entonces: w
f
= w
o
+ep
T ,
b
f
= b
o
+e
0
) 1 ( 1
3
3
3 3 3
=
=
=
e
e
a t e
el error Calculamos
Como e=0, Entonces
1 ,
2
0
3
2
1
4
=
(

=
(

= t
p
p
p
| |
1
) 9 . 6 (
) 5 . 2 4 . 4 0 (
) 5 . 2 ) 2 ( 2 . 2 ) 0 ( 3 . 3 (
) 5 . 2
2
0
2 . 2 3 . 3 (
) (
4
4
4
4
4
4 4 4 4
=
=
+ + =
+ + =
+
(

=
+ =
a
a
a
a
a
b W a
hardlims
hardlims
hardlims
hardlims
p hardlims
| | 5 . 2 2 . 2 3 . 3
4 4
= = b W
Iteracin 4
Paso 1: Inicializar la Matriz de pesos w. Inicializar la Ganancia b.
Paso 3: Se calcula la salida de la red a=hardlim(wp+b)
Paso 2: Se presenta el 4to patrn p
4
a la red,
junto con la salida t
4
esperada.
| | ( )
| | | |
| | | |
| |
5 . 0
2 5 . 2
8 . 1 3 . 3
4 0 2 . 2 3 . 3
2 0 2 2 . 2 3 . 3
2
0
2 2 . 2 3 . 3
5
5
4 4 5
5
5
5
5
4 4 4 5
=
=
+ =
=
=
+ =
(

+ =
+ =
b
b
e b b
W
W
W
W
P e W W
T
T


Iteracin 4
Paso 4: Calculamos e=t-a, Si e0. Entonces: w
f
= w
o
+ep
T ,
b
f
= b
o
+e
2
) 1 ( 1
0
0
0 1 0
=
=
=
e
e
a t e
el error Calculamos
Como e 0, Entonces,
hay que calcular nuevamente W y b
1 ,
2
0
3
2
1
4
=
(

=
(

= t
p
p
p
| |
1
) 1 . 3 (
) 5 . 0 6 3 0 (
) 5 . 0 ) 2 ( 8 . 1 ) 0 ( 3 . 3 (
) 5 . 0
2
0
8 . 1 3 . 3 (
) (
5
5
5
5
5
5 4 5 5
=
=
+ =
+ =
+
(

=
+ =
a
a
. a
a
a
b W a
hardlims
hardlims
hardlims
hardlims
p hardlims
| | 5 . 0 8 . 1 3 . 3
4 5
= = b W
Iteracin 5
Paso 1: Inicializar la Matriz de pesos w. Inicializar la Ganancia b.
Paso 3: Se calcula la salida de la red a=hardlim(wp+b)
Paso 2: Se presenta el 4to patrn p
4
a la red,
junto con la salida t
4
esperada.
| | ( )
| |
| |
5 . 2
0 5 . 2
8 1 3 . 3
0 8 1 3 . 3
2
0
0 8 1 3 . 3
6
6
5 5 6
6
6
6
5 5 5 6
=
+ =
+ =
=
+ =
(

+ =
+ =
b
b
e b b
. W
. W
. W
P e W W
T
T
Iteracin 5
Paso 4: Calculamos e=t-a, Si e0. Entonces: w
f
= w
o
+ep
T ,
b
f
= b
o
+e
0
) 1 ( 1
5
5
5 4 5
=
=
=
e
e
a t e
el error Calculamos
Como e 0, Entonces,
No es necesario calcular nuevamente W y b
PROBLEMAS
PROBLEMAS
Con Matlab
Red Adaline
W
b
+
a n
p
1
SxR
Sx1
Sx1
S
Sx1
Rx1
APRENDIZAJE WIDROW- HOFF

Objetivo:
Aplicar los principios de aprendizaje del rendimiento a redes lineales de una sola
capa.

El aprendizaje Widrow-Hoff es una aproximacin del algoritmo del Decenso por
gradiente, en el cual el ndice de rendimiento es el error cuadrtico medio.

Importancia del algoritmo:
Se usa ampliamente en aplicaciones de procesamiento de seales.
Es el precursor del algoritmo Backpropagation para redes multicapas.

En 1960, Bernard Widrow y Marcian Hoff, introdujeron la red ADALINE
(Adaptive Linear Neuron) y una regla de aprendizaje que llamaron LMS (Least
mean square).

La adaline es similar al perceptrn, slo que su funcin de transferencia es lineal,
en lugar del escaln.
Igual que el perceptrn, slo puede resolver problemas linealmente separables.
El algoritmo LMS es ms poderoso que la regla de aprendizaje del perceptrn.
La regla de aprendizaje del perceptrn garantiza convergencia a una solucin
que clasifica correctamente los patrones de entrenamiento. Esa red es sensible al
ruido, debido a que los patrones con frecuencia estn muy cerca de las fronteras
de decisin.

El algoritmo LMS minimiza el error cuadrtico medio, desplaza las fronteras de
decisin lejos de los patrones de entrenamiento.
El algoritmo LMS tiene ms aplicaciones prcticas que la regla de aprendizaje
del perceptrn, especialmente en el procesamiento digital de seales, como por
ejemplo, para cancelar echo en lneas telefnicas de larga distancia.

La aplicacin de este algoritmo a redes multicapas no prosper por lo que
Widrow se dedic a trabajar en el campo del procesamiento digital adaptativo, y
en 1980 comenz su investigacin con la aplicacin de las Redes al control
adaptativo, usando backpropagation temporal, descendiente del LMS.
La Red ADALINE:
W
b
+
a n
p
1
SxR
Sx1
Sx1
S
Sx1
Rx1
La diferencia con el perceptrn, es que la salida est dada por:
a = purelin(Wp+b)

El i-simo elemento del vector de salida:
a
i
purelin n
i
( ) purelin w
T
i
p b
i
+ ( ) w
T
i
p b
i
+ = = =
Con
.

w
i
w
i 1 ,
w
i 2 ,
w
i R ,
=
Una adaline de dos entradas:
W
b
a n
p
1
1x2
1x1
1x1
1
1x1
2x1
+
a purelin n ( ) purelin w
T
1
p b + ( ) w
T
1
p b + = = =
a w
T
1
p b + w
1 1 ,
p
1
w
1 2 ,
p
2
b + + = =
As como el perceptrn tiene una frontera de decisin, determinada por los
vectores de entrada para los cuales la entrada de red n es cero, la frontera de
decisin de la adaline tambin se encuentra con: n = a = 0

La adaline se puede usar para clasificar objetos en dos categoras linealmente
separables, por lo tanto tiene las mismas limitaciones que el perceptrn.
p
1

p
2
P
1
= -b/w
1,1
P
2
=-b/w
1,2
n = 0
1w
a < 0
a > 0
Error cuadrtico medio
El algoritmo LMS es del tipo de entrenamiento supervisado, en el cual la regla de
aprendizaje cuenta con un conjunto de patrones de ejemplos del comportamiento
deseado de la red:
p
1
t
1
{ , } p
2
t
2
{ , } . p
Q
t
Q
{ , } , , ,
Cada entrada aplicada a la red se compara con su salida deseada.

El algoritmo LMS ajusta los pesos y los sesgos de la adaline con el fin de
minimizar el error cuadrtico medio. El error es la diferencia entre la salida
deseada y la salida de la red. Ese es el ndice de rendimiento que se evala.
Sea x el vector de los parmetros que se ajustarn:
x
w
1
b
=
Y z el vector de entradas
z
p
1
=
La salida de la red ser:
a w
T
1
p b + = a x
T
z =
El error cuadrtico medio para la red est dado por:
F x ( ) E e
2
| | = E t a ( )
2
| | E t x
T
z ( )
2
| | = =
El valor esperado del error se calcula sobre todos los pares entradas/salidas
deseadas.
Expandiendo la expresin anterior:
F x ( ) E t
2
2tx
T
z x
T
zz
T
x + | | =
F x ( ) E t
2
| 2x
T
E tz | | x
T
E zz
T
| |x + | =
F x ( ) c 2x
T
h x
T
Rx + =
c E t
2
| | = h E tz | | = R E zz
T
| | =
d 2h = A 2R =
El vector h representa la correlacin cruzada entre el vector de entrada y su
salida deseada, R representa la matriz de correlacin de entrada. Los elementos
diagonales de esta matriz son iguales a los cuadrados medios de los elementos
de los vectores de entrada (para cada vector, no para todos a la vez).

Si se hace:
De la forma general de la funcin cuadrtica vemos que
el error cuadrtico medio para la adaline es una funcin cuadrtica .
F x ( ) c d
T
x
1
2
--- x
T
Ax + + =
En este caso el Hessiano es dos veces la matriz de correlacin R. Todas las
matrices de correlacin son definidas positivas o semidefinidas positivas, no
tienen autovalores negativos.
Si la matriz de autocorrelacin tiene solo autovalores positivos, el ndice de
rendimiento tendr un mnimo global nico, y si tiene algn autovalor de valor
cero, tendr un mnimo dbil o ningn mnimo (ningn punto estacionario)
dependiendo del vector d=-2h.

Bsqueda del punto estacionario del ndice de rendimiento
El gradiente de la funcin cuadrtica:
VF x ( ) V c d
T
x
1
2
---x
T
Ax + +
\ .
| |
d Ax + 2h 2Rx + = = =
igualando el gradiente a cero encontramos el punto estacionario:
2h 2Rx + 0 =
Si R es definida positiva entonces tendremos un nico punto estacionario, que
ser un mnimo local:
x
-
R
1
h =
Por lo tanto, los vectores de entrada determinan la existencia de solucin nica
o no.
Algoritmo LMS
Algoritmo para localizar el mnimo local. No es conveniente ni deseable calcular
h y R, por lo que se usa una aproximacin al algoritmo del decenso por
gradiente.

Se estima el error cuadrtico medio F(x) como:
F

x ( ) t k ( ) a k ( ) ( )
2
e
2
k ( ) = =
Se ha reemplazado el valor esperado del error cuadrtico por el error cuadrtico
en cada iteracin k.
En cada iteracin se estima el gradiente de la forma
V

F x ( ) e
2
k ( ) V =
Los primeros R elementos de Ve
2
(k) son derivadas respecto a los pesos,
mientras que elemento R+1 es derivado respecto al sesgo.
e
2
k ( ) V | |
j
e
2
k ( ) c
w
1 j ,
c
---------------- 2e k ( )
e k ( ) c
w
1 j ,
c
------------- = =
e
2
k ( ) V | |
R 1 +
e
2
k ( ) c
b c
---------------- 2e k ( )
e k ( ) c
b c
-------------
= =
j 1 2 . R , , , =
Evaluando las derivadas parciales de e(k) respecto a los pesos y al sesgo:
e k ( ) c
w
1 j ,
c
-------------
t k ( ) a k ( ) | | c
w
1 j ,
c
----------------------------------
w
1 j ,
c
c
t k ( ) w
T
1
p k ( ) b + ( ) | | = =
e k ( ) c
w
1 j ,
c
-------------
w
1 j ,
c
c
t k ( ) w
1 i ,
p
i
k ( )
i 1 =
R

b +
\ .
|
| |
=
e k ( ) c
w
1 j ,
c
------------- p
j
k ( ) =
e k ( ) c
b c
------------- 1 =
Observamos que p
j
(k) y 1 son elementos del vector de entrada z, por lo tanto,
el gradiente del error cuadrtico en la iteracin k se puede escribir como:
V

F x ( ) e
2
k ( ) V 2e k ( )z k ( ) = =
Este gradiente estimado, se usa en el algoritmo del decenso por gradiente
con tasa de aprendizaje constante:
x
k 1 +
x
k
o F x ( ) V
x x
k
=
=
x
k 1 +
x
k
2oe k ( )z k ( ) + =
El algoritmo LMS se conoce tambin como la regla Delta o el algoritmo de
Widrow-Hoff:
w
1
k 1 + ( ) w
1
k ( ) 2oe k ( )p k ( ) + =
b k 1 + ( ) b k ( ) 2oe k ( ) + =
(Esto se cumple por neurona, es decir se actualiza una columna de pesos
considerando por neurona el error introducido por cada entrada, ver la entrada
de sesgo ms abajo )

Para el caso de mltiples salidas, es decir, mltiples neuronas, cada elemento de
la i-sima fila de la matriz de pesos, se calcula como:
w
i
k 1 + ( ) w
i
k ( ) 2oe
i
k ( )p k ( ) + =
e
i
(k) es el i-simo componente del vector de error en la iteracin k.

De la misma manera el i-simo elemento del sesgo es:
b
i
k 1 + ( ) b
i
k ( ) 2oe
i
k ( ) + =
En forma matricial general el algoritmo LMS se expresa como:
W k 1 + ( ) W k ( ) 2oe k ( )p
T
k ( ) + =
b k 1 + ( ) b k ( ) 2oe k ( ) + =
Anlisis de Convergencia
Se busca la tasa de aprendizaje mxima estable para este algoritmo.
En el algoritmo LMS, los pesos en x(k+1), dependen de las entradas pasadas, es
decir, de z(k-1), z(k-2), ...., z(0).
Suponiendo esas entradas independientes estadsticamente, entonces x(k) es
independiente de z(k), puesto que no depende de la entrada actual.

Como el algoritmo LMS est dado por:
x
k 1 +
x
k
2oe k ( )z k ( ) + =
Tomando el valor esperado a ambos lados:
E x
k 1 +
| | E x
k
| | 2oE e k ( )z k ( ) | | + =
Sustituyendo el error t(k) - x
t
k
z(k)
E x
k 1 +
| | E x
k
| | 2o E t k ( )z k ( ) | | E x
k
T
z k ( ) ( )z k ( ) | | { } + =
E x
k 1 +
| | E x
k
| | 2o E t
k
z k ( ) | | E z k ( )z
T
k ( ) ( ) x
k
| | { } + =
por independencia de x(k) y z(k):
E x
k 1 +
| | E x
k
| | 2o h RE x
k
| | { } + =
E x
k 1 +
| | I 2oR | |E x
k
| | 2oh + =
0 o 1
max
< <


Este sistema dinmico ser estable si los autovalores de la matriz [I-2oR]
caen dentro del crculo unitario.

La condicin de estabilidad es:
Los autovalores de R son los
i
y los autovalores de [I-2oR] estn dados por
1-o
i
.

Si se satisface esa condicin de estabilidad, la solucin en estado estacionario
ser:
E(x
ee
) = [I-2oR] E(x
ee
) + 2oh
x
ee
= x
ee
- 2oR x
ee
+ 2oh
0 = - 2oR x
ee
+ 2oh
x
ee
= R
-1
h (la solucin, el mnimo local para el ndice de rendimiento).
Esta es la solucin que se obtiene de aplicar un vector de entrada a la vez, que
es el error cuadrtico medio mnimo.


Prueba de la Adaline y del algoritmo LMS:

Supongamos una adaline de sesgo cero. (b=0)
Clculo de la tasa de aprendizaje mxima:
p
1
1
1
1
t
1
,
1
= =
)

`


p
2
1
1
1
t
2
,
1
= =
)

`


Suponiendo que los dos vectores de entrada se generaron aleatoriamente con
igual probabilidad, se obtiene la matriz de correlacin como:
W
b
a n
p
1
1x3
1x1
1x1
1
1x1
3x1
R E pp
T
| |
1
2
--- p
1
p
1
T
1
2
--- p
2
p
2
T
+ = =
R
1
2
---
1
1
1
1 1 1
1
2
---
1
1
1
1 1 1
+
1 0 0
0 1 1
0 1 1
= =
Despus de calcular los autovalores de R:
( )
( ) ( ) ( )
( ) ( ) 0 * 2 * 1
0 1 1 * 1
0
1 1
1 1
* 1
0
1 1 0
1 1 0
0 0 1
0
1 1 0
1 1 0
0 0 1
0 0
0 0
0 0
0
2
=
=
=

=
(
(
(


(
(
(

R I

1
1.0
2
0.0
3
2.0 = , = , =
o
1

max
------------ <
1
2.0
------- 0.5 = =
(en la prctica se escoge la tasa de aprendizaje por ensayo y error, puesto
que no es fcil calcular R).

Trabajando con una tasa de aprendizaje de 0.2 y comenzando con todos los
pesos en cero, se aplican las entradas una a una y se calculan los pesos
despus de aplicada cada entrada:
2 . 0 = o
a 0 ( ) W 0 ( )p 0 ( ) W 0 ( )p
1
0 0 0
1
1
1
0 = = = =
Con p
1

e 0 ( ) t 0 ( ) a 0 ( ) t
1
a 0 ( ) 1 0 1 = = = =
W1 ( ) W0 ( ) 2oe 0 ( )p
T
0 ( ) + =
W 1 ( )
0 0 0
2 0.2 ( ) 1 ( )
1
1
1
T
0.4 0.4 0.4
= + =
Como error 0 Entonces hay que volver a calcular
Ahora se aplica p
2

a 1 ( ) W 1 ( )p 1 ( ) W 1 ( )p
2 0.4 0.4 0.4
1
1
1
0.4 = = = =
e 1 ( ) t 1 ( ) a 1 ( ) t
2
a 1 ( ) 1 0.4 ( ) 1.4 = = = =
W 2 ( )
0.4 0.4 0.4
2 0.2 ( ) 1.4 ( )
1
1
1
T
0.96 0.16 0.16
= + =
Como error 0 Entonces hay que volver a calcular
a 2 ( ) W 2 ( )p 2 ( ) W 2 ( )p
1 0.96 0.16 0.16
1
1
1
0.64 = = = =
Aplicamos p
1
otra vez
e 2 ( ) t 2 ( ) a 2 ( ) t
1
a 2 ( ) 1 0.64 ( ) 0.36 = = = =
W 3 ( ) W 2 ( ) 2oe 2 ( )p
T
2 ( ) +
1.1040 0.0160 0.0160
= =
Si se continua el procedimiento, el algoritmo converge a :
W ( )
1 0 0
=
Como error 0 Entonces hay que volver a calcular

También podría gustarte