¿Cómo manejo la recompensa retrasada en el aprendizaje por refuerzo?

No estoy seguro de seguir exactamente los detalles sobre lo que quiere decir con el retraso de la recompensa y, desafortunadamente, al leer su expansión posterior, todavía no estoy muy seguro: p Según lo veo, hay al menos dos interpretaciones de sus preguntas :

  1. ¿Cómo puede un agente de RL aprender de las escasas recompensas?
    ¡Esta es la más fácil porque prácticamente todos los algoritmos RL existentes están diseñados para manejar este caso! El propósito directo de la función de valor es estimar la recompensa acumulativa futura (retrasada) al seguir alguna política. Eso no significa que siempre lo haga bien, pero los algoritmos RL se esfuerzan por hacerlo de manera teóricamente fundamentada.

    Dado que este es generalmente un objetivo crítico de los algoritmos RL, sospecho que esto no es lo que quiso decir, pero no me queda claro por qué el ejemplo que describió no entra en esta categoría. En su salud de regeneración a partir de una acción de “recuperación”, ¿el problema es que el agente no observará la salud recuperada en el siguiente paso? Porque si lo hace, entonces no tienes nada de qué preocuparte.

  2. ¿Cómo puede un agente de RL aprender de un entorno con una función de recompensa que no es de Markov?
    Este podría ser el que realmente quisiste decir. Este sería el caso si la recompensa recibida por alguna acción [matemática] a [/ matemática], tomada en el estado [matemática] s [/ matemática] se recibió [matemática] n> 1 [/ matemática] pasos posteriores o si el la recompensa en el paso de tiempo [matemática] t [/ matemática] dependía de algunos antecedentes de eventos.

    Cómo manejas esta configuración es más complicado. Sin embargo, lo primero que debe preguntarse es “¿qué sabemos sobre la estructura y las dependencias de la función de recompensa?” Por ejemplo, tal vez sea razonable decirle al agente sobre la propiedad de recuperación de salud en su función de recompensa. En este caso, en lugar de hacer que las recompensas dependan totalmente del valor del medidor de salud, debe recompensar explícitamente al agente cuando realice una acción de recuperación en una cantidad proporcional a la cantidad de salud que se recuperaría de él, incluso si lo hace. toma algunos pasos Luego, también restas recompensa cada vez que la salud disminuye de algún otro evento externo. En este contexto, conocer la estructura nos permitió replantear el objetivo subyacente en una forma de Markov y podemos usar métodos RL listos para usar.

    Por supuesto, tal vez sea más complicado que eso. Quizás sus recompensas sean incluso estocásticas en la cantidad de demora que tomará de una causa a la observación de la recompensa y la cantidad de recompensa que se recibirá. En este caso, si conoce la distribución del evento de recompensa, podría hacer un poco de matemática y extender el cálculo del valor esperado de la ecuación de Bellman para manejar esa estructura. Una vez que haga eso, debe quedar claro cómo adaptar el algoritmo de aprendizaje. No hay mucho trabajo, pero si buscas en Google para “aprender de las recompensas que no son de Markov”, también puedes encontrar algo de trabajo que la gente ha hecho sobre este tema. Mi sospecha sin hacer cálculos matemáticos es que si la función de recompensa es un sistema de Markov de primer orden, entonces la extensión de la ecuación de Bellman no sería tan mala y su algoritmo podría necesitar mantener una cola de longitud n antes de realizar actualizaciones para ser consistente con la ecuación modificada.

    Finalmente, tal vez ni siquiera conoces la estructura de la función de recompensa que no es de Markov. Este es fácilmente el caso más difícil. Afortunadamente, todavía hay métodos a su disposición para manejarlo. Específicamente, puede usar un RNN, como un NN con una capa LSTM, para aprender la función de valor. El RNN manejará las propiedades arbitrarias que no son de Markov de la función de recompensa, pero probablemente querrá usar algo más cercano a los retornos empíricos para entrenarlo, lo que también significa que debe usar métodos de política como enfoques de actores críticos. Si utiliza un poco de bootstrapping (a diferencia de los retornos más empíricos), también debe considerar el uso de redes obsoletas, similares a DQN, o puede tener mucha inestabilidad de aprendizaje. Por lo que vale, el artículo A3C de DeemMind realizó algunos experimentos utilizando redes con un LSTM que alimentaron la política y la función de valor, por lo que existe un precedente para que los LSTM funcionen con funciones de valor (aunque no creo que la motivación sea porque las recompensas no eran de Markov, todavía debería aplicarse). Es posible que desee utilizar un enfoque RL como ese.

