Aprendizaje por refuerzo con Q-learning y OpenAI Gym
Clase 10 de 20 • Curso de Fundamentos para AI y Machine Learning
Resumen
Objetivo del profesor
El objetivo de esta clase era introducir a los estudiantes al aprendizaje por refuerzo, explicando sus conceptos fundamentales a través de una analogía comprensible (aprender a andar en bicicleta) y demostrar su implementación práctica usando el algoritmo Q-learning en el entorno Frozen Lake de OpenAI Gym.
Habilidades desarrolladas
- Implementación de algoritmos de aprendizaje por refuerzo: Capacidad para programar y ejecutar Q-learning
- Análisis de resultados: Interpretación de gráficas de recompensas durante el entrenamiento
- Configuración de hiperparámetros: Ajuste de variables como alfa, gamma y épsilon
- Evaluación de agentes: Medición del rendimiento del modelo entrenado
- Uso de bibliotecas especializadas: Manejo de Gymnasium (OpenAI Gym) y Matplotlib
Conceptos clave
- [0:00] Aprendizaje por refuerzo: Tipo de machine learning que imita el aprendizaje humano mediante prueba y error
- [0:35] Elementos del modelo base: Agente, entorno, acciones y recompensas
- [1:04] OpenAI Gym/Gymnasium: Biblioteca para simular entornos de aprendizaje
- [1:12] Frozen Lake: Entorno clásico donde el agente cruza un lago congelado
- [1:25] Q-learning: Algoritmo que construye una tabla de valores Q
- [1:29] Q-table: Tabla que indica qué tan buena es una acción en cierta situación
- [1:37] Tasa de aprendizaje (alfa): Cuánto valora la experiencia nueva vs. conocimiento previo
- [1:47] Factor de descuento (gamma): Importancia de las recompensas futuras
- [1:51] Estrategia épsilon: Balance entre exploración y explotación
Palabras clave importantes
- [2:14] Gymnasium: Nueva biblioteca para entornos de RL
- [2:45] is_slippery=False: Configuración para facilitar el aprendizaje inicial
- [3:08] Q-table inicialización: Matriz de ceros con dimensiones [estados, acciones]
- [3:28] Hiperparámetros: Episodios, pasos máximos, alfa, gamma, épsilon
- [4:17] Ciclo de entrenamiento: Episodios y pasos anidados
- [5:57] Fórmula de actualización Q: Ecuación matemática del Q-learning
- [8:12] Matplotlib: Biblioteca para visualización de resultados
Hechos importantes
- [0:10] El aprendizaje por refuerzo es el más similar al aprendizaje humano natural
- [3:36] Se configuran 1000 episodios con máximo 100 pasos cada uno
- [3:47] Alfa = 0.1, Gamma = 0.99, Épsilon inicial = 1.0
- [8:17] La gráfica muestra la transición de fallos (0) a éxitos (1) durante el entrenamiento
- [9:45] Al final del entrenamiento, el agente logra completar todos los episodios de evaluación
- [10:29] Aplicaciones incluyen videojuegos, vehículos autónomos y sistemas de salud
- [10:33] Desafíos: requiere muchos intentos, puede aprender comportamientos no deseados, sensible a cambios del entorno
Datos principales
- Número de episodios de entrenamiento: 1000
- Máximo de pasos por episodio: 100
- Tasa de aprendizaje (alfa): 0.1
- Factor de descuento (gamma): 0.99
- Épsilon inicial: 1.0
- Épsilon mínimo: 0.01
- Tasa de decaimiento de épsilon: 0.995
- Episodios de evaluación: 10
- Tasa de éxito final: 100% (todos los episodios de evaluación completados exitosamente)