Está en la página 1de 81

Redes Neuronales en MATLAB 6.

1
Redes Neuronales con MATLAB

Dos formas de utilizarlo:

Lineas de comando, en m-files

Interface grfica (NNTool)


Redes Neuronales con MATLAB

Dos formas de utilizarlo:

Lineas de comando, en m-files

Interface grfica (NNTool)


Pasos para utilizar las RNA

Definir los patrones


Inicializar la red
Definir los parametros de
entrenamiento
entrenar la red
Testear la red
Problema de Or Exclusivo
1
x2
0

x1

X1 X2 valor
0 0 0
0 1 1
1 0 1
1 1 0
Pasos para utilizar las RNA

Definir los patrones


Inicializar la red
Definir los parametros de
entrenamiento
entreinar la red
Testear la red
Definicion de Patrones

X1 X2 valor
0 0 0
0 1 1
1 0 1
1 1 0

Vector de entrada: P
0 0 1 1
P [0 0 1 1; 0 1 0 1]
0 1 0 1

Vector de sada: T 0 1 1 0
Pasos para utilizar las RNA

Definir los patrones


Inicializar la red
Definir los parametros de
entrenamiento
entrenar la red
Testear la red
Inicializando la Red Neural

Redes Feed-forward: Funcion newff

net = newff( [min(P')' max(P')'], (limites de patrones de entrada)


[N_hidden 1], (nmero de neuronas de cada capa)
{'tansig' 'logsig'}, (funion de ativaion de cada capa)
'traingd'); (algoritmo de entrenamiento)
Funciones de Ativacion

purelin Linear
logsig Sigmide
tansig Tangente hiperblica
satlin(s) Lineal con saturacin
Algoritmos de entrenamiento

traingd Gradient descent backpropagation


traingdm Gradient descent backpropagation com momentum
traingda Gradient descent backpropagation com taxa adaptativa
traingdx Gradient descent backpropagation com momentum e
taxa adaptativa
trainlm Levenberg-Marquardt backpropagation (default)
trainrp Resilient backpropagation (Rprop)
Pasos para utilizar las RNA

Definicion de patrones
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Definicion de parametros de
entreinamento

net.trainParam.epochs = 100; Nmero de epochs


net.trainParam.goal = 1e-8; Error final deseado
net.trainParam.lr = 0.01; Tasa de aprendizaje
net.trainParam.show = 25; Cada cuanto (epochs)

net.trainParam.mc = 0.9; Tasa de momentum

net.trainParam.lr_inc = 1.05; Tasa de incremento da l.r.


net.trainParam.lr_dec = 0.7; Tasa de decremento da l.r.
net.trainParam.max_perf_inc = 1.04; Incremento mximo do error
Pasos para a entrenar una RNA

Definir los patrones


Inicializar la red
Definir los parametros de
entrenamiento
entrenar la red
Testear la red
Entrenando la Red Neural

net = train(net, P, T);


Pasos para a testear una RNA

Definir los patrones


Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Testeando la Red Neural

C = sim(net, P);
M-file desenvolvida para o XOR

xor1.m
Redes Neuronales con MATLAB

Dos formas de utilizarlo:

Lineas de comando, en m-files

Interface grfica (NNTool)


Interface Grfica NNTool
Pasos para utilizar las RNA

Definir los patrones


Crear la red
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Pasos para utilizar las RNA

Definir los patrones


Crear la red
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Definicion de Patrones
Definicion de Patrones
Definicion de Patrones
Definicion de Patrones
Pasos para utilizar las RNA

Definir los patrones


Crear la red
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Creando la Red Neuronal
Creando la Red Neuronal
Visualizando la Red Neuronal
Visualizando la Red Neuronal
Pasos para utilizar las RNA

Definir los patrones


Crear la red
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Inicializando la Red Neuronal
Inicializando la Red Neuronal
Inicializando la Red Neuronal
Pasos para utilizar las RNA

Definir los patrones


Crear la red
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Definiendo parametros de
entrenamiento
Definiendo parametros de
entrenamiento
Definiendo parametros de
entrenamiento
Pasos para utilizar las RNA

Definir los patrones


Crear la red
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Entrenando la Red Neuronal
Entrenando la Red Neuronal
Pasos para utilizar las RNA

Definir los patrones


Crear la red
Inicializar la red
Definir los parametros de
entrenamiento
Entrenar la red
Testear la red
Testeando la Red Neuronal
Testeando la Red Neuronal
Testeando la Red Neuronal
Testeando la Red Neuronal
Testeando la Red Neuronal
Testeando la Red Neuronal
Exportando los Datos
Exportando los Datos
Problema de Or Exclusivo
1
x2
0

x1

X1 X2 valor
0 0 0
0 1 1
1 0 1
1 1 0
Redes Neuronal con Capas ocultas
Redes Neuronal con Capas ocultas
Redes Neuronal con Capas ocultas
Redes Neuronal con Capas ocultas
Redes Neuronal con Capas ocultas
Redes Neuronal con Capas ocultas
Reconocimento de Dgitos
Reconocimento de Dgitos
Reconocimento de Dgitos
Reconocimento de Dgitos
Definicion de los patrones de
entrada
0

0 1 0 0 1

1
1 1 0 0 0

0
0 1 0 0
0

0 1 0 0 1

0
1 1 1 0 0

0
Definicion de los patrones de
entrada
0

0 1 1 0 1

0
1 0 0 1 0

1
0 0 1 0
0

0 1 0 0 0

1
1 1 1 1 0

1
Definicion de los patrones de
entrada

Cada dgito (patron): 20 bits


Nmero de patrones: 10 dgitos
Representacion: Matriz 20 x 10
Cada columna representa un dgito
Cada linea representa un bit
Cada bit est asociado con una neurona
de entrada
Definicion de los patrones de
entrada

digitos.txt
Definicion de los patrones de
entrada
1

0
Definicion de los patrones de
salida

saidas.txt
Conversion de los Archivos

>> load digitos.txt


>> save digitos
>> load saidas.txt
>> save saidas
Importacion de los Datos p/
NNTool
Importacion de los Datos p/
NNTool
Importacion de los Datos p/
NNTool
Definicion de la Red

Network name: network15


Tipo:
Tipo feed-forward backprop
Input Ranges:
Ranges Get from input
Training Function:
Function TRAINGDM
Number of layers:
layers 2
Layer 1:
1 15 neurons TANSIG
Layer 2:
2 10 neurons PURELIN
Definicion de la Red

Network name: network25


Tipo:
Tipo feed-forward backprop
Input Ranges:
Ranges Get from input
Training Function:
Function TRAINGDM
Number of layers:
layers 2
Layer 1:
1 25 neurons TANSIG
Layer 2:
2 10 neurons PURELIN
Definicion de la Red

Network name: network35


Tipo:
Tipo feed-forward backprop
Input Ranges:
Ranges Get from input
Training Function:
Function TRAINGDM
Number of layers:
layers 2
Layer 1:
1 35 neurons TANSIG
Layer 2:
2 10 neurons PURELIN
Entrenamiento de la Red

Epochs:
Epochs 10000
Goal (MSE):
(MSE) 0.5e-3
Learning Rate (lr):
(lr) 0.1
Momentum:
Momentum 0.0
Entrenamiento de la Red

Epochs:
Epochs 10000
Goal (MSE):
(MSE) 0.5e-3
Learning Rate (lr):
(lr) 0.4
Momentum:
Momentum 0.0
Entrenamiento de la Red

Epochs:
Epochs 10000
Goal (MSE):
(MSE) 0.5e-3
Learning Rate (lr):
(lr) 0.9
Momentum:
Momentum 0.0
Entrenamiento de la Red

Epochs:
Epochs 10000
Goal (MSE):
(MSE) 0.5e-3
Learning Rate (lr):
(lr) 0.1
Momentum:
Momentum 0.4
Entrenamiento de la Red

Epochs:
Epochs 10000
Goal (MSE):
(MSE) 0.5e-3
Learning Rate (lr):
(lr) 0.9
Momentum:
Momentum 0.4
Test de la Red

1 bit errado 2 bits errados 3 bits errados

También podría gustarte