La mejor manera de hacerlo es difícil y si logras hacerlo, habrás creado una inteligencia general.

Usaré mi explicación amigable favorita para el usuario, el ejemplo del refrigerador.

En el nivel básico, tienes impulsos biológicos, hambre en este ejemplo.

El hambre es mala, por definición.

Su cerebro se da cuenta de que si no come, tendrá hambre más tarde. Entonces no comer es malo.

Tu cerebro se da cuenta de que si tienes una nevera vacía, no puedes comer más tarde. Entonces tener una nevera vacía es malo.

Tu cerebro se da cuenta de que si tienes un refrigerador medio vacío, más tarde tendrás un refrigerador vacío. Así que tener una nevera medio vacía es malo.

Tu cerebro se da cuenta de que si compras cosas en el supermercado, obtienes una nevera más completa. Sa comprar cosas en el supermercado es bueno.

Tu cerebro se da cuenta de que si no tienes dinero, no puedes comprar cosas en el supermercado. Entonces tener dinero es bueno.

Tu cerebro nota que si tienes un trabajo, entonces obtienes dinero. Entonces tener un trabajo es bueno.

La conclusión de esto es que a partir del impulso biológico muy básico del hambre, se construye una heurística que dice que tener un trabajo es bueno. Se necesitan algunos niveles de abstracción. Así es como los humanos manejan la gratificación tardía.

En un entorno más formal, así es como funciona:

El aprendizaje supervisado proporciona las entradas que describen una situación y una etiqueta para nombrar esa situación. El aprendizaje supervisado consiste en encontrar métodos poderosos para discriminar situaciones.

El aprendizaje de refuerzo consiste en discriminar entre lo que es bueno y lo que es malo según una métrica. (Y esto se usa para dirigir acciones) Al hacer esto, crea representaciones intermedias que finalmente se colapsan en una métrica de recompensa de una sola dimensión. Todavía hay problemas no resueltos de estabilidad numérica, el aprendizaje por refuerzo aún requiere una sintonización adecuada para funcionar.

El aprendizaje de predicción de la situación es la mejor manera de manejar la recompensa retrasada. Comienzas con el aprendizaje por refuerzo para identificar las situaciones más importantes. Luego intenta predecir qué situación sucederá después de otra situación, predice las transiciones de la situación. Y luego, asocias la recompensa a la situación actual mediante la propagación retroactiva de la recompensa de la situación futura a la situación anterior. Obviamente, esto tendrá muchos problemas de estabilidad numérica.

Haz que esto funcione y serás un héroe de la inteligencia artificial.

More Interesting

¿Puedo usar el algoritmo de aprendizaje automático en mi proyecto de investigación aunque no soy un experto en él?

¿Cómo se compara Python con R para el análisis de datos y el aprendizaje automático?

¿Cuál es una buena definición de Generalización wrt Deep Learning?

¿Cuál es la importancia de las redes residuales profundas?

¿Cuánto aprendizaje automático aprendería al completar el curso Andrew Ng (el de Coursera), en una escala de 100?

¿Por qué alguien debería aplicar métodos de aprendizaje automático en su investigación?

¿Por qué una gran proporción de los nuevos estudiantes de CS optan por especializarse en áreas más nuevas como el aprendizaje automático, la informática social y la informática móvil en lugar de las más antiguas como los sistemas, la arquitectura y las redes?

¿Cuál sería la mejor manera de encontrar estudiantes universitarios interesados ​​en un proyecto de investigación sobre la interfaz entre bioinformática y aprendizaje automático, en Johns Hopkins?

¿Qué piensan los pequeños equipos de ciencia de datos sobre la plataforma Dato y el pensamiento de Carlos Guestrin detrás de la democratización del aprendizaje automático?

¿Cuáles son los mejores laboratorios de investigación en el campo de los UAV combinados con aprendizaje automático, visión y percepción por computadora?

Utilizando la regresión logística y la regularización L1 / L2, ¿debo preocuparme por la selección de características?

¿Cuál es el punto de ejecutar un modelo de regresión logística antes de un árbol de decisión?

¿Existen trabajos de Ciencia de datos y Aprendizaje automático para estudiantes de primer año en India?

¿Cuáles son las áreas de investigación abiertas en refuerzo y aprendizaje profundo?

¿Cuál es la función de zeropad en CNN?