IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
Manual NeuroSolutions
1. INSTITUTO POLITÉCNICO
NACIONAL
PROFESOR : M. en C. Edmundo René Durán
Camarillo.
MATERIA : Sistemas Neurodifusos I.
EQUIPO :
• Maldonado Orduño Jessie.
• Munguía Solache Martha.
2. 2
• Ruíz Hidalgo Héctor Alejandro.
FECHA : 17 de Octubre de 2001.
3. 3
PERCEPTRÓN MULTICAPA (DEMO AVANZADO)
INTRODUCCIÓN
En este demo se muestra como es que los componentes de una
red pueden interconectarse localmente. Neurosolutions permite
construir redes neuronales como una máquina de flujo de datos;
como un conjunto ordenado de componentes neuronales que
procesan y propagan datos. Esta orientado a objetos y sus
componentes están organizados en familias; las dos más importantes
son las familias del Axón y Sinapsis. Su página Web :
http://www.nd.com
AXÓN
• Miembro base de la familia del mismo nombre.
• Implementa la función de transferencia más simple, la cual es la
identidad de una función.
• El axón simplemente nos sirve como la capa de entrada.
• Representa una capa de elementos de procesamiento(PE), la
cual puede ser lineal o no lineal.
SINAPSIS COMPLETA (FULLSYNAPSE)
• Miembro de la familia Sinapsis.
• A través de una matriz de pesos esta sinapsis interconectará
completamente cada elemento de procesamiento de un axón
tanto en sus entradas como en sus salidas. De esta manera se
forma una máquina de flujo de datos.
• Cualquier dato insertado en el axón de entrada se propagará a
este componente para el procesamiento.
• Otro componente de esta familia es la sinapsis arbitraria
(ArbitrarySynapse), la cual esta conectada escasamente a las
entradas y salidas de sus axones.
4. 4
Axón de Tangente Hiperbólica (TanhAxon) :
• Miembro de la familia Axón.
• Este funcionará como una capa oculta no lineal de la red.
• Recibe información de la sinapsis con la cual calcula la tangente
hiperbólica de la misma para arrojar un resultado.
• Existen muchos miembros de esta familia tales como : Axón
Sigmoidal (SigmoidAxon), SoftMaxAxon, WinnerTakeAllAxon y el
Axon Gaussiano (GaussianAxon).
PLANO DE ACTIVACIÓN HACIA DELANTE (Forward Activation Plane):
• Ahora ya tenemos un Perceptrón Multicapa.
• La red construida hasta el momento se conoce como “Plano de
activación hacia adelante”.
• Si se agregan datos en la entrada del axón, cada componente
procesará estos datos usando un conjunto compuesto de pesos
y su resultado aparecerá en la salida. Esta es la activación de
la red.
• Es importante notar que hemos construido una red con topología
hacia delante únicamente; por lo que todavía no cuenta con una
dinámica de aprendizaje.
5. 5
Archivo (File) :
• La red necesita una fuente de datos como entrada, por lo cual
se añade un componente archivo que es un miembro de la clase
de entrada.
• Con este componente se pueden leer datos de un archivo en
una variedad de formatos.
• Normaliza y segmenta un archivo de datos.
• Otros componentes de entrada incluyen una función y
generadores de ruido.
Control Estadístico (StaticControl):
• Componente miembro de la clase control.
• Controla la activación hacia delante de la red, sincronizando el
flujo de datos entre los componentes.
• Permite al usuario para especificar los parámetros tales como
las Épocas y el corrimiento de la red, para cada paso por los
datos y para abrir y guardar los pesos.
Corrimiento de la red hacia delante :
• Se ha agregado una matriz de prueba en la entrada y salida de la
red.
• Al presionar el botón Step Exemplar en la red y se observará que
mientras la entrada tiene 4 ejemplares para el problema de la
XOR, la salida no produce el valor esperado.
• Esto ya que los pesos son aleatorios y al activarse la red no se
da un aprendizaje inmediato. La salida se repite para 4
ejemplares por época.
6. 6
Observando los pesos :
Al agregar la matriz de prueba en la primera sinapsis, la cual es
de 2x2 ya que es una Sinapsis completa que conecta dos entadas a 2
axones en la capa oculta. Corra la red y observe que los pesos no
cambian, esto es ya que no hay aprendizaje en el pase de activación
hacia delante.
Plano Backpropagation :
• Implementa el plano de propagación hacia atrás.
• Los componentes de este plano forman una máquina de flujo de
datos que transmite el error desde la salida del plano de
activación hasta la entrada.
Criterio L2 :
7. 7
Miembro de la familia ErrorCriteria, la cual liga el plano de
activación y el plano de retropropagación. El componente Archivo
se adjunta al criterio L2, el cual da la respuesta deseada del sistema.
Este criterio toma la salida de la red y la respuesta deseada,
para computar el costo como el error cuadrático e inyectar el error
que se deriva del costo en el plano de retropropagación.
Plano de gradiente :
Sus componentes actualizan los pesos del componente al que
esta ligado, se basa en la actividad local para el plano de activación
hacia delante y el gradiente de primer orden del plano de
retropropagación.
Control Estático hacia atrás :
• Miembro de la clase Control.
• Controla la activación hacia atrás de la red y sincroniza la
actualización de los pesos.
• Permite también el uso de un aprendizaje tipo batch(todos los
patrones) y on-line(patrón por patrón); además automatiza la
adición de retropropagación y los componentes del gradiente
durante la construcción de la red.
8. 8
Poniéndolo todo junto :
Al tener toda la red que soluciona el problema de la XOR.La
gráfica de barras se colocó en el criterio L2 para probar el costo
promedio (error cuadrático mínimo). Se debe correr la red y
observar el aprendizaje.
Verificar el aprendizaje :
Para asegurarse de que la red ha aprendido el problema de la
XOR, se puede correr paso a paso el modelo presionando el botón
“Step Exemplar”.
9. 9
PASOS PARA EL DISEÑO DE UNA RED
BACKPROPAGATION CON EL NEURAL WIZARD
Se debe seleccionar el item NeuralWizard del menú Tools. El panel
aparecerá en el centro de la pantalla con una lista de los modelos
neuronales que la herramienta usa, dando una breve descripción de la
misma. Seleccione el modelo neuronal deseado dando un solo clic
en su nombre en la lista.
Abrir el panel del NeuralWizard
Son 7 los pasos básicos para la construcción de una red
neuronal, los cuales se seguirán secuencialmente al dar clic en el
botón del panel para desplazarnos por el proceso de
construcción de la red que se describe a continuación :
NOTA : Los pasos 3, 4 y 5 dependen del modelo escogido y los pasos
1,2,6 y 7 son comunes a los modelos.
1. Selección de los datos de entrada y datos deseados :
Este paso liga al Neurosolutions con datos almacenados en
algún archivo con formato de columnas tipo ASCII, con datos de tipo
entero, de punto flotante(decimales o exponenciales) y símbolos no
numéricos. El usuario debe seleccionar un archivo de entrada y otro
que contenga la salida deseada. En el panel de entrenamiento de
datos se presiona el botón Browse para abrir una ventana en la que
se escoge dicho archivo; se tienen 2 opciones : Tener la entrada y
salida en el mismo archivo o en 2 archivos independientes.
En este caso se debe escoger el archivo (c:/Program
Files/NeuroSolutions/Wizards/NeuralWizard)Sleep2.asc. En un inicio,
10. 10
todos se toman como entradas pero se pueden cambiar las columnas
a tipo “InputÓ(entrada), “DesiredÓ(salida) o “SkipÓ(Ignorar ese
dato) al seleccionar la columna y presionar el botón correspondiente.
La caja Prediction se selecciona para cambiar el modo de
clasificación a una predicción, en la que la salida deseada es la
entrada dada.
La primera línea siempre es el título y los datos inician a partir de
la segunda línea. Los delimitadores pueden ser tabulaciones o
espacios.
EJEMPLO : Archivos con columnas simbólicas que se expanden
a columnas múltiples.
11. 11
Si no se tiene en la selección alguna salida deseada saldrá la
siguiente pantalla, en otro caso se brincará y pasará a la siguiente.
La red requiere de entrenamiento supervisado, por lo que
ninguna columna de este archivo puede ignorarse, además de que
todas se etiquetan como salidas.
12. 12
2. Validación cruzada y Prueba de datos
El conjunto de validación cruzada se utiliza para determinar el
nivel de generalización en el conjunto de entrenamiento. Se ejecuta
en concurrencia con el entrenamiento de la red. Los pesos de la
red se congelan y la validación se alimenta a través de la red y los
resultados se reportan. El criterio para detener el controlador se
puede basar en el error en lugar del conjunto de entrenamiento.
Seleccionar Read from Separate File cuando se tienen dos archivos
uno de entrada y otro de salida en otro caso Read from existing file.
3. Topología Neuronal :
Depende del modelo neuronal, nos da una breve explicación
sobre la misma, desplegando el nombre de la red, su diagrama a
bloques con aspectos relevantes y selecciones de las sinapsis hechos
hasta el momento. Número de elementos de procesamiento de
entrada y salida, que en caso de no ser correctos deberemos
retroceder para hacer cambios en alguno de los paneles previos.
13. 13
En este panel se especifica el número de capas ocultas, creando el
número de paneles igual a este para poder configurar cada una de las
capas. Las capas ocultas son opcionales y se puede poner 0 en
caso de no quererlas.
4. Configuración de las capas ocultas :
En este panel especificamos las opciones de las capas ocultas
de la red, así como de la capa oculta.
14. 14
En esta parte, se decide el número de elementos de
procesamiento, su función de transferencia, la regla de aprendizaje y
los parámetros requeridos por la misma.
A continuación, se muestra una tabla de las posibles funciones
de transferencia :
Función de Descripción
transferencia
Axon Almacena la
entrada
BiasAxon Agrega un bias
LinearAxon Agrega bias y
escalas
TanhAxon Tangente
Hiperbólica(-1/+1)
SigmoidAxon Sigmoidal (0/1)
SoftMaxAxon Suma uno a la
salida
Dependiendo de la función de aprendizaje aparecerán distintas
opciones y datos que configurar tales como :
Nombre Regla de aprendizaje
Step Información del gradiente
Moment Cambio en el gradiente y
um los pesos
Quickpr Taza de cambio en el
op gradiente
15. 15
5. Control de la Simulación :
Aquí se selecciona como entrenar la red y cuando parar la
simulación. El aprendizaje depende del tipo de red que se utilice.
En este caso es supervisado, para el cual debemos especificar
el número máximo de épocas que especifica el número de iteraciones
para el entrenamiento. Se especifica el mínimo error requerido
y el tipo de actualización de los pesos.
16. 16
6. Prueba de la Configuración :
Es una de las ventajas del Neurosolutions es la prueba de la
habilidad en el diseño de la red. El NeuralWizard esta configurado
para probar la curva de error de la función(MegaScope), la salida de
la red (MatrixViewer) y la salida deseada(DataWriter).
Los tipos de pruebas son :
Nombre Descripción
BarChart Tamaño en barras
Hinton Tamaño en cuadros
ImageVi Nivel de intensidad
ewer
MatrixVi Vista numérica
ewer
MatrixEd Permite la edición de
itor números
MegaSc Gráfica a través del
ope tiempo
DataWrit Escribe los datos en
er un archivo
7. Simulación :
Se da Build y se crea la siguiente red :
17. 17
Se construye una red en base a nuestras especificaciones, como
la anterior, la cual se puede probar para ver si arroja los resultados
esperados. Se deben observar los componentes de la red para
ver su configuración . se debe dar un doble clic en los siguientes
íconos para que aparezcan más ventanas de prueba. (matrices de
pesos) (valores deseados y obtenidos).
En base a lo obtenido se pueden cambiar los valores de alguno
de los paneles para obtener lo esperado, o utilizar los íconos de la
barra de herramientas básica para probar y ver los pesos obtenidos :
Archivo Nuevo | Abrir archivo | Guardar Archivo
Deshacer | Cortar | Copiar | Pegar | Borrar | Copiar a un archivo | Pegar
a un archivo
Acerca de | Selección | Ayuda
Nueva ventana | Cascada | Mosaico
Correr la prueba | Pausar la prueba | Resetear valores | Poner
contadores a cero
18. 18
Entrenamiento por épocas | por patrón | por ejemplo
Oculta las ventanas