Redes Neuronales

Páginas: 6 (1280 palabras) Publicado: 7 de febrero de 2014

Universidad de Guanajuato
División de Ingenierías Campus Irapuato-Salamanca



Gabriel Eduardo Rivero Hernández

Examen Parcial / Practica 2: Reconocimiento de Patrones

Computación Flexible

Ing. Sistemas Computacionales

Marco Antonio Ornelas Ramírez






Fecha de entrega:
12/Nov /2013
INTRODUCCION

Back propagation es un algoritmo de aprendizajesupervisado que se usa para entrenar redes neuronales artificiales. El algoritmo emplea un ciclo propagación–adaptación de dos fases. Una vez que se ha aplicado un patrón a la entrada de la red, este se propaga desde la primera capa a través de las capas ocultas de la red, hasta generar una salida. La señal de salida se compara con la salida deseada y se calcula una señal de error para cada una de lassalidas. Las salidas de error se propagan hacia atrás, partiendo de la capa de salida, hacia todas las neuronas de la capa oculta que contribuyen directamente a la salida. Este proceso se repite, capa por capa, hasta que todas las neuronas de la red hayan recibido una señal de error que describa su contribución relativa al error total por último se procederá a la actualización de los pasos encada capa en base al error propagado. Después del entrenamiento, cuando se les presente un patrón arbitrario de entrada que contenga ruido o que esté incompleto, las neuronas de la capa oculta de la red responderán con una salida activa si la nueva entrada contiene un patrón que se asemeje a aquella característica que las neuronas individuales hayan aprendido a reconocer durante su entrenamiento[1].Reconocimiento de patrones es la ciencia que se ocupa de los procesos sobre ingeniería, computación y matemáticas relacionados con objetos físicos y/o abstractos, con el propósito de extraer información que permita establecer propiedades de o entre conjuntos de dichos objetos[2].
Por lo que el objetivo de esta práctica es implementar estos dos conceptos en una red neuronal, donde ésta redimplementará el algoritmo back propagation para entrenarse y así poder reconocer una serie de patrones que representaran las letras del abecedario, dichos patrones pueden presentar ruido o no y de cualquier forma la red deberá reconocer a que patrón (letra) es al que pertenece.









METODOLOGÍA

1.- Se utilizaron las siguientes clases para entrenar a la red neuronal con backpropagation.
layer

NumInp
Número de entradas
NumOput
Número de salidas
Inputs[NumInp]
Entradas
w[NumOput][NumInp]
Pesos
Outputs[NumOput]
Salidas
Delta[NumInp]
Error propagado
layer()

CalculateOuputs(layer *l)

CalculateDelta(int *val)

PropagateDelta(layer l)

UpdateW(layer *l)

CalculateError(int i, double y, int dx)

SetInput(int i, double val)

GetDelta(int i)GetW(int i, int j)

SetW(int i, int j, double v)

GetInput(int i)

GetOutput(int i)

SetDelta(int i, double val)

Tabla 1: Clase layer

net

l[NumeroDeCapas]
Capas
patters[NumPat][NumInp]
Patrones
target[Numpat][NumOput]
Salidas Objetivo
net()

InitNet()

ReadInputs()

ReadOutputs()

Training()

ImportLearning()

EvaluatePatter()

Tabla 2: Clase net
2.- Se inicializa lared con el método InitNet() donde se le indica el número de neuronas por cada capa de la red, además de identificar los patrones a entrenar y cuáles son las salidas deseadas para cada patrón entrenado.
*Los patrones a entrenar se leyeron del archivo de texto “alfabeto_new.txt” el cual contiene una matriz de 104 x 35, donde cada columna representa un patrón.
*Las salidas deseadas para cadapatrón de obtienen del archivo “objetivo.txt” el cual debe contener una matriz de 104 x 26, donde cada columna es la salida para cada patrón.
2.1.- En este mismo método se inicializa cada capa con la función InitLayer(int NI, int NO) el cual debe de recibir el número de entradas y el número de salidas de cada capa.
*Se inicializan los pesos de forma aleatoria en un rango de -0.5 a 0.5.
3.- Se...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Redes Neuronales
  • Red Neuronal
  • Redes neuronales
  • Redes Neuronales
  • Redes Neuronales
  • Redes Neuronales
  • Redes Neuronales
  • redes neuronales

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS