¿Cuál es la diferencia entre el aprendizaje por refuerzo sin modelos y el basado en modelos?

29

¿Cuál es la diferencia entre el aprendizaje por refuerzo sin modelos y el basado en modelos?

Me parece que cualquier alumno sin modelo, que aprenda a través de prueba y error, podría reformularse como basado en el modelo. En ese caso, ¿cuándo serían apropiados los alumnos sin modelos?

vin
fuente
Vea también esta respuesta: qr.ae/TUtHbv .
nbro
¿Cómo quiere decir que podría replantear un alumno sin modelo como un modelo basado?
Hola

Respuestas:

14

El aprendizaje de refuerzo basado en modelos hace que un agente intente comprender el mundo y cree un modelo para representarlo. Aquí el modelo está tratando de capturar 2 funciones, la función de transición de estados y la función de recompensa . A partir de este modelo, el agente tiene una referencia y puede planificar en consecuencia.TR

Sin embargo, no es necesario aprender un modelo, y el agente puede aprender una política directamente usando algoritmos como Q-learning o gradiente de política.

Una simple comprobación para ver si un algoritmo RL está basado en modelo o no está modelo:

Si, después de aprender, el agente puede hacer predicciones sobre cuál será el próximo estado y la recompensa antes de tomar cada acción, es un algoritmo RL basado en modelos.

Si no puede, entonces es un algoritmo sin modelo.

Jaden Travnik
fuente
2
en sus palabras, "no es necesario aprender un modelo", y mi pregunta es: ¿por qué alguien tomaría un enfoque basado en modelos?
vin
44
Un gran ejemplo en el que puedo pensar es cuando quieres que un agente aprenda sobre su entorno sin optimizar realmente nada. Esto es parte del problema del aprendizaje continuo, necesita construir un modelo interno como "Golpeo paredes cuando mi sensor de distancia lee que una pared está cerca", entonces ese agente puede generalizar esa información a múltiples tareas si surgieran.
Jaden Travnik
2
gracias @Jaden Travnik. Entiendo por qué sería útil aprender una representación del entorno ("golpeo paredes cuando mi distancia lee que una pared está cerca") sin resolver alguna tarea (por ejemplo, navegar a la cocina). pero ¿por qué se consideraría esto como un RL sin modelo y no una tarea de aprendizaje supervisada vainilla?
vin
2
Esto no sería aprendizaje supervisado porque no hay datos etiquetados. El agente no tendría idea de qué significan las señales, por lo que no pudo distinguir un sensor de distancia de un termómetro. Lo que el agente está aprendiendo son predicciones de señales basadas en otras señales, que es en sí mismo un modelo de su mundo.
Jaden Travnik
2
Con un enfoque basado en modelos, el agente aprende a predecir el siguiente estado, según su explicación original. lo hace aprendiendo <x, y>, donde x es (s1, acción) e y es (s2, recompensa). lo siento si estoy malinterpretando, pero ¿no es ese aprendizaje supervisado?
vin
12

¿Cuál es la diferencia entre el aprendizaje por refuerzo sin modelos y el basado en modelos?

En el aprendizaje por refuerzo, los términos "basado en el modelo" y "sin modelo" no se refieren al uso de una red neuronal u otro modelo de aprendizaje estadístico para predecir valores, o incluso para predecir el siguiente estado (aunque este último puede usarse como parte de un algoritmo basado en modelo y se llamará "modelo", independientemente de si el algoritmo está basado en modelo o no).

En cambio, el término se refiere estrictamente a si, mientras aprende o actúa, el agente usa predicciones de la respuesta del entorno. El agente puede usar una sola predicción del modelo de la próxima recompensa y el siguiente estado (una muestra), o puede pedirle al modelo la próxima recompensa esperada , o la distribución completa de los siguientes estados y las próximas recompensas. Estas predicciones se pueden proporcionar completamente fuera del agente de aprendizaje, por ejemplo, mediante un código de computadora que comprende las reglas de un juego de dados o de mesa. O pueden ser aprendidos por el agente, en cuyo caso serán aproximados.

