SARSA y Q Learning son algoritmos de aprendizaje de refuerzo que funcionan de manera similar. La diferencia más notable es que SARSA está en la política, mientras que Q Learning está fuera de la política. Las reglas de actualización son las siguientes:
Q Aprendizaje:
SARSA:
donde y son el estado, la acción y la recompensa en el tiempo de paso y es un factor de descuento.
En su mayoría se ven iguales, excepto que en SARSA tomamos medidas reales y en Q Learning tomamos las medidas con la mayor recompensa.
¿Existen escenarios teóricos o prácticos en los que uno debería preferir uno sobre el otro? Puedo ver que tomar el máximo en Q Learning puede ser costoso y aún más en espacios de acción continua. ¿Pero hay algo más?
Respuestas:
En realidad, en ambos "tomas" la acción única real generadaunt + 1
Q-learning tiene las siguientes ventajas y desventajas en comparación con SARSA:
El Q-learning (y el aprendizaje fuera de la política en general) tiene una mayor varianza por muestra que el SARSA, y puede sufrir problemas de convergencia como resultado. Esto aparece como un problema al entrenar redes neuronales a través de Q-learning.
SARSA se acercará a la convergencia permitiendo posibles penalizaciones por movimientos exploratorios, mientras que Q-learning los ignorará. Eso hace que SARSA sea más conservador: si existe el riesgo de una recompensa negativa grande cerca del camino óptimo, Q-learning tenderá a activar esa recompensa mientras explora, mientras que SARSA tenderá a evitar un camino óptimo peligroso y solo aprenderá lentamente a usarlo cuando se reducen los parámetros de exploración. El problema clásico del juguete que demuestra este efecto se llama caminar por los acantilados .
En la práctica, el último punto puede marcar una gran diferencia si los errores son costosos, por ejemplo, si está entrenando a un robot no en simulación, sino en el mundo real. Es posible que prefiera un algoritmo de aprendizaje más conservador que evite un alto riesgo, si hay tiempo real y dinero en juego si el robot se dañó.
Si su objetivo es capacitar a un agente óptimo en simulación, o en un entorno de bajo costo y de iteración rápida, entonces Q-learning es una buena opción, debido al primer punto (aprender directamente la política óptima). Si su agente aprende en línea y le interesan las recompensas obtenidas mientras aprende , entonces SARSA puede ser una mejor opción.
fuente