Algoritmo A3C con optimizador Adam con redes neuronales convolucionales Autor: Jorge Alberto Pacheco Senard Tutores: MSc. Lester Guerra Denis

Slides:



Advertisements
Presentaciones similares
Curso de inducción RUBRICA DE EVALUACIÓN Agosto 2016.
Advertisements

Recomendaciones para el mejoramiento de la Estrategia de Mercadeo Digital para EAS Consulting Autor: María Alejandra Medina Largo Tutor: Dr. Manuel E.
ENFOQUE PRÁCTICO RECOMENDADO PARA EL DISEÑO DE CASOS Integrantes del equipo: Rosa Isela Gerónimo Miguel Ángel Cruz Juan Guadalupe Alegría Humberto Mendoza.
ESTADÍSTICA II Ing. Danmelys Perozo MSc. Blog:
TUTORIA 1 Lógica para la Computación TUTORIA 1 Facultad de Ciencias Naturales y Matemáticas.
REGRESIÓN Y CORRELACIÓN  REGRESIÓN Es un Proceso estadístico que consiste en predecir una variable a partir de otra utilizando datos anteriores. INGA.
Pruebas de Funcionalidad de Software: Caja Negra y Caja Blanca Curso: Diseño de Sistemas 9no. Semestre.
REFERENCIAS BIBLIOGRAFICAS
Tema: Análisis de una red trocal multiservicio para encriptación de información sobre MPLS basada en el estándar IETF con el protocolo GETVPN Autor:
Maestría en ingeniería de sistemas y computación.
Metodología de Implementación de Sistemas ERP
L. S. C. A. Raúl Monforte Chulin
Sustentación de la propuesta
Diseño Experimental 1 Santiago Ulloa.
PROYECTO FINAL DE CARRERA Ingeniería Aeronáutica DESARROLLO DE OPTIMIZADOR DE FORMA 2D BASADO EN CÓDIGO DE ELEMENTOS FINITOS CON MALLADOS CARTESIANOS.
Tratamiento de Datos Capitulo Dos.
ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA DE PREVENCIÓN Y SEGUIMIENTO DE CÓLICOS EN EQUINOS UTILIZANDO ASP.NET y MVC MAYO 2014 VIVIANA ESTÉVEZ VERÓNICA.
FECHA ÚLTIMA REVISIÓN: 13/12/11
Introducción La optimización trata de buscar el punto óptimo de una función objetivo cumpliendo con una serie de restricciones. El proceso de optimización.
“POLIMORFISMO PARAMETRICO”
SISTEMAS OPERATIVOS PARALELOS Y MULTIPROCESADORES RICHARD GIOVANI MEDINA ESTEBA.
ESTADÍSTICA II Ing. Danmelys Perozo MSc.
EL CPU.
Filtros FIR e IIR EQUIPO. Un filtro es un sistema o una red que cambia selectivamente la forma de onda, o las características amplitud-frecuencia o fase-
CARRERA DE INGENIERÍA EN SISTEMAS E INFORMÁTICA
EDWIN SANTIAGO YACELGA MALDONADO SANGOLQUÍ – ECUADOR 2016
Presentación de la asignatura Guillermo Jaramillo Cabrera
UNIVERSIDAD DE LAS FUERZAS ARMADAS-ESPE
Metodología de la Investigación
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Tema 3. Lenguaje unificado de modelado UML
UNIVERSIDAD NACIONAL DE LOJA Área de la Educación, el Arte y la Comunicación Informática Educativa IV INGENIERIA DE SOFTWARE Taller de Análisis y Diseño.
Continuación Unidad 4. Control de flujo
Capt. Noboa C. Jorge E - Cárdenas R. Santiago G.
Presentación de la asignatura Administración de Operaciones
Índice temático 2.1 Análisis de problemas. 2.2 Representación de algoritmos: gráfica y pseudocódigo. 2.3 Diseño de algoritmos aplicados a problemas 2.4.
Simulación de procesos.
DEPARTAMENTO DE ELECTRICA Y ELECTRÓNICA
Estudiante: * Alejandra Evelyn Torres. C.I:
Modalidades De La Investigación.
Investigación educativa Integrantes Condori Alicia García patricia Pinell Gabriela Romero paúl Aguilar jhonny.
ANALISIS DE SISTEMAS ANALISIS ORIENTADO A OBJETOS.
Programación lógica y funcional Unidad I Conceptos fundamentales.
Instituto Universitario Politécnico Santiago Mariño Extensión San Cristóbal Metodología de la Investigación Realizado por: Sánchez C, Stefhanny N. Cedula:
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
Autores: Ñauñay Colcha Jorge Luis Bravo Maldonado Paulo Dennis
22/11/2018 Sistema inteligente de tipo TLD (Track, Learn and Detect) para plataforma móvil de última generación: Implementación  y comparativa de su rendimiento.
UNIVERSIDAD DE LAS FUERZAS ARMADAS-ESPE
FUNDAMENTOS DE PROGRAMACIÓN. INTRODUCCIÓN  Conceptos: Informática, Ordenador, Programa, Dato, Bit, Byte, Hardware, Software, Lenguaje de Programación,
Autor: Ing. Maritza Núñez Solís
PROYECTO DE GRADUACIÓN
1 TEMA 2: Organización de computadores Procesadores Memorias Dispositivos de E/S.
Balance de Carga Adaptable bajo Cómputo Paralelo en Clusters
Estructura de Sistemas Operativos CAMPOS CHACALTANA, ANTHONY.
Estructura de los sistemas Operativos 1. Componentes de un sistema operativo  Administración de procesos  Administración de memoria  Subsistema de Entrada/Salida.
PROFESOR: MARCELO ZAVALA V. INGENIERO CIVIL ELECTRÓNICO (16 años de experiencia profesional) DIPLOMADO EN GESTIÓN ACADEMICA
Arquitectura de Computadores de Computadores. Organización y Arquitectura La Arquitectura: se refiere a los atributos que tienen un impacto directo en.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
PROYECTO DE GRADUACIÓN
LOS SISTEMAS OPERATIVOS MENÚ SISTEMAS OPERATIVOS Introducción Definición Historia Funciones Tipos S.O. Algunos Existentes Conclusiones Referencias.
1 TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS Introducción Hardware Software Aspectos de diseño.
MODELO EN CASCADA Integrantes: Felipe Alemán Lester Blandón.
PROYECTO DE GRADUACIÓN
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
UNIVERSIDAD PRIVADA SAN JUAN BAUTISTA FILIAL CHINCHA ESCUELA PROFESIONAL DE INGENIERÍA DE COMPUTACIÓN Y SISTEMAS Por: Nestares Torres Luis Jesús Enrique.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
SISTEMAS OPERATIVOS Estudiante: Rojas De la Cruz Jesus Manuel. Ciclo: VI. Turno: Noche.
Transcripción de la presentación:

