Red fuzzy kohonen

Solo disponible en BuenasTareas
  • Páginas : 16 (3798 palabras )
  • Descarga(s) : 0
  • Publicado : 1 de octubre de 2010
Leer documento completo
Vista previa del texto
Redes Neuronales

Capítulo 2

Gerardo Colmenares

CAPÍTULO 2 TLU(s) MULTICAPAS Se pueden implementar funciones en TLU con más de una capa.
x1
0 .5

x2

1.5

2

3

z

x3

1.5

2

x4

0. 5

No existen, en la actualidad, mecanismos de entrenamiento que permita conocer los pesos sinápticos de las redes TLU multicapas. Algunos mecanismos de aprendizaje, como el Adaline,el Procesador cuadrático, el Madaline, la máquina comité, etc, pretenden resolver la falta de captación no lineal de los algoritmos seminales de entrenamiento. Widrow y Hoff (1960), introducen el algoritmo Least Mean-Squared (LMS) para derivar los adaptadores lineales ADALINE y MADALINE en problemas de clasificación. Esto por supuesto conduce a pensar: 1. Los TLU resuelven separabilidad en laclasificación de problemas típicamente lineales. Es decir son buenos clasificadores lineales. 2. Los TLU multicapas podrían resolver teóricamente cualquier problema pero no se dispone de procedimientos y mucho menos de algoritmos generales de entrenamiento para estos casos. Backpropagation (Retropropagación) surge como un método alternativo para resolver la generalidad no alcanzada por los TLU.
40 Redes Neuronales

Capítulo 2

Gerardo Colmenares

BACKPROPAGATION Qué es Backpropagation o Retropropagación? 1. También conocido como retropropagación del error. 2. Método para calcular el gradiente del error Recordemos lo que se mencionó al principio de este texto. (Werbos, 1974) (Parker, 1985) (Rumelhart, 1986). Se desarrolla el algoritmo Backpropagation como un mecanismo de aprendizajepara perceptrones multicapas. De alta popularidad para la solución de problemas de clasificación y pronóstico. Es un método de entrenamiento general para redes multicapas, requiriendo diferenciabilidad en la capa de salida. Es decir la función debe ser diferenciable (sigmoide). En la siguiente figura podemos observar una neurona básica en backpropagation.

x1 x2
• xl 1 •

w1 w2 • • wl w l +1z= 1 1 + e −n

∑ xi w i

n

si n >> 0 entonces z si n in the next line include the name of file % where is the matrix (the matrix name is P)

% PREPARACION DE LA MATRIZ P %======================= clear all; echo off; final_row = 0; flag =0; flag3=0; clc flag4=menu('Los datos originales son:',... 'Un archivo en formato MAT',... 'Un archivo en formato ASCII',... 'Ninguna opción (Default)');disp(''); clc; fprintf('\n\n PROCEDIMIENTO BACKPROPAGATION\n\n') fprintf(' Preparación de los datos\n\n') disp ('SELECCIONANDO UN ARCHIVO'); if flag4 == 1 flag3 = 1; IN = input('Indique la ruta y archivo MAT: (entre apóstrofes) '); clc disp('Archivos MAT. Los datos deben estar en formato MAT'); disp('') disp('Presione cualquier tecla para continuar'); pause load(IN); disp('Desde la siguientelista, seleccione el nombre del archivo'); whos TEMPO = input('Indique el nombre seleccionado: '); clc disp('Cargando archivo MAT en TEMPO.'); disp('Presione cualquier tecla al estar listo.'); pause echo off elseif flag4==2 flag=1; 58

Redes Neuronales

Capítulo 2

Gerardo Colmenares

while(flag==1) disp('Indique la ruta y archivo ASCII:'); IN = input('(entre apóstrofes. Ej:c:\mydata.dat):'); file = fopen(IN,'rw'); if file == -1 fprintf('\n\nError: Este archivo no existe. Trate de nuevo...') flag=1; else flag=0; end end fprintf ('\n\n Cargando el archivo...\n\n') data = fscanf(file,'%f'); variables = input('Indique el total de variables (patrones): '); rows = length(data)/variables; data = reshape(data,rows,variables); TEMPO = data; end if flag3 == 1 flag = input(' Otro archivo( 0 si/ 1 no): '); fclose('all'); flag3 =1; end % GUARDANDO LOS PATRONES DE NTRADA Y SALIDA % ========================================================= if flag3 == 1 clc type_data=menu('Clase de datos a guardar:',... 'Ejemplos de salida para la red',... 'Ejemplos de entrada para la red'); disp('') if type_data ==1 Out=TEMPO; figure; plot(Out) save TestOut.mat Out clear TEMPO; else Inp=TEMPO; save...
tracking img