Está en la página 1de 40

REDES NEURONALES

ELABORO M. EN C.C. ISRAEL VILLAR MEDINA


ESTRUCTURA DE UNA RED NEURONA
Neurona
Dendritas
Nucleo

Dendrita Nucleo
Peso entrada
Entrada salida
Bies
error

RED NEURONAL ARTIFICIAL


funcion de transferencia

Neurona
Dendritas
Nucleo

Dendrita Nucleo
Peso entrada
Entrada salida
Bies
error
funcion de transferencia
Neurona artificial representacion
Red Neuronal
Red Neuronal Artificial
Como construirla

 No hay reglas en la actualidad para la


construcción
 Deben resolverse dos cosas para la determinación
de la red
• 1. El conjunto de entradas de entrenamiento, con
el cual se pretende encontrar la funciones de
clasificación de la red.
• 2. El conjunto de salida correspondiente a cada
una de las entradas de entrenamiento.
El problema de la normalización

 El problema radica en que el mundo real el dominio de


comunicación se de por medio de palabras, y en el mundo
de las redes neuronales el dominio de comunicación es
valores que oscilan entre 0 y 1.
 No hay reglas para la normalización pero un método
sencillo es enumerar nuestro dominio de entradas y
convertir a binario esta numeración, lo mimo para nuestra
salidas.
Normalización

 Supóngase que se tiene una variable llamada Motor y otra variable llamada
puertas. Con los siguientes valores posibles. 1.6,1.8, 2.4,3.5 y puertas con 2,4
y 5.

Motor Valores Normalizacion


1.6 1 001
1.8 2 010
2.4 3 011
3.5 4 100
Normalización….

Puertas Valores Normalizacion


2 1 01
4 2 10
5 3 11
Normalización….

 Una vez obtenido los valores 0 y 1 de los dominios de entrada, se procede


contar los dígitos totales de los conjuntos.
 El conteo total es de 5 dígitos para la entrada

Motor Puertas
3 dígitos (100) 2 dígitos(11)

 Se asume que la cantidad de neuronas de entrada es de 5 Neuronas.


Normaliazación …..

 Ahora se aplica el mismo principio para la o las variables de salida.


Supóngase que la salida es el vehículo con las características.

Vehiculo Valor Normalizacion


Sedan 1 001
Van 2 010
Pick up 3 011
Mini Van 4 100
Sport 5 101
Ahora podemos decir que la salida requiere de 3 neuronas, una por cada digito
correspondiente.
Contruyendo la red

 Una vez que se ha obtenido el numero de neuronas de entrada y el numero de


neuronas de salida, podemos proceder a construir una red perceptor
multicapa solo hace falta calcular las neuronas de la capa oculta, sin embargo
aquí tampoco hay reglas del numero de neuronas, por lo que se siguiere sea
por lo menos del mismo numero de neuronas de entrada para casos donde las
variables han sido normalizadas con el método anteriormente descrito. O en
su defecto multiplicarlos por un factor entero.

Neuronas ocultas= Neuronas de entradas * factor (se recomienda factor=1)


Construyendo la red

El resultado del ejercicio anterior seria de


5 Neuronas de entrada, 5 Ocultas y 3 de salida.
Entrenamiento de la red
Con el algoritmo Backprogation
Cada Neurona esta compuesta de unidades que representan las dendritas, cada dendrita
tiene un peso o valor representados por w1, w2 y la neurona tiene una salida
representada por y, el trabajo de la neurona corresponde a la sinapsis donde los valores
de entrada (x1,y x2) son multiplicados por los pesos y se suma los valores, este
resultado es pasado por una función de transferencia para obtener la salida.
Funciones de transferencia en el
algoritmo
 Para las neuronas de entrada y oculta ( 1/(1-(e Exp entrada)))
 Para las neuronas de salida el resultado de la suma no se toca por lo que se
llana función purelin.
Entrenamiento
 Para enseñar a la red se necesita un conjunto de
entrenamiento, (x1,x2) asignados a una salida
deseada (z) , La red entrena en un proceso repetitivo
donde en cada iteración los coeficientes de los pesos
de cada dendrita son modificados para cada uno de
los conjuntos de entrenamiento, cada entrenamiento
comienza incorporando las entradas del conjunto de
entrenamiento a las dendritas de las neuronas de
entrada. Cada neurona obtendrá su sinapsis al sumar
las multiplicaciones de cada dendrita por su entrada
correspondiente.
Entrenamiento…
Entrenamiento
Entrenamiento…
Entrenamiento
 A continuación se propagan las salidas de cada neurona a cada dendrita de las
neuronas ocultas, no sin antes pasarlas por la función de transferencia
aplicada en el núcleo de la Neurona
Entrenamiento….
Entrenamiento…
 Del mismo modo las neuronas ocultas trasfieren su salida a las dendritas de
las neuronas de salida.
Entrenamiento
 En la siguiente parte del algoritmo es comparar la salida transferida de las
neuronas de salida con la salida deseada. Y obtener el margen de error
Entrenamiento…..
 Ahora conocido el error cada neurona ajustara de
acuerdo a su nivel de responsabilidad ( por los
factores de pesos en las dendritas), para ello se
propagara el error hacia atrás.
Veamos como se propaga el error
Entrenamiento…..
Entrenamiento….
Entrenamiento…
 Pasa el margen de error hacia atrás a las neuronas de entrada
Entrenamiento…..
Entrenamiento…..
Ajustando los pesos en las dendritas

El siguiente paso es ajustar los pesos en las dendritas

No debe olvidarse que hay una función aplicada de por medio antes de la salida,
llamada función de transferencia, para saber que nivel de responsabilidad tiene
esta función en el error deberá derivarse la función.
Para los casos de las neuronas de entrada y ocultas la derivada correspondiente
la función (1/(1 – (e EXP –salida)) es:
(1 – salida) ( salida)
y para el caso de las neuronas de salida que no se aplica ninguna función la
derivada es 1 sin embargo se suguiere aplicar –
-2(1) = -2 en lugar de 1 según [Hagan 1995]
 Para el ajuste de pesos se aplica un algoritmo de Optimización pero tan simple
como aplicar un factor de aprendizaje a la ecuación de ajuste, el factor será el
mismo para todas las neuronas se sugiere valores pequeños como 0.4
Entrenamiento…..
Entrenamiento….
Entrenamiento ….
Entrenamiento……
Entrenamiento……
Entrenamiento….
Entrenamiento

 A la serie de pasos anteriores se le llama época, al finalizar la época debe


incorporarse otro conjunto de entrenamiento y evaluarse con su salida deseada, al
terminarse los conjuntos de entrenamiento debe comenzarse con el conjunto uno
y así sucesivamente hasta que una de las tres siguientes cosas pasen:

1.- Los salidas obtenidas sean iguales a las deseas


2.- las salidas sean muy muy cercanas a las deseadas
3.- Se haya puesto al algoritmo un numero de épocas predeterminado y este numero
de épocas se haya realizado.

El numero de épocas depende del problema, normalmente con 350 epocas en un


problema sencillo bastara, pero en caso muy densos y dispersos poco entendibles
quizá pase por encima de las 300 mil épocas.

También podría gustarte