Algoritmo A3C con optimizador Adam con redes neuronales convolucionales Autor: Jorge Alberto Pacheco Senard Tutores: MSc. Lester Guerra Denis Dr. C. Humberto Díaz Pando

Introducción AprendizajeReforzado AprendizajeProfundo+ AprendizajeReforzadoProfundo

RMSprop Situación Problemática Asynchronous Advantage Actor-Critic (A3C) AdamAdaMax utiliza

Problema ¿ Qué desempeño en el tiempo de ejecución y en la curva de aprendizaje tendría el A3C al utilizarse los optimizadores Adam y AdaMax para el descenso del gradiente ?

Objetivo general Desarrollar el algoritmo A3C para su uso en distintas aplicaciones de aprendizaje reforzado profundo y probar su desempeño en los optimizadores Adam y AdaMax.

Objetivos específicos Estudiar de los elementos teóricos del aprendizaje reforzado profundo. Comprender el algoritmo A3C. Estudiar de los patrones de computación paralela en que se basa la tecnología usada. Revisar el algoritmo A3C utilizando el modelo de red neuronal convolucional.

Objetivos específicos Diseñar de la solución. Validar la solución propuesta. Implementar de la solución. Realizar y documentar pruebas de desempeño.

Modelo del dominio

Requisitos Funcionales PrioridadNombre del requerimientoTipo del requerimiento 1El sistema ejecuta A3C.Normal 1El sistema ejecuta A3C distribuido.Normal 1 El sistema debe ser capaz de recuperarse de fallos en tiempo de ejecución. Esperado 1 El sistema debe ser capaz de distribuir la carga de trabajo equitativamente. Esperado 1El sistema debe ser multiplataforma.Esperado 1El sistema debe ser capaz de ejecutar los algoritmos sobre una arquitectura distribuida. Esperado