El hecho de que haya un modelo del entorno implementado no significa que un agente RL esté "basado en el modelo". Para calificar como "basado en el modelo", los algoritmos de aprendizaje deben hacer referencia explícita al modelo:

  • Los algoritmos que solo toman muestras de la experiencia como Monte Carlo Control, SARSA, Q-learning, Actor-Critic son algoritmos RL "sin modelo". Dependen de muestras reales del entorno y nunca usan predicciones generadas del próximo estado y la próxima recompensa para alterar el comportamiento (aunque pueden tomar muestras de la memoria de la experiencia, que está cerca de ser un modelo).

  • Los algoritmos arquetípicos basados ​​en modelos son Programación dinámica (iteración de políticas e iteración de valores): todos ellos utilizan las predicciones o distribuciones del modelo del siguiente estado y la recompensa para calcular acciones óptimas. Específicamente en la programación dinámica, el modelo debe proporcionar probabilidades de transición de estado y recompensa esperada de cualquier estado, par de acciones. Tenga en cuenta que esto rara vez es un modelo aprendido.

  • El aprendizaje básico de TD, utilizando solo valores de estado, también debe basarse en modelos para funcionar como un sistema de control y seleccionar acciones. Para elegir la mejor acción, necesita consultar un modelo que prediga lo que sucederá en cada acción e implementar una política como π(s)=argmaxunas,rpags(s,rEl |s,una)(r+v(s)) donde pags(s,rEl |s,una) es la probabilidad de recibir la recompensar y el siguiente estados cuando se toma la acciónuna en el estados . Esa funciónpags(s,rEl |s,una) es esencialmente el modelo.

La literatura de RL distingue entre "modelo" como modelo del entorno para el aprendizaje "basado en modelos" y "sin modelos", y el uso de aprendices estadísticos, como las redes neuronales.

En RL, las redes neuronales a menudo se emplean para aprender y generalizar funciones de valor, como el valor Q que predice el rendimiento total (suma de recompensas con descuento) dado un par de estado y acción. Dicha red neuronal entrenada a menudo se denomina "modelo", por ejemplo, en el aprendizaje supervisado. Sin embargo, en la literatura de RL, verá el término "aproximador de funciones" utilizado para dicha red para evitar la ambigüedad.

Me parece que cualquier alumno sin modelo, que aprenda a través de prueba y error, podría reformularse como basado en el modelo.

Creo que aquí está utilizando la comprensión general de la palabra "modelo" para incluir cualquier estructura que haga predicciones útiles. Eso se aplicaría, por ejemplo, a la tabla de valores Q en SARSA.

Sin embargo, como se explicó anteriormente, no es así como se usa el término en RL. Entonces, aunque su comprensión de que RL construye representaciones internas útiles es correcta, técnicamente no es correcto que esto pueda usarse para volver a enmarcar entre "sin modelo" como "basado en modelo", porque esos términos tienen un significado muy específico en RL .

En ese caso, ¿cuándo serían apropiados los alumnos sin modelos?

En general, con el estado actual del arte en RL, si no se proporciona un modelo exacto como parte de la definición del problema, los enfoques sin modelo suelen ser superiores.

Hay mucho interés en los agentes que crean modelos predictivos del entorno, y hacerlo como un "efecto secundario" (aunque sigue siendo un algoritmo sin modelo) puede ser útil, ya que puede regularizar una red neuronal o ayudar a descubrir predicciones clave características que también se pueden usar en políticas o redes de valor. Sin embargo, los agentes basados ​​en modelos que aprenden sus propios modelos para la planificación tienen el problema de que la inexactitud en estos modelos puede causar inestabilidad (las inexactitudes se multiplican aún más en el futuro). Se están haciendo algunos avances prometedores utilizando agentes y / o mecanismos basados ​​en la imaginación para decidir cuándo y cuánto confiar en el modelo aprendido durante la planificación.

En este momento (en 2018), si tiene un problema del mundo real en un entorno sin un modelo conocido explícito al principio, entonces la apuesta más segura es utilizar un enfoque sin modelo, como DQN o A3C. Eso puede cambiar a medida que el campo se mueve rápidamente y nuevas arquitecturas más complejas podrían ser la norma en unos pocos años.

Neil Slater
fuente
1
Una pequeña corrección, normalmente los términos "basado en modelo" o "modelo libre" no se utilizan para algoritmos de planificación como MCTS. Solo se usa para clasificar algoritmos de aprendizaje.
Miguel Saraiva
@MiguelSaraiva: no estoy 100% seguro de eso, pero he eliminado la referencia a MCTS. Fuera de interés, ¿dónde ubicaría a DynaQ con respecto a esta limitación del uso de los términos? Creo que se vuelve complicado, cuando todos los algoritmos comparten una visión tan común del modelo MDP y las políticas de mejora, para determinar dónde están los límites entre la planificación y el aprendizaje.
Neil Slater
Podría estar equivocado, soy un novato en el área. Solo recuerdo que un maestro del campo hizo ese comentario después de haber hecho el mismo comentario.
Miguel Saraiva
5

unassr

