Inteligencia artificial avanzada

2,747
-1

Published on

Presentación del proyecto de la materia de IAA de la UTPL.
Tema: Comparación de resultados en la convergencia de una red neuronal utilizando 1 y 2 capas ocultas respectivamente en el modelo del perceptrón multicapa utilizando el algoritmo BackPropagation al realizar el reconocimiento de señales de tránsito

Published in: Education, Technology, Travel
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,747
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
76
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Inteligencia artificial avanzada

  1. 1. Universidad Técnica Particular de <br />Loja<br />Inteligencia Artificial Avanzada<br />PROYECTO FINAL<br />TUTOR: Ing. Nelson Piedra<br />Por:<br /><ul><li>Diego E. Guamán E.</li></li></ul><li>Tema:<br />Comparación de resultados en la convergencia de una red neuronal utilizando 1 y 2 capas ocultas respectivamente en el modelo del perceptrón multicapa utilizando el algoritmo BackPropagation al realizar el reconocimiento de señales de tránsito<br />Diego Guamán deguamanx@utpl.edu.ec<br />
  2. 2. Introducción<br />En los últimos años se han venido dando muchas mejoras de los algoritmos que tratan sobre el reconocimiento de señales de tránsito<br />La idea del presente trabajo es desarrollar un agente que detecte dichas señales, extraer características de las imágenes que serán los patrones para la creación de un modelo de clasificación.<br />Para la creación del modelo utilizaremos el algoritmo BackPropagation, vamos a variar el número de capas ocultas así como las neuronas que forman dicha capa para comparar los resultados a la hora de converger los modelos realizados.<br />Seguido de toda esta etapa de aprendizaje y creación del modelo vamos a probar, qué tan eficientes son los modelos generados a la hora de clasificar nuevas señales de tránsito.<br />
  3. 3. Estado del Arte<br />RedesNeuronales<br />Muchos investigadores basados en los procesos llevados a cabo por el cerebro humano e inspirados en su funcionamiento han desarrollado las Redes Neuronales Artificiales (RNA). Estos sistemas no requieren que la tarea a ejecutar se programe, sino que generalizan y aprenden de la experiencia. Este proceso de aprendizaje puede ser supervisado o no supervisado [1]<br />Según Looney[2] una de las ramas en la que se aplica las redes neuronales con éxito son entre otras el reconocimiento de patrones.<br />Las ventajas de las redes neuronales son según Hilera y Martinez[1] son :<br />Aprendizaje adaptativo<br />Auto organización<br />Generalización<br />Tolerancia a fallos. <br />Operación en tiempo real. <br />Fácil inserción dentro de la tecnología existente. <br />
  4. 4. Estado del Arte (Cont.)<br />Cuadro se muestran las características de algunos modelos que realizan el reconocimiento de patrones <br />
  5. 5. Estado del Arte (Cont.)<br />BackPropagation<br />En esta red, se interconectan varias unidades de procesamiento en capas, las neuronas de cada capa se conectan entre sí. Cada neurona de una capa proporciona una entrada a cada una de las neuronas de la siguiente capa. <br />En la figura se observa la arquitectura de este tipo de red.<br />
  6. 6. Estado del Arte (Cont.)<br />BackPropagation<br />El término backpropagation se refiere al método para calcular el gradiente de error en una red feed-forward (de aprendizaje supervisado), que es una aplicación de la regla de la cadena de cálculo elemental [8]. Indica la propagación hacia atrás de una señal de error a través de la red[9]. Básicamente el entrenamiento de este tipo de red consiste en lo siguiente:<br />Pasada hacia delante (fowardpass): las salidas son calculadas y el error en las unidades de salida es calculado.<br />Pasada hacia atrás (backwardpass): el error de las salidas es utilizado para alterar los pesos de las unidades de salida. Luego el error en las neuronas de las capas ocultas es calculado mediante propagación hacia atrás del error en las unidades de salida, y los pesos en las capas ocultas son alterados usando esos valores.<br />Este paradigma varía los pesos de acuerdo a las diferencias encontradas entre la salida obtenida y la que debería obtenerse. De esta forma, si las diferencias son grandes se modifica el modelo de forma importante y según van siendo menores, se va convergiendo a un modelo final estable.<br />
  7. 7. Estado del Arte (Cont.)<br />BackPropagation<br />El error en una red de neuronas para un patrón [x= (x1, x2, …, xn), t(x)], siendo x el patrón de entrada, t(x) la salida deseada e y(x) la proporcionada por la red, se define como se muestra en la ecuación 1 para m neuronas de salida<br /> ecuación 1<br />El método de descenso de gradiente consiste en modificar los parámetros de la red siguiendo la dirección negativa del gradiente del error. Lo que se realizaría mediante la ecuación 3.<br /> ecuación 3<br />w es el peso a modificar en la red de neuronas (pasando de wanterior a wnuevo) y α es la razón de aprendizaje, que se encarga de controlar cuánto se desplazan los pesos en la dirección negativa del gradiente. Influye en la velocidad de convergencia del algoritmo, puesto que determina la magnitud del desplazamiento.<br />
  8. 8. Estado del Arte (Cont.)<br />BackPropagation<br />Paso 1: Inicialización aleatoria de los pesos y umbrales.<br />Paso 2: Dado un patrón del conjunto de entrenamiento (x, t(x)), se presenta el vector x a la red y se calcula la salida de la red para dicho patrón, y(x).<br />Paso 3: Se evalúa el error e(x) cometido por la red.<br />Paso 4: Se modifican todos los parámetros de la red.<br />Paso 5: Se repiten los pasos 2, 3 y 4 para todos los patrones de entrenamiento, completando así un ciclo de aprendizaje.<br />Paso 6: Se realizan n ciclos de aprendizaje (pasos 2, 3, 4 y 5) hasta que se verifique el criterio de parada establecido.<br />En cuanto al criterio de parada, se debe calcular la suma de los errores en los patrones de entrenamiento. Si el error es constante de un ciclo a otro, los parámetros dejan de sufrir modificaciones y se obtiene así el error mínimo. Por otro lado, también se debe tener en cuenta el error en los patrones de validación, que se presentarán a la red tras n ciclos de aprendizaje. Si el error en los patrones de validación evoluciona favorablemente se continúa con el proceso de aprendizaje. Si el error no desciende, se detiene el aprendizaje[3].<br />
  9. 9. Interfaz del Programa<br />
  10. 10. Creación de Variables predictoras y clases, creación del archivo entrenamiento.arff<br />
  11. 11. Entrenar red neuronal<br />
  12. 12. Comandos para ejecutar weka desde Matlab<br />!java -Xmx1024M -cp"C:Program FilesWeka-3-6weka.jar" weka.classifiers.functions.MultilayerPerceptron-L 0.3 -M 0.2 -N 500 -V 0 -S 0 -E 20 -H a-t weka/entrenamiento.arff-d weka/1Capa.model > analisis/entrena1capa.txt<br />
  13. 13.
  14. 14.
  15. 15.
  16. 16. Prueba<br /><ul><li>!java-Xmx1024M -cp "C:Program FilesWeka-3-6weka.jar" weka.classifiers.functions.MultilayerPerceptron-T weka/test.arff-l weka/1Capa.model -p 0 >analisis/1capa.txt</li></ul>!java-Xmx1024M -cp "C:Program FilesWeka-3-6weka.jar" weka.classifiers.functions.MultilayerPerceptron-T weka/test.arff-l weka/2Capa.model -p 0 >analisis/2capa.txt<br />
  17. 17. Pruebas de la convergencia de la red neuronal con los dos modelos (1 capa oculta y 2 capas ocultas) y variando el numero de neuronas en las capas ocultas<br />
  18. 18. Pruebas al analizar distintas imágenes con los dos modelos (1 capa oculta y 2 capas ocultas) y variando el numero de neuronas en las capas ocultas<br />
  19. 19. Conclusiones<br />Cuando se realizaron la prueba los mejores resultados al convergir la red neuronal fueron aplicando una sola capa oculta.<br />Al variar el número de neuronas en la capa oculta a=22, i=35 o t=42 la red tuvo una convergencia menor utilizando una sola capa oculta mientras si se aumentaba a dos capas ocultas la red se demoraba mas en convergir<br />Al utilizar un numero de neuronas en la capa oculta ‘a=(atributos+clases)/2’ la red converge de manera más rápida<br />Los mejores resultados al clasificar nuevas clases se obtuvieron utilizando el modelo de una sola capa oculta<br />Al clasificar las clases la mayor confianza nos arrojo al utilizar una sola capa oculta y con en numero de neuronas en la capa oculta de ‘a=(atributos+clases)/2’ e ‘i= atributos o clases’<br />
  20. 20. Preguntas…<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×