Professional Documents
Culture Documents
Existen otras clasificaciones de las redes neuronales. Una por ejemplo, es por el tipo de
variables que se emplean, denominndose RNA de variables binarias o variables
continuas.
Otra clasificacin es por el tipo de aprendizaje. En este aspecto, existen dos tipos de redes,
unas que tienen un aprendizaje supervisado y otras no.
Ejemplo 1 Fig.4
Para el caso de
una RNA de 2
capas, la
primera con 2
93
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
que es una funcin altamente no lineal, donde d k y Tk son valores conocidos. Los valores
que cambian en el entrenamiento de la red son x ( x1 , x2 ,..., x7 ) que, como se dijo, vienen
a ser los pesos y sesgos de la RNA.
94
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
0 1 es la tasa de aprendizaje
d E (x) es la direccin de bsqueda (del descenso ms rpido)
d = E (x) es el tamao de paso
Las RNA de aprendizaje no supervisado, son las que no requieren los valores esperados
T [T1 , T2 ,....., TM ], Tk m , solo de una matriz de datos P [ p1 , p2 ,....., p N ], pk n .
Estas redes tienen una sola capa, cuyo nmero de neuronas lo elige el usuario. Su funcin
es agrupar los vectores en grupos o clster, empleando una de las normas o mtricas que
sern descritas en la seccin 5.2 de este captulo. Adems MATLAB ofrece visualizaciones
grficas de los clster en dos dimensiones, bajo ciertas formas o estructuras geomtricas,
denominadas Topologas. Existen muchas Topologas; el usuario elige. Esto se explicar en
detalle, cuando se aborde las RNA de Kohonen o Self-Organizing Maps (SOM) en el
pargrafo 5 de este captulo siguiente.
donde:
Rango= matrix de nx2, formado por los mnimo y mximo de cada fila de la matriz de
datos de entrada, que tiene n filas. Si los datos de entrada fuera solo una fila, entonces
Rango ser una matriz de 1x2
95
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
PF=Funcin que mide la Performance (por defecto = 'mse'), y retorna una red neuronal
Backpropagation de k capas.
>>load fisheriris
El Workspace indica que se tiene dos archivos meas y species. La primera contiene 150
filas con las medidas del ancho y largo de los ptalos y spalos de un grupo de flores. En el
segundo se registran los nombres de las tres flores. Las 50 primeras corresponden Setosa,
las 50 siguientes a Verginica y las 50 ltimas a Versicolor.
96
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
De este modo se est guardando en la matriz P (4x150) las medidas del ancho y la longitud,
de los ptalos y spalos, de tres tipos de flores: Setosa, Versicolor y Verginica,
identificadas con los nmeros o cdigos 1, 2 y 3 respectivamente. Los 150 cdigos forman
la matriz T (1x150). (Ver Tabla 1)
Tabla 1
Columnas P1 P2 P3 P4 P5 P6 P7
Ancho petalo 2 24 13 2 20 19 16
Longitud petalo 14 56 45 10 52 51 47
Ancho sepalo 33 31 28 36 30 27 33
Longitud sepalo 50 67 57 46 65 58 63
Tipo de flor 1 3 2 1 3 3 2
Setosa 1
Versicolor 2
Verginica 3
El problema es crear una RNA Backpropagation que se entrene con los cdigos que
identifica a cada tipo de flor y que sea capaz de diferenciar uno del otro, slo por las
dimensiones de sus ptalos y spalos.
[ptrans,ps2] = processpca(pn,0.001);
97
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
Creada la red, automticamente se inicializan los pesos y los sesgos de la primera capa.
Estos se pueden ver con net.IW{1,1} y net.b{1,1} respectivamente.
Luego de ejecutar el comando train sale una interface (Fig.1) indicando entre otras cosas
que luego de 22 iteraciones se logr el entrenamiento de la red. Aparecen 3 botones que
98
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
permitirn ver las curvas de entrenamiento de la red (Fig. 3). Los estados del entrenamiento
y las correlaciones de las etapas de entrenamiento, validacin y test.
Fig.1 Fig.2
Fig.4 Fig.5
Para graficar un nuevo cuadro con las curvas de entrenamiento, de validacin y prueba,
agregando el ttulo, leyenda, ejes, como aparece en el grfico de la Fig. 6, correr el
siguiente programa: Fig. 6
CURVAS DE ENTRENAMIENTO, VALIDACION Y TEST
plot(tr.epoch, tr.perf, tr.epoch, tr.vperf, tr.epoch, tr.tperf) 3.5
legend('ENTRENAMIENTO','VALIDACION','TEST',-1); ENTRENAMIENTO
3
ylabel('ERROR CUADRTICO'); VALIDACION
TEST
xlabel('ITERACIN') 2.5
ERROR CUADRTICO
title('CURVAS DE ENTRENAMIENTO:')
2
1.5
0.5
0
0 5 10 15 20 25
ITERACIN
99
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
>>size(rn)
ans = 1 150
La salida est formada por la grfica de la recta y=mx+b, los valores de la pendiente y su
interseccin con el eje Y. Adems se tiene el coeficiente de correlacin r.
Fig. 7
100
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
end
Na=length(X); 25
hist(E,X) 20
grid on
set(get(gca,'Children'),'FaceColor',[.6 .5 1]); 15
hold on
10
ylabel('FRECUENCIA');
xlabel('ERRORES'); 5
title('ERROR ENTRE LA RESPUESTA Y EL VALORESPERADO');
Frr=hist(E,X); 0
-0.2 0 0.2 0.4 0.6 0.8
format short; ERRORES
Frec=[X',Frr']
ERROR FRECUENCIA
0.0000 23
0.0494 45
0.0987 20
0.1480 14
0.1974 15
0.2467 8
0.2960 4
101
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
0.3453 6
0.3947 5
0.4440 4
0.4933 3
0.5427 1
0.5920 2
El histograma revela que los errores se acumulan en el rango [0, 0.3453]. Los errores
mayores son poco frecuentes.
Fig.9
RESPUESTA RO DE LA RNA VS VALOR ESPERADO TO
3.5
TO=CODIGO ORDENADO
RO=RESPUESTA DE LA RNA
3
EO= ERROR
2.5
VALORES DE RO y TO
1.5
0.5
0
0 50 100 150
CANTIDAD DE FLORES
102
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
Se observa que la nube de puntos de RO se agrupa muy cerca de los puntos de TO. La
RNA identific casi sin errores al grupo Setosa. En cambio en los otros grupos se han
producido errores.
Si se desea un mayor anlisis se puede estudiar los errores para cada grupo de flores.
ans =1 30 1 30
Fig. 10
103
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
La salida est formada por la grfica de la recta y=mx+b, los valores de la pendiente m y su
interseccin b con el eje Y. Adems se tiene el coeficiente de correlacin r.
104
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
% Fig 12
ERROR FRECUENCIA
0.0012 9 ERROR ENTRE LA RESPUESTA Y EL VALORESPERADO
10
0.0434 6
0.0856 4
8
0.1277 1
0.1699 1 FRECUENCIA
0.2121 2 6
0.2543 1
0.2965 1 4
0.3387 1
0.3809 2 2
0.4231 1
0.4653 0
0
0.5075 1 0 0.2 0.4 0.6 0.8
ERRORES
El histograma revela que los errores se acumulan en el rango [0, 0.3453]. Los errores
mayores son poco frecuentes.
Fig.12
105
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
2.5
1.5
0.5
0
0 5 10 15 20 25 30
CANTIDAD DE FLORES
e) Conclusiones
-El pronstico Rb de la RNBP tiene una correlacin del 97.5% con el valor esperado Tb.
-En el caso de la Setoza (1) el acierto es del 100%.
-En el caso del Versicolor (2) el error es <=0.5.
-En el grupo Verginica hay errores>=0.5.
Consideremos una RNA de 2 capas, como el que se utiliz en 4.3 para explicar el
aprendizaje de una red. Ya se dijo que el entrenamiento consiste en minimizar el error, en
media cuadrtica entre los vectores T y la respuesta de la RNA en cada componente del
vector de entrada P . Esto nos conduce al desarrollo de un programa que se har en
MATLAB. RED NEURONAL:
0.8
SALIDA R
3.1 Programa propio en MATLAB 0.6
VALOR ESPERADO
0.4
% vector de entrada P=particin de [-2,2] y la respuesta
0.2
esperada T
a=-2;
EJE Y
0
b=2;
-0.2
-0.4
106 -0.6
-0.8
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
EJE X
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
N=50;
h=(b-a)/N;
for i=1:N+1
P(i)=a+h*(i-1);
T(i)=sin(pi*P(i)/3)*cos(pi*P(i)/6);
end
% Inicializacin de pesos, ganancias y el valor pequeo s
W1=[-0.2;0.5];
b1=[0.7;-0.2];
W2=[0.1; 0.3];
b2=0.15;
s=0.1;
KK=300;
107
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
Creacin de la red
Rango=minmax(pn);
net = newff(Rango,[3 1],{'tansig' 'purelin'},'trainlm');
[net,tr]=train(net,Enp,VEt,[],[],val,test);
108
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
Simulacin
rn = sim(net,pn);
R=mapstd('reverse',rn,ts);
[m,b,r]=postreg(R,T);
109
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
RED NEURONAL:
0.8
0.6
SALIDA DE LA RED
VALOR ESPERADO
0.4
0.2
EJE Y
-0.2
-0.4
-0.6
-0.8
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
EJE X
110
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
Ejercicios
1. Desarrolle en MATLAB una red neuronal Backpropagation, de dos capas, la primera con
3 neuronas y la segunda de 1 neurona y con funciones de transferencia tansig, purelin
respectivamente. Luego entrene la red neuronal con los siguientes datos entrada P y el
valor esperado T, donde sus componentes estn descritos por:
a=0;b=4;
N=100;
h=(b-a)/N;
for i=1:N+1
P(i)=a+h*(i-1);
T(i)=4*cos(pi*P(i)/4);
end
n T m
2. Describa la transformacin
correspondiente a la capa de neuronas del
ejercicio 1.
3. Genere en MATLAB una red neuronal Backpropagation, de dos capas, la primera con 4
neuronas y la segunda de 1 neurona y con funciones de transferencia tansig, purelin
respectivamente. Luego entrene la red neuronal con los mismos datos de entrada del
ejercicio 1.
4. Describa mediante vectores, matrices y transformaciones, una red de 2 neuronas, donde
la primera tiene dos entradas (dentritas) la segunda una entrada. Las funciones de
transferencia son tansig y logsig respectivamente.
BIBLIOGRAFIA
[1] Marquardt, D., "An Algorithm for Least-Squares Estimation of Nonlinear Parameters,"
SIAM J. Appl. Math. Vol. 11, pp 431-441, 1963.
[2] Levenberg, K., "A Method for the Solution of Certain Problems in Least Squares,"
Quart. Appl. Math. Vol. 2, pp 164-168, 1944.
111
Universidad Nacional de Ingeniera. Facultad de Ingeniera Industrial y de Sistemas. Unidad de Post Grado
Maestra en Ingeniera Industrial. Curso: Matemtica para el Modelamiento de Sistemas de Produccin y Operaciones.
Pedro C. Espinoza H.
112