Documentos de Académico
Documentos de Profesional
Documentos de Cultura
NEURONALES
I. REDES NEURONALES
MULTICAPA CON
CONEXIONES
FEEDFORWARD
1. PERCEPTRON
Autor: ROSENBLAT 1958
TOPOLOGIA: 2 CAPAS:
CAPA DE ENTRADA: N NEURONAS CON FUNCIÓN
DE TRANSFERENCIA IDENTIDAD
CAPA DE SALIDA: 1 NEURONA CON FUNCIÓN DE
TRANSFERENCIA ESCALÓN.
X1 1
.. W1
. Wk
Xk k u
.. Y
. Wn
W0= -
Xn n X0 =1
PERCEPTRON
CAPA DE ENTRADA:
Entrada neta: NETi = Xi
Función de transferencia Xi Yi
identidad: Yi = NETi
Entonces: Yi = Xi
CAPA DE SALIDA:
1 X1
Entrada neta: .. W1
NET= X0W0+X1W1+…+XNWN . Xk Wk
k u
Función de transferencia .. Y
escalón: y = F(NET) . Xn
Wn
W0= -
y = A, si NET 0 n X0 =1
y = B, si NET 0
Con A=1, B=0 o -1
EJM. FUNCIÓN OR
X1 X2 Y
X1 1 W1
0 0 0B u
W2 Y
0 1 1A
1 0 1A X2 2
1 1 1A W0= -
X0 =1
NETi= X0W0+ X1W1 +X2W2
y = F(NETi) (0,1) (1,1)
A A
y = A, si NETi 0
y = B, si NETi 0
El límite entre la salida 1 y 0 es A
NETi=0 (ecuación de una recta):
0 = W0+ X1W1 +X2W2 (1)
B A
Con W0=1, W1=2, W2=2 en (1):
(0,0) (1,0)
X1=0, X2=-1/2 y X1=-1/2, X2=0 B
-> El Perceptron no aprende
EJM. FUNCIÓN OR
X1 X2 Y
X1 1 W1
0 0 0B u
W2 Y
0 1 1A
1 0 1A X2 2
1 1 1A W0= -
X0 =1
Se modifican los pesos:
W0=-1, W1=2, W2=2 en (1): (0,1) (1,1)
0 = -1+ 2X1 +2X2 NETi =0 A A
X1=0, X2=1/2 y X1=1/2, X2=0
NETi >0
-> El Perceptron SI aprende
A
NETi 0 B A
(0,0) (1,0)
B
SEPARABILIDAD LINEAL
La ecuación de NET=0:
w1u x1 w2u x2 w0 0
En la forma vectorial:
W·X=0
X X X
W·X>0 W·X=0 W·X<0
X
W’=W+ X
Si el resultado es 1 en lugar de 0:
X
W’
W
X
W’=W-X
Entonces:
w’ = w + (d-y)x w = (d-y)x
Es la regla de aprendizaje Delta. El parámetro es la razón
de aprendizaje.
El error es =d-y, d=salida deseada, y=salida obtenida
APRENDIZAJE SUPERVISADO POR ENSAYO Y ERROR
NO
Etrain<emax
SI
NO
Etest<emax
SI
ENTRADA SALIDA
Algoritmo de aprendizaje del Perceptron
1.Leer los parámetros de aprendizaje:
A=1 o B=0 o -1
N = número de variables de entrada
npe = número de patrones de entrada
alfa, emax=error máximo, itmax=No. máximo de iteraciones
2. Leer los patrones de entrada y la salida deseada
Xp=(X1p, X2p, … , Xnp) , dp, para 1<=p<=npe
3.Inicializar los pesos en 0 o en valores aleatorios próximos a
0: W0=W1= … = WN= 0
4. t= 1 # iteración 1
5. sw = 0
6. while t<=itmax and sw==0 do
7. p= 1 # patrón de entrada 1
8. while p<=npe do
9. # calcular la salida
NET= X0PW0+X1PW1+…+XNPWN # Entrada neta
yp = A, si NET 0 # Salida
yp = B, si NET 0
Algoritmo de aprendizaje del Perceptron
9. # Calcular el error
p = dp - yp
10. # Regla de aprendizaje
w0 = w0 + (p )x0
w1 = w1 + (p )x1
...
wN = w1 + (p )xN
11. p= p + 1
12. end-while
13. if p <=emax para p=1,2,…,N then sw=1
14. t = t + 1
15. end-while
16. if sw==1 then return W # retorna el vector de pesos
else return “no aprendió”
17. end
EJEMPLO
Si un perceptron de dos entradas tiene pesos
iniciales w1=0, w2=0.4 y w0=0.3. Se requiere que
este perceptron aprenda la función lógica AND.
Suponga una razón de aprendizaje de 0.25.
Usando el algoritmo anterior completamos la tabla
hasta que encuentre convergencia.
X1 X2 Y
0 0 0 B
0 1 0B
1 0 0B
1 1 1A
w1 = 0.0 w’=w+(d-y)x
w2 = 0.4 NET= x0w0 + x1w1 + x2w2
w0 = 0.3 y = 1, si NET 0
= 0.25 y = 0, si NET 0
w1 w2 w0 x1 x2 y d (d-y) w1 w2 w0
0 0.4 0.3 0 0 0 0 0 0 0 0
0 0.4 0.3 0 1 1 0 -0.25 0 -0.25 0.25
0 0.15 0.55 1 0 0 0 0 0 0 0
0 0.15 0.55 1 1 0 1 0.25 0.25 0.25 -0.25
1.5
x2
0.5
w
0
-0.5
-0.5 0 0.5 1 1.5 2
x1
FUNCION XOR
X1 X2 Y
0 0 0 B
0 1 1A
1 0 1A
1 1 0B
x2
(0,1) (1,1) Patron de entrada
A B clase B, no está en
su región correcta
A
B
B A x1
(0,0) (1,0)