El objetivo principal del agente es recolectar la mayor cantidad de recompensa "a largo plazo". Para hacer eso, el agente necesita encontrar una política óptima (más o menos, la estrategia óptima para comportarse en el entorno). En general, una política es una función que, dado un estado actual del entorno, genera una acción (o una distribución de probabilidad sobre las acciones, si la política es estocástica ) para ejecutarse en el entorno. Por lo tanto, una política puede considerarse como la "estrategia" utilizada por el agente para comportarse en este entorno. Una política óptima (para un entorno dado) es una política que, si se sigue, hará que el agente recaude la mayor cantidad de recompensa a largo plazo (que es el objetivo del agente). En RL, estamos interesados ​​en encontrar políticas óptimas.

El entorno puede ser determinista (es decir, aproximadamente, la misma acción en el mismo estado conduce al mismo estado siguiente, para todos los pasos de tiempo) o estocástico (o no determinista), es decir, si el agente realiza una acción en un cierto estado, el siguiente estado resultante del medio ambiente podría no ser siempre el mismo: existe la probabilidad de que sea un cierto estado u otro. Por supuesto, estas incertidumbres dificultarán la tarea de encontrar la política óptima.

En RL, el problema a menudo se formula matemáticamente como un proceso de decisión de Markov (MDP). Un MDP es una forma de representar la "dinámica" del entorno, es decir, la forma en que el entorno reaccionará a las posibles acciones que el agente podría tomar, en un estado dado. Más precisamente, un MDP está equipado con una función de transición (o "modelo de transición"), que es una función que, dado el estado actual del entorno y una acción (que el agente podría tomar), genera una probabilidad de pasar a cualquier de los próximos estados. Una función de recompensatambién está asociado con un MDP. Intuitivamente, la función de recompensa genera una recompensa, dado el estado actual del entorno (y, posiblemente, una acción tomada por el agente y el siguiente estado del entorno). Colectivamente, las funciones de transición y recompensa a menudo se denominan modelo de entorno. Para concluir, el MDP es el problema y la solución al problema es una política. Además, la "dinámica" del entorno se rige por las funciones de transición y recompensa (es decir, el "modelo").

Sin embargo, a menudo no tenemos el MDP, es decir, no tenemos las funciones de transición y recompensa (del MDP asociado al entorno). Por lo tanto, no podemos estimar una política del MDP, porque es desconocida. Tenga en cuenta que, en general, si tuviéramos las funciones de transición y recompensa del MDP asociadas con el entorno, podríamos explotarlas y recuperar una política óptima (utilizando algoritmos de programación dinámica).

En ausencia de estas funciones (es decir, cuando se desconoce el MDP), para estimar la política óptima, el agente necesita interactuar con el entorno y observar las respuestas del entorno. Esto a menudo se conoce como el "problema de aprendizaje de refuerzo", porque el agente necesitará estimar una política reforzando sus creencias sobre la dinámica del entorno. Con el tiempo, el agente comienza a comprender cómo responde el entorno a sus acciones y, por lo tanto, puede comenzar a estimar la política óptima. Por lo tanto, en el problema de RL, el agente estima la política óptima para comportarse en un entorno desconocido (o parcialmente conocido) al interactuar con él (utilizando un enfoque de "prueba y error").

En este contexto, un modelo basadoEl algoritmo es un algoritmo que utiliza la función de transición (y la función de recompensa) para estimar la política óptima. El agente podría tener acceso solo a una aproximación de la función de transición y las funciones de recompensa, que el agente puede aprender mientras interactúa con el entorno o se le puede dar al agente (por ejemplo, otro agente). En general, en un algoritmo basado en modelos, el agente puede predecir potencialmente la dinámica del entorno (durante o después de la fase de aprendizaje), porque tiene una estimación de la función de transición (y la función de recompensa). Sin embargo, tenga en cuenta que las funciones de transición y recompensa que utiliza el agente para mejorar su estimación de la política óptima podrían ser solo aproximaciones de las funciones "verdaderas". Por lo tanto, es posible que nunca se encuentre la política óptima (debido a estas aproximaciones).

Un algoritmo sin modelo es un algoritmo que estima la política óptima sin usar o estimar la dinámica (funciones de transición y recompensa) del entorno. En la práctica, un algoritmo sin modelo estima una "función de valor" o la "política" directamente de la experiencia (es decir, la interacción entre el agente y el entorno), sin utilizar ni la función de transición ni la función de recompensa. Una función de valor puede considerarse como una función que evalúa un estado (o una acción tomada en un estado), para todos los estados. A partir de esta función de valor, se puede derivar una política.

En la práctica, una forma de distinguir entre algoritmos basados ​​en modelos o sin modelos es mirar los algoritmos y ver si usan la función de transición o recompensa.

Por ejemplo, veamos la regla de actualización principal en el algoritmo de Q-learning :

Q(St,UNAt)Q(St,UNAt)+α(Rt+1+γmaxunaQ(St+1,una)-Q(St,UNAt))

Rt+1

