Вы находитесь на странице: 1из 3

UNIVERSIDAD PEDAGÓGICA NACIONAL

DEPARTAMENTO DE TECNOLOGÍA
MTIAE - TALLER ESPECÍFICO II

Carolina Avila Coral


2 de noviembre de 2009

IMPLEMENTACIÓN DE CAPERUCITA ROJA EN UNA RED BACKPROPAGATION

Los valores asignados a la entrada y salida son valores entre 0 y 1. El valor de 0


representa que la característica o acción NO se presenta, el valor de 1 representa que
la característica o acción SI se presenta.

Características de entrada

Se realiza el modelado de la red backpropagation, se describe el significado de cada


columna de entrada.

Col1 Col2 Col3 Col4 Col5 Col6


Orejas Dientes Ojos Arrugado Amable Bien
grandes grandes grandes parecido

Características de salida

Se describe el significado de cada columna de salida

Col1 Col2 Col3 Col4 Col5 Col6


Corre Grita Busca al Ofrece Beso en la Coquetea
leñador alimento mejilla

Variables de la red

Para el entrenamiento de la red backpropagation en matlab se definen 3 variables:

• Neuronas: Número de neuronas usadas en la red


• Epochs: Número máximo de iteraciones de entrenamiento de la red
• Error: Máximo error permitido en la salida

Las variables fueron modificadas varias veces hasta obtener una salida cercana a la
esperada.

La salida esperada es:


1.0000 1.0000 1.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 1.0000 1.0000 1.0000
0.0000 0.0000 0.0000 1.0000 1.0000 1.0000

El primer intento se realizó con 5 neuronas y un error de 0.01, el entrenamiento se


realizó en 1 epoch. El resultado de la simulación de la entrada con esta red fue:

0.9614 0.9614 0.9614 0.0740 -0.0014 0.0208


0.0337 0.0337 0.0337 0.9330 1.0049 0.4694
0.1356 0.1356 0.1356 0.9307 1.0031 0.4042
El segundo intento se realizó con 5 neuronas y un error de 0.0001, el entrenamiento
se realizó en 3 epochs. El resultado de la simulación de la entrada con esta red fue:

0.9999 0.9999 0.9999 0.0273 -0.0000 0.0007


-0.0000 -0.0000 -0.0000 0.9782 1.0001 0.4499
0.0009 0.0009 0.0009 0.9790 1.0000 0.4655

El tercer intento se realizó con 5 neuronas y un error de 0.000001, el entrenamiento


se realizó en 4 epochs. El resultado de la simulación de la entrada con esta red fue:

0.9999 0.9999 0.9999 0.0273 -0.0000 0.0007


-0.0000 -0.0000 -0.0000 0.9782 1.0001 0.4499
0.0009 0.0009 0.0009 0.9790 1.0000 0.4655

El cuarto intento se realizó con 10 neuronas y un error de 0.000001, el entrenamiento


se realizó en 2 epochs. El resultado de la simulación de la entrada con esta red fue:

1.0001 1.0001 1.0001 -0.0008 0.0001 0.0002


-0.0001 -0.0001 -0.0001 0.9991 0.9999 0.9999
0.0001 0.0001 0.0001 1.0003 1.0001 1.0003

El quinto intento se realizó con 10 neuronas y un error de 0.00000001, el


entrenamiento se realizó en 3 epochs. El resultado de la simulación de la entrada con
esta red fue:

1.0000 1.0000 1.0000 -0.0000 -0.0000 -0.0000


-0.0000 -0.0000 -0.0000 1.0000 1.0000 1.0000
0.0000 0.0000 0.0000 1.0000 1.0000 1.0000

La prueba

Se definieron 3 nuevos personajes y se probaron las reacciones de caperucita ante


estos personajes.

• Personaje 1: Un leñador bien parecido pero que no es amigable


• Personaje 2: Un leñador que es amigable, pero es medio arrugado y no muy
bien parecido.
• Personaje 3: Una abuelita de grandes ojos, arrugada, amable y más o menos
simpática.

Los valores dados a cada características de estos personajes se resumen en la


siguiente tabla.

Característica Col1 Col2 Col3 Col4 Col5 Col6


Orejas Dientes Ojos Arrugado Amable Bien
Personaje grandes grandes grandes parecido
Personaje 1 0 0 0 0 0 1
Personaje 2 0 0 0 0.5 1 0.5
Personaje 3 0 0 1 1 1 0.5

Después de realizar la simulación de la red con los datos de prueba, se obtienen los
siguientes resultados.
Característica Col1 Col2 Col3 Col4 Col5 Col6
Corre Grita Busca al Ofrece Beso en Coquetea
Personaje leñador alimento la mejilla
Personaje 1 0.3774 0.3774 0.0000 -0.0990 0.0000 0.1511
Personaje 2 1.0404 1.0404 1.0000 0.9614 1.0000 0.7112
Personaje 3 0.1388 0.1388 1.0000 1.2596 1.0000 0.3451

Programa en matlab

clc;
neuronas = 10;
error = 0.00000001;
iteraciones = 20;

% Entradas
% col1 col2 col3 col4 col5 col6
% Orejas Dientes Ojos Arrugado Amable Bien parecido

entrada=[[1 1 1 0 0 0]; [0 0 0 1 1 0]; [0 0 0 0 1 1]];

% Salidas
% col1 col2 col3 col4 col5 col6
% Correr Gritar Busca leñador Ofrece alimento Beso mejilla Coquetea

salida=[[1 1 1 0 0 0]; [0 0 0 1 1 1]; [0 0 0 1 1 1]]

% Se inicia la red
net = newff(entrada, salida, neuronas);

% Se definen los parámetros de entrenamiento


net.trainParam.epochs=iteraciones;
net.trainParam.goal=error;

% Se entrena la red
net = train(net, entrada, salida);

% Se simula la red con la entrada


Y = sim(net,entrada)

% Se simula la red con la prueba


prueba = [[0 0 0 0 0 1]; [0 0 0 0.5 1 0.5]; [0 0 1 1 1 0.5]];
Y = sim(net, prueba)

Вам также может понравиться