El aprendizaje Q es un algoritmo de aprendizaje por refuerzo sin modelo para aprender el valor de una acción en un estado particular. No requiere un modelo del entorno (de ahí su denominación de "sin modelo") y puede manejar problemas con transiciones y recompensas aleatorias sin necesidad de adaptaciones. [1]
Para cualquier proceso de decisión finito de Markov , el aprendizaje Q encuentra una política óptima en el sentido de maximizar el valor esperado de la recompensa total en todos y cada uno de los pasos sucesivos, comenzando desde el estado actual. [2] El aprendizaje Q puede identificar una política de selección de acción óptima para cualquier proceso de decisión finito de Markov dado, dado un tiempo de exploración infinito y una política parcialmente aleatoria. [2] "Q" se refiere a la función que calcula el algoritmo: las recompensas esperadas para una acción tomada en un estado dado. [3]
El aprendizaje por refuerzo implica un agente , un conjunto de estados y un conjunto de acciones por estado. Al realizar una acción , el agente pasa de un estado a otro. La ejecución de una acción en un estado específico le proporciona al agente una recompensa (una puntuación numérica).
El objetivo del agente es maximizar su recompensa total. Para ello, suma la recompensa máxima que puede obtener de estados futuros a la recompensa por alcanzar su estado actual, lo que influye de manera efectiva en la acción actual mediante la recompensa potencial futura. Esta recompensa potencial es una suma ponderada de los valores esperados de las recompensas de todos los pasos futuros a partir del estado actual. [1]
Como ejemplo, considere el proceso de abordar un tren, en el que la recompensa se mide por el negativo del tiempo total empleado en abordar (alternativamente, el costo de abordar el tren es igual al tiempo de abordaje). Una estrategia es entrar por la puerta del tren tan pronto como se abren, minimizando el tiempo de espera inicial. Sin embargo, si el tren está lleno, entonces tendrá una entrada lenta después de la acción inicial de entrar por la puerta ya que la gente luchará por salir del tren mientras intenta abordar. El tiempo total de abordaje, o el costo, es entonces:
Al día siguiente, por casualidad (exploración), decides esperar y dejar que otras personas salgan primero. Esto inicialmente da como resultado un tiempo de espera más largo. Sin embargo, pasas menos tiempo luchando con los pasajeros que salen. En general, este camino tiene una recompensa mayor que el del día anterior, ya que el tiempo total de embarque ahora es:
A través de la exploración, a pesar de que la acción inicial (paciente) resulta en un costo mayor (o recompensa negativa) que en la estrategia enérgica, el costo general es menor, lo que revela una estrategia más gratificante.
Después de dar pasos hacia el futuro, el agente decidirá cuál será el siguiente paso. El peso de este paso se calcula como , donde (el factor de descuento ) es un número entre 0 y 1 ( ). Suponiendo que , tiene el efecto de valorar las recompensas recibidas antes en mayor medida que las recibidas después (lo que refleja el valor de un "buen comienzo"). también puede interpretarse como la probabilidad de tener éxito (o sobrevivir) en cada paso .
El algoritmo, por tanto, tiene una función que calcula la calidad de una combinación estado-acción:
Antes de que comience el aprendizaje, se inicializa con un valor fijo posiblemente arbitrario (elegido por el programador). Luego, cada vez que el agente selecciona una acción , observa una recompensa , ingresa a un nuevo estado (que puede depender tanto del estado anterior como de la acción seleccionada) y se actualiza. El núcleo del algoritmo es una ecuación de Bellman como una simple actualización de iteración de valor , utilizando el promedio ponderado del valor actual y la nueva información: [4]
¿Dónde está la recompensa recibida al pasar del estado al estado , y es la tasa de aprendizaje .
Nótese que es la suma de tres factores:
Un episodio del algoritmo termina cuando el estado es un estado final o terminal . Sin embargo, el aprendizaje Q también puede aprender en tareas no episódicas (como resultado de la propiedad de las series infinitas convergentes). Si el factor de descuento es menor que 1, los valores de acción son finitos incluso si el problema puede contener bucles infinitos.
Para todos los estados finales , nunca se actualiza, sino que se establece en el valor de recompensa observado para el estado . En la mayoría de los casos, se puede tomar como igual a cero.
La tasa de aprendizaje o tamaño de paso determina en qué medida la información recién adquirida anula la información anterior. Un factor de 0 hace que el agente no aprenda nada (explotando exclusivamente el conocimiento previo), mientras que un factor de 1 hace que el agente considere solo la información más reciente (ignorando el conocimiento previo para explorar posibilidades). En entornos completamente deterministas , una tasa de aprendizaje de es óptima. Cuando el problema es estocástico , el algoritmo converge bajo algunas condiciones técnicas en la tasa de aprendizaje que requieren que disminuya a cero. En la práctica, a menudo se utiliza una tasa de aprendizaje constante, como para todos los . [5]
El factor de descuento determina la importancia de las recompensas futuras. Un factor de 0 hará que el agente sea "miope" (o miope) al considerar solo las recompensas actuales, es decir (en la regla de actualización anterior), mientras que un factor que se acerca a 1 hará que se esfuerce por lograr una recompensa alta a largo plazo. Si el factor de descuento alcanza o supera 1, los valores de la acción pueden divergir. Para , sin un estado terminal, o si el agente nunca alcanza uno, todos los historiales del entorno se vuelven infinitamente largos y las utilidades con recompensas aditivas, no descontadas, generalmente se vuelven infinitas. [6] Incluso con un factor de descuento solo ligeramente inferior a 1, el aprendizaje de la función Q conduce a la propagación de errores e inestabilidades cuando la función de valor se aproxima con una red neuronal artificial . [7] En ese caso, comenzar con un factor de descuento más bajo y aumentarlo hacia su valor final acelera el aprendizaje. [8]
Dado que el aprendizaje Q es un algoritmo iterativo, supone implícitamente una condición inicial antes de que se produzca la primera actualización. Los valores iniciales altos, también conocidos como "condiciones iniciales optimistas", [9] pueden fomentar la exploración: sin importar qué acción se seleccione, la regla de actualización hará que tenga valores más bajos que la otra alternativa, lo que aumenta la probabilidad de elección. La primera recompensa se puede utilizar para restablecer las condiciones iniciales. [10] Según esta idea, la primera vez que se realiza una acción, la recompensa se utiliza para establecer el valor de . Esto permite un aprendizaje inmediato en caso de recompensas deterministas fijas. Se espera que un modelo que incorpore el restablecimiento de las condiciones iniciales (RIC) prediga el comportamiento de los participantes mejor que un modelo que suponga cualquier condición inicial arbitraria (AIC). [10] RIC parece ser coherente con el comportamiento humano en experimentos repetidos de elección binaria. [10]
El aprendizaje Q en su forma más simple almacena datos en tablas. Este enfoque falla cuando aumenta el número de estados o acciones, ya que la probabilidad de que el agente visite un estado en particular y realice una acción en particular es cada vez menor.
El aprendizaje Q se puede combinar con la aproximación de funciones . [11] Esto hace posible aplicar el algoritmo a problemas más grandes, incluso cuando el espacio de estados es continuo.
Una solución es utilizar una red neuronal artificial (adaptada) como aproximador de funciones. [12] Otra posibilidad es integrar la interpolación de reglas difusas (FRI) y utilizar bases de reglas difusas dispersas [13] en lugar de tablas Q discretas o ANN, que tiene la ventaja de ser una forma de representación del conocimiento legible por humanos. La aproximación de funciones puede acelerar el aprendizaje en problemas finitos, debido al hecho de que el algoritmo puede generalizar experiencias anteriores a estados nunca antes vistos.
Otra técnica para reducir el espacio de estados/acciones consiste en cuantificar los valores posibles. Consideremos el ejemplo de aprender a mantener en equilibrio un palo sobre un dedo. Para describir un estado en un momento determinado del tiempo se necesita conocer la posición del dedo en el espacio, su velocidad, el ángulo del palo y la velocidad angular del palo. Esto produce un vector de cuatro elementos que describe un estado, es decir, una instantánea de un estado codificado en cuatro valores. El problema es que existen infinitos estados posibles. Para reducir el espacio posible de acciones válidas, se pueden asignar múltiples valores a un grupo. No se conoce la distancia exacta del dedo desde su posición inicial (de -infinito a infinito), sino si está lejos o no (cerca, lejos). [14]
El aprendizaje Q fue introducido por Chris Watkins en 1989. [15] Watkins y Peter Dayan presentaron una prueba de convergencia en 1992. [16]
Watkins estaba tratando el tema de “Aprendizaje a partir de recompensas retrasadas”, el título de su tesis doctoral. Ocho años antes, en 1981, el mismo problema, bajo el nombre de “Aprendizaje por refuerzo retrasado”, fue resuelto por la matriz adaptativa Crossbar (CAA) de Bozinovski. [17] [18] La matriz de memoria era la misma que la tabla Q de aprendizaje Q que se creó ocho años después. La arquitectura introdujo el término “evaluación de estado” en el aprendizaje por refuerzo. El algoritmo de aprendizaje Crossbar, escrito en pseudocódigo matemático en el artículo, en cada iteración realiza el siguiente cálculo:
El término “refuerzo secundario” se toma prestado de la teoría del aprendizaje animal para modelar los valores de estado a través de la retropropagación : el valor de estado de la situación de consecuencia se retropropaga a las situaciones encontradas previamente. CAA calcula los valores de estado verticalmente y las acciones horizontalmente (la "barra transversal"). Los gráficos de demostración que muestran el aprendizaje de refuerzo retrasado contenían estados (estados deseables, indeseables y neutrales), que fueron calculados por la función de evaluación de estado. Este sistema de aprendizaje fue un precursor del algoritmo de aprendizaje Q. [19]
En 2014, Google DeepMind patentó [20] una aplicación de Q-learning al aprendizaje profundo , denominada "aprendizaje de refuerzo profundo" o "Q-learning profundo", que puede ejecutar juegos de Atari 2600 a niveles humanos expertos.
El sistema DeepMind utilizó una red neuronal convolucional profunda , con capas de filtros convolucionales en mosaico para imitar los efectos de los campos receptivos. El aprendizaje de refuerzo es inestable o divergente cuando se utiliza un aproximador de funciones no lineales, como una red neuronal, para representar Q. Esta inestabilidad proviene de las correlaciones presentes en la secuencia de observaciones, el hecho de que pequeñas actualizaciones de Q pueden cambiar significativamente la política del agente y la distribución de datos, y las correlaciones entre Q y los valores objetivo. El método se puede utilizar para la búsqueda estocástica en varios dominios y aplicaciones. [1] [21]
La técnica utilizada es la repetición de la experiencia, un mecanismo de inspiración biológica que utiliza una muestra aleatoria de acciones anteriores en lugar de la acción más reciente que se ha llevado a cabo. [3] Esto elimina las correlaciones en la secuencia de observación y suaviza los cambios en la distribución de los datos. Las actualizaciones iterativas ajustan Q hacia valores objetivo que solo se actualizan periódicamente, lo que reduce aún más las correlaciones con el objetivo. [22]
Debido a que el valor máximo aproximado futuro de la acción en el aprendizaje Q se evalúa utilizando la misma función Q que en la política de selección de la acción actual, en entornos ruidosos el aprendizaje Q a veces puede sobreestimar los valores de la acción, lo que ralentiza el aprendizaje. Se propuso una variante llamada aprendizaje Q doble para corregir esto. El aprendizaje Q doble [23] es un algoritmo de aprendizaje de refuerzo fuera de política, donde se utiliza una política diferente para la evaluación del valor que la que se utiliza para seleccionar la siguiente acción.
En la práctica, se entrenan dos funciones de valor independientes de forma simétrica entre sí utilizando experiencias independientes. El paso de actualización del doble aprendizaje Q es el siguiente:
Ahora, el valor estimado del futuro descontado se evalúa utilizando una política diferente, lo que resuelve el problema de sobreestimación.
Este algoritmo se modificó posteriormente en 2015 y se combinó con aprendizaje profundo , [24] como en el algoritmo DQN, dando como resultado Double DQN, que supera al algoritmo DQN original. [25]
El aprendizaje Q retrasado es una implementación alternativa del algoritmo de aprendizaje Q en línea , con un aprendizaje probablemente aproximadamente correcto (PAC) . [26]
Greedy GQ es una variante de Q -learning para usar en combinación con la aproximación de funciones (lineal). [27] La ventaja de Greedy GQ es que la convergencia está garantizada incluso cuando se utiliza la aproximación de funciones para estimar los valores de acción.
El aprendizaje Q distributivo es una variante del aprendizaje Q que busca modelar la distribución de los retornos en lugar del retorno esperado de cada acción. Se ha observado que facilita la estimación por redes neuronales profundas y puede permitir métodos de control alternativos, como el control sensible al riesgo. [28]
Se ha propuesto el aprendizaje Q en el entorno multiagente (véase la sección 4.1.2 en [29] ). Un enfoque consiste en simular que el entorno es pasivo. [30] Littman propone el algoritmo de aprendizaje Q minimax. [31]
El algoritmo estándar de aprendizaje Q (que utiliza una tabla) se aplica únicamente a espacios de acción y estados discretos. La discretización de estos valores conduce a un aprendizaje ineficiente, en gran medida debido a la maldición de la dimensionalidad . Sin embargo, existen adaptaciones del aprendizaje Q que intentan resolver este problema, como el aprendizaje Q de redes neuronales ajustadas por cables. [32]
{{cite book}}
: CS1 maint: location missing publisher (link)