Ahora, veamos la regla de actualización principal del algoritmo de mejora de políticas :

Q(s,una)sS,rRpags(s,rEl |s,una)(r+γV(s))

pags(s,rEl |s,una)

nbro
fuente
2

RL sin modelo

En Model-Free RL, el agente no tiene acceso a un modelo del entorno. Por entorno quiero decir una función que predice la transición de estado y las recompensas.

Al momento de escribir, los métodos sin modelos son más populares y se han investigado ampliamente.

RL basado en modelo

En el modelo basado en RL, el agente tiene acceso a un modelo del entorno.

La principal ventaja es que esto le permite al agente planificar con anticipación al pensar en el futuro. Los agentes destilan los resultados de la planificación anticipada en una política aprendida. Un famoso ejemplo de RL basado en modelos es AlphaZero .

El principal inconveniente es que muchas veces una representación del medio ambiente del entorno no suele estar disponible.


A continuación se muestra una taxonomía no exhaustiva de algoritmos RL, que puede ayudarlo a visualizar mejor el paisaje RL.

ingrese la descripción de la imagen aquí

Rrz0
fuente
1

De acuerdo con OpenAI - Tipos de algoritmos RL , los algoritmos que utilizan un modelo del entorno, es decir, una función que predice transiciones de estado y recompensas, se denominan métodos basados ​​en modelos y aquellos que no se denominan libres de modelos . Este modelo puede haber sido dado por el agente o aprendido por el agente.

El uso de un modelo le permite al agente planificar al pensar con anticipación, ver lo que sucedería para una variedad de posibles opciones y decidir explícitamente entre sus opciones. Esto puede ser útil cuando se enfrentan a problemas que requieren más pensamiento a largo plazo. Una forma de realizar la planificación es mediante el uso de algún tipo de búsqueda de árbol, por ejemplo, la búsqueda de árbol de Monte Carlo (MCTS) o, que sospecho que también podría usarse, variantes del árbol aleatorio de exploración rápida (RRT). Ver, por ejemplo, agentes que imaginan y planifican .

El agente puede luego destilar los resultados de la planificación anticipada en una política aprendida, esto se conoce como iteración experta.

Un modelo también se puede utilizar para crear un entorno simulado o "imaginado" en el que el estado se actualiza mediante el uso del modelo, y hacer que el agente aprenda dentro de ese entorno, como en World Models .

En muchos escenarios del mundo real, el modelo de verdad del entorno no está disponible para el agente. Si un agente quiere usar un modelo en este caso, tiene que aprender el modelo, lo que puede ser un desafío por varias razones.

Sin embargo, hay casos en los que el agente usa un modelo que ya se conoce y, en consecuencia, no tiene que aprender el modelo, como en AlphaZero , donde el modelo viene en forma de las reglas del juego.

Hola Adios
fuente
1

Aunque hay varias buenas respuestas, quiero agregar este párrafo de Reinforcement Learning: An Introduction , página 303, para una visión más psicológica de la diferencia.

La distinción entre algoritmos de aprendizaje de refuerzo sin modelos y basados ​​en modelos corresponde a la distinción que hacen los psicólogos entre el control habitual y el objetivo de los patrones de comportamiento aprendidos. Los hábitos son patrones de comportamiento desencadenados por estímulos apropiados y luego se realizan más o menos automáticamente. El comportamiento dirigido a objetivos, de acuerdo con la forma en que los psicólogos usan la frase, tiene un propósito en el sentido de que está controlado por el conocimiento del valor de los objetivos y la relación entre las acciones y sus consecuencias. A veces se dice que los hábitos están controlados por estímulos antecedentes, mientras que el comportamiento dirigido a objetivos está controlado por sus consecuencias (Dickinson, 1980, 1985). El control dirigido por objetivos tiene la ventaja de que puede cambiar rápidamente el comportamiento de un animal cuando el entorno cambia su forma de reaccionar ante las acciones del animal. Si bien el comportamiento habitual responde rápidamente a las aportaciones de un entorno acostumbrado, no puede adaptarse rápidamente a los cambios en el entorno.

Continúa desde allí y tiene un buen ejemplo después.

Creo que el punto principal que no siempre se explicó en las otras respuestas es que, en un enfoque sin modelos, todavía necesita algún tipo de entorno para decirle cuál es la recompensa asociada con su acción. La gran diferencia es que NO necesita almacenar ninguna información sobre el modelo. Usted le da al medio ambiente su acción elegida, actualiza su política estimada y se olvida de ella. Por otro lado, en los enfoques basados ​​en modelos, debe conocer el historial de transiciones de estado como en la Programación dinámica, o debe poder calcular todos los próximos estados posibles y las recompensas asociadas, a partir del estado actual.

Miguel Saraiva
fuente