El aprendizaje por refuerzo offline (o por lotes ) es un caso especial de aprendizaje por refuerzo , que es una clase de problemas de aprendizaje automático , que tiene como objetivo determinar a partir de la experiencia la estrategia (o política) que permite a un agente maximizar una recompensa digital a lo largo del tiempo.
En el contexto del aprendizaje por refuerzo puramente fuera de línea, el agente no puede interactuar con el entorno: se le proporciona una base de aprendizaje al principio y la usa para aprender una política. A diferencia de los algoritmos online, donde el agente tiene la posibilidad de interactuar como mejor le parezca con el entorno, los algoritmos offline intentan aprovechar al máximo los ejemplos de aprendizaje disponibles, sin contar únicamente con la posibilidad de exploración. Por lo tanto, este enfoque es particularmente ventajoso cuando no es posible realizar experimentos o cuando estos experimentos son costosos (posible rotura del equipo, obligación de recurrir a la ayuda humana durante los experimentos, etc.). Sin embargo, en general, las técnicas de aprendizaje por refuerzo por lotes se pueden utilizar en un entorno más amplio, donde la base de aprendizaje puede cambiar con el tiempo. A continuación, el agente puede alternar entre las fases de exploración y las de aprendizaje. Los algoritmos fuera de línea son generalmente adaptaciones de otros algoritmos como Q-Learning , ellos mismos inspirados en algoritmos de programación dinámica que resuelven MDP .
Definir con precisión qué es y qué no es un algoritmo fuera de línea no es necesariamente fácil. Una de las posiciones que se pueden tomar es considerar "fuera de línea" cualquier algoritmo que no sea puramente en línea. Esto lleva a distinguir tres tipos de métodos por lotes:
El principio del lote puro es estar completamente fuera de línea. Es decir, toma las experiencias una vez y aprende su política óptima solo en ese juego. Si llega una nueva experiencia, no se puede incluir por sí sola, se debe incluir en el conjunto de experiencias anteriores y volver a aprender en este nuevo conjunto.
En la situación de lotes puros, puede ser difícil encontrar una política óptima si el conjunto de experimentos sigue una distribución que no es la del sistema real subyacente. Esto puede resultar en representaciones de probabilidades de transiciones erróneas o transiciones faltantes. La mejor solución para compensar esta falta de información es, por tanto, interactuar con el sistema cuando sea posible y utilizar toda la información disponible cada vez. Es el principio de exploración (realizado por interacción) y explotación (realizado por experimentos) que se encuentra en los métodos tradicionales de aprendizaje por refuerzo.
El semi-lote se encuentra entre los dos anteriores. El sistema actualiza varios experimentos al mismo tiempo para que el semi-lote no esté puramente en línea, sino que solo use los experimentos una vez, de modo que no esté completamente fuera de línea.
El modelado clásico de aprendizaje por refuerzo (en línea o fuera de línea) utiliza la noción subyacente de Proceso de decisión de Markovia (MDP). Recordemos las notaciones principales:
El coche de montaña es un problema clásico en la literatura de aprendizaje por refuerzo, en el que un coche tiene que llegar a la cima de una colina.
Este problema es otro ejemplo clásico, donde un oficial tiene que controlar un poste con un peso usando un motor para equilibrarlo en una posición vertical, con el peso levantado. Dado que el motor no es lo suficientemente potente como para mover la pértiga desde su posición inicial a la posición de equilibrio de una vez, el oficial debe aprender a balancear la pértiga.
Existe una amplia variedad de algoritmos fuera de línea en la literatura, pero en términos generales todos bordan en torno a algunos fundamentos que los distinguen de los algoritmos puramente en línea o aquellos en los que se conoce CDM. Inicialmente diseñados para resolver las dificultades específicas del aprendizaje fuera de línea, estos principios también son ventajosos en un contexto más general.
Experiencia de repeticiónPara Q-learning puramente en línea, el agente es libre de explorar y generar experiencia como mejor le parezca. Estas experiencias son útiles de dos formas:
1. Explorar eficazmente el medio ambiente, es decir, experimentar nuevas transiciones a estados aún no visitados y obtener nuevas recompensas.
2.Hacer converger el algoritmo, porque requiere un gran número de iteraciones para propagar la información y finalmente estabilizarse hacia una política óptima. En la situación fuera de línea, uno no puede estar satisfecho con usar un experimento dado una sola vez porque el número de experimentos está limitado por definición y no permitiría que el algoritmo converja.
Esta dificultad se supera "repitiendo" los mismos experimentos varias veces, es decir, que el conjunto de datos disponibles se utiliza una y otra vez como si fueran nuevos experimentos.
AdecuadoEn los métodos clásicos de aprendizaje por refuerzo, es común actualizar la función de valor fuera de sincronización. Es decir, después de cada observación de una transición, el valor de un estado o un estado de acción se actualiza localmente y los demás estados no se modifican. Entonces, es solo durante las nuevas interacciones que los otros estados se evaluarán en función del valor actualizado previamente.
Los algoritmos por lotes, para aprovechar al máximo los datos disponibles, adaptarse a espacios de estados continuos y contrarrestar ciertos problemas de inestabilidad durante el aprendizaje (caso de no convergencia), no se conforman con no solo almacenar los valores de cada uno. estado o acción y aplicando actualizaciones de tipo de programación dinámica. Añaden encima una forma u otra de globalización y regularización de actualizaciones que pueden verse como aprendizaje supervisado de funciones de valor.
Por ejemplo, en los algoritmos que presentamos a continuación, encontramos el uso de un kernel gaussiano que permite promediar localmente los valores, de una base de funciones en las que expresamos la función de valores, o más explícitamente d 'un supervisado algoritmo de aprendizaje (red neuronal, k vecinos más cercanos ...) para aprender la función de los valores.
De esta forma, cada experimento utilizado permitirá actualizar globalmente la totalidad de la función de valor (estados o estados de acción) sin tener que esperar múltiples iteraciones para propagar la información de forma más o menos aleatoria.
El algoritmo de programación dinámica aproximada basada en kernel (KADP) supone que dispone de un conjunto de transiciones observadas arbitrariamente . Luego asume que el espacio de estados tiene una distancia, a partir de la cual adquiere significado la noción de promediar basada en un núcleo gaussiano. Este núcleo se utiliza para actualizar iterativamente los valores de la función en todos los estados, a partir del conjunto de muestras . Podemos ver claramente aquí la aplicación de la idea de reproducción de experiencia (usamos repetidamente todos los datos) y la de ajuste ya que el kernel permite que todos los valores sean actualizados por cada transición.
AlgoritmoEl algoritmo comienza a partir de una función de valores de estado elegida arbitrariamente , luego cada iteración del KADP consta de dos fases:
Frase 1La primera fase evalúa la actualización del proceso de toma de decisiones:
con un subconjunto del cual solo usa las acciones a .
Esta ecuación calcula el promedio ponderado de la actualización habitual: con como peso . El núcleo se elige de modo que las transiciones más lejanas tengan menos influencia que las más cercanas.
Fase 2La segunda fase consiste en calcular los nuevos valores de los estados según la política codiciosa:
El algoritmo, por lo tanto iterar en las ecuaciones definidas anteriormente para evaluar con y esperanza a converger hacia una solución única .
Ejemplo de aplicacionEl problema de elegir el portafolio óptimo descrito en es un caso práctico de KADP. Es un problema de inversión financiera donde el agente decide si compra o no acciones. El objetivo está al final de la simulación para maximizar la ganancia del agente.
Su representación como MDL es la siguiente:
Por tanto, el agente invertirá (o no) en una acción a lo largo del tiempo para maximizar su riqueza con el objetivo de ser lo más rico posible al final del tiempo máximo definido. Para hacer que el problema sea lo más realista posible, el agente adopta un comportamiento tal que teme perder sus ganancias tanto como quiere obtenerlas.
Iteración Q ajustada (FQI)Este algoritmo permite calcular una aproximación de la función de valores óptimos de los estados de acción a partir de un conjunto de muestras del MDP. Sabiendo que es posible deducir la póliza correspondiente . Se basa en el mismo principio que el algoritmo de iteración sobre el valor de los estados de acción, que consiste en calcular iterativamente el punto fijo de la ecuación de Bellman:
Intentamos calcular este punto fijo a partir de un conjunto de muestras (un conjunto de transiciones de la forma ). El algoritmo procede como sigue:
Este algoritmo se puede utilizar con cualquier método de aprendizaje supervisado, en particular los métodos no paramétricos, que no hacen suposiciones sobre la forma de . Esto permite obtener aproximaciones precisas independientemente del tamaño de los espacios de estado y acción, incluso en el caso de espacios continuos.
Se puede consultar una implementación en la que el método de aprendizaje sea una regresión de mínimos cuadrados regularizada; se utiliza una red neuronal ; finalmente se analiza un enfoque basado en diferentes tipos de árboles de regresión.
En general, la convergencia del algoritmo solo se ha demostrado para una determinada clase de métodos de aprendizaje. Se pueden utilizar diferentes condiciones de parada; en la práctica, la fijación del número de iteraciones permite asegurar la terminación del algoritmo, sea cual sea el método de aprendizaje utilizado.
En, se utilizaron varios problemas para evaluar el algoritmo con diferentes métodos de aprendizaje supervisado y con varios tipos de lote (lote puro y lote en crecimiento). En estos problemas, el algoritmo de iteración Q ajustado es muy poderoso, en particular utilizando métodos de aprendizaje no paramétricos (como el método de los k vecinos más cercanos ).
Iteración de la política de mínimos cuadradosMuy adecuado para el aprendizaje puramente fuera de línea, LSPI es un enfoque reconocido para explotar de manera eficiente un conjunto de datos fijo preexistente ().
Descripción del algoritmoEste algoritmo es una adaptación del algoritmo de iteración de políticas expresado en función de los estados de acción. Se centra exclusivamente en la evaluación de , y la política nunca se representa explícitamente, sino que simplemente se deduce sobre la marcha, mediante la clásica elección codiciosa :
En comparación con PI, LSPI realiza dos grandes cambios:
1. La función se expresa como una combinación lineal de funciones , :
Por tanto, las funciones forman una base de un subespacio del espacio de funciones de acción de estado, elegidas de una vez por todas al principio. Entonces, internamente, la función está simplemente representada por los coeficientes .
Este modelo tiene una ventaja: sea cual sea el número de estados y acciones, solo se usan coeficientes para representar el conjunto de valores de , contra si usamos una representación tabular clásica. Esto hace posible procesar de manera eficiente los MDP que tienen un gran número de estados y / o acciones. Incluso podemos, en este formalismo, considerar espacios de estados o acciones continuas.
Sin embargo, la desventaja es que ahora estamos restringidos a las funciones de . En el algoritmo PI con valores de estado, la fase de evaluación de la política consiste en determinar el punto fijo del operador
ya sea por la resolución de un sistema lineal, o por cálculo iterativo en .
Pero incluso si por definición , no lo hacemos en general . La idea en LSPI es entonces proyectar (en el sentido de mínimos cuadrados, de ahí el nombre del algoritmo) la actualización en :
y por tanto obtener una aproximación de cuál es estable por la regla de actualización seguida por la proyección. En este punto fijo se obtiene resolviendo un sistema lineal.
2. La segunda diferencia es que LSPI no asume el MDP conocido; el algoritmo se basa únicamente en un conjunto de muestras MDP, dadas en forma de cuatrillizos . Estas muestras se pueden dar directamente al inicio del algoritmo (modo de lote puro) o progresivamente (modo de semi-lote o en línea). Concretamente, el algoritmo se satisface para realizar las actualizaciones anteriores sobre el conjunto de muestras, posiblemente de forma repetida para provocar la convergencia ("repetición de la experiencia"). Podemos mostrar que en realidad esto equivale a aplicar la actualización al MDP real, pero con las probabilidades de transiciones obtenidas empíricamente según la distribución de las muestras. Por tanto, en el supuesto de que esta distribución se ajuste a las verdaderas probabilidades de transición del MDP subyacente, el resultado converge asintóticamente hacia el valor verdadero y, por tanto, en última instancia, hacia la función óptima . También podemos notar que cada muestra contribuye linealmente a cada iteración (agrega un término en la suma de definición y el operador de proyección es lineal), lo que permite configurar optimizaciones cuando las muestras llegan gradualmente.
La figura de enfrente resume esquemáticamente el algoritmo LSPI.
Ejemplo de aplicacionEn, se proponen varias aplicaciones del algoritmo LSPI. Uno de ellos, en el que el algoritmo es particularmente eficaz en comparación con un algoritmo Q-Learning , es el problema del equilibrio y la conducción de la bicicleta .
En este problema, el alumno conoce en cada paso el ángulo y la velocidad angular del manillar, así como el ángulo, la velocidad y la aceleración angular del ángulo que forma la bicicleta con la vertical. A continuación, debe elegir qué fuerza de rotación aplicar al manillar (elegida entre tres posibilidades), así como el desplazamiento de su centro de masa en relación con el plano de la bicicleta (también elegido entre tres posibilidades), así sucesivamente. mano para permanecer en equilibrio (es decir, aquí no exceda un ángulo de bicicleta / suelo de +/- 12 °) y, por otro lado, alcance un destino objetivo.
La implementación es puramente offline y consiste en observar el comportamiento de un agente aleatorio para recolectar alrededor de decenas de miles de muestras en forma de trayectorias. Las trayectorias recopiladas se cortan luego de unos pocos pasos de tiempo, para conservar solo la parte interesante antes de que entren en un escenario de caída inexorable. Las recompensas están relacionadas con la distancia alcanzada desde la meta. A continuación, se realizan algunas pasadas del algoritmo en estas muestras ("repetición de la experiencia") y se observa una convergencia muy rápida hacia estrategias viables.