Requisitos no funcionales Problemas frecuentes Interfaz interna Estructuración y subdivisión del sistema en partes más pequeñas. ConfiabilidadTolerancia a fallos Rendimiento Utilizar todos los elementos de procesamiento que provea la arquitectura sobre la que se ejecute la solución. PortabilidadMultiplataforma SoftwareDisponer del intérprete de Python versión 3.7 o superior. Hardware Requisito mínimo: sistema multiprocesador. Requisito recomendado: sistema multicomputador. Restricciones en el diseño y la implementaciónUtilizar Python como lenguaje de programación. Utilizar el framework Tensorflow en su versión Utilizar el framework Keras en su versión

Enfoque Multiagente

Fase de distribuir agentes

Fase de Entrenamiento

Diagrama de Clases

Unidad Experimental Utilizada CaracterísticaValor ProcesadorIntel(R) Celeron(R) CPU N3060 Velocidad del Procesador1,60GHz Números de Procesadores Lógicos2 Memoria RAM4GB DDR3 RAM Velocidad de la RAM1333MHz

Configuración de hiperparámetros Frecuencia de entrenamiento de la red neuronal (training_interval): 30. Número de marcos consecutivos, cantidad de veces que se repiten las acciones (consecutive_frames): 4. Número de episodios que ejecutará el algoritmo (nb_episodes): Factor de descuento de la recompensa (gamma): Número de hilos de ejecución del algoritmo (n_threads): 16.

Configuración de hiperparámetros La política de descenso del gradiente utilizado se construyó con el método policy_action (ver código fuente para más información). Índice de aprendizaje del modelo, determina el paso de ajuste de la función del error hacia el mínimo local más cercano (lr): Variable épsilon utilizada en los optimizadores numéricos, su función es la de ser una constante que evita la división por cero (epsilon): Variable que disminuye el valor del gradiente utilizado en el optimizador numérico RMSprop (rho): 0.99.

Entornos utilizados para las pruebas Space InvadersCartPole

Resultados RMSprop en Space Invaders Tiempo de ejecución: 10h 5m 33s

Resultados RMSprop en CartPole Tiempo de ejecución: 54m 30s

Resultados Adam en Space Invaders Tiempo de ejecución: 7h 34m 39s

Resultados Adam en CartPole Tiempo de ejecución: 53m 44s

Resultados AdaMax en Space Invaders Tiempo de ejecución: 9h 37m 10s

Resultados AdaMax en CartPole Tiempo de ejecución: 6m 56s

Tiempos de ejecución de las variantes

Configuración de la prueba estadística Se realizó una prueba Friedman para comparar todos los optimizadores entre sí (Friedman NxN) con el objetivo de saber si existían diferencias significativas entre las distribuciones de los optimizadores Nivel de significancia = 0,05 Los datos recolectados para Friedman constan de tres ejecuciones por optimizador numérico en cada entorno de prueba dando un total de 18 medidas Post Hoc aplicados: Iman-Davenport, Holm, Nemenyi, Shaffer y Bergman 1 234

Resultados de la prueba de Friedman

Conclusiones Los frameworks Keras y Tensorflow del el lenguaje de programación Python son útiles para la implementación de algoritmos de aprendizaje reforzado profundo. El uso del optimizadores numéricos influye en gran medida en el resultado del experimento. El optimizador Adam se considera el más estable entre los optimizadores numéricos utilizados. 1 23

Conclusiones Las operaciones utilizadas por modelos de deep reinforcement learning con modelos de redes neuronales convolucionales para el procesamiento de imágenes son computacionalmente costosas. Se pudo implementar el algortimo A3C utilizando el modelo de programación paralela MapReduce. 4 5

Recomendaciones Realizar una selección de tecnologías de los principales frameworks para deep reinforcement learning. 123 Volver a ejecutar las pruebas con los recursos necesarios para obtener un mejor resultado, ej: Un sistema distribuido de 16 núcleos. Analizar el rendimiento de las variantes del algoritmo sobre GPU. 4 Realizar más experimentos sobre los entornos mostrados para tener más medidas sobre las que realizar las pruebas no paramétricas. 5 Realizar pruebas sobre otro tipo de entornos, ej: entornos continuos de la Arcade Learning Enviroment.

Asynchronous Advantage Actor Critic (A3C) con optimizador Adam con redes neuronales convolucionales Autores: Jorge Alberto Pacheco Senard Tutores: MSc. Lester Guerra Denis Dr. C. Humberto Díaz Pando