¿Qué función de recompensa resulta en un aprendizaje óptimo?


13

Pensemos en las siguientes situaciones:

  • Estás enseñando a un robot a jugar ping pong
  • Estás enseñando un programa para calcular la raíz cuadrada
  • Estás enseñando matemáticas a un niño en la escuela

Estas situaciones (es decir, el aprendizaje supervisado) y muchas otras tienen una cosa (entre otras) en común: el alumno obtiene una recompensa en función de su rendimiento.

Mi pregunta es, ¿cómo debería ser la función de recompensa? ¿Hay una "mejor" respuesta o depende de la situación? Si depende de la situación, ¿cómo se determina qué función de recompensa elegir?

Por ejemplo, tome las siguientes tres funciones de recompensa:

ingrese la descripción de la imagen aquí

  • La función Adice:
    • debajo de cierto punto, malo o peor son lo mismo: no obtienes nada
    • hay una clara diferencia entre casi bueno y perfecto
  • La función Bdice:
    • obtienes una recompensa linealmente proporcional a tu rendimiento
  • La función Cdice:
    • si su rendimiento es malo, está bien, hizo lo mejor que pudo: aún obtiene alguna recompensa
    • no hay mucha diferencia entre perfecto y casi bueno

Intuitivamente, creo que Aharía que el robot esté muy enfocado y aprenda el patrón exacto, pero se volvería estúpido cuando se trata de patrones similares, mientras que Clo haría más adaptable al cambio a costa de perder la perfección.

También se podría pensar en funciones más complejas, solo para mostrar, pero pocas:

ingrese la descripción de la imagen aquí

Entonces, ¿cómo se sabe qué función elegir? ¿Se sabe, que el comportamiento podría surgir de (al menos) los básicos A, By Cfunciones?


Una pregunta adicional es si esto sería fundamentalmente diferente para los robots y los niños humanos.


Dudo que un robot se vuelva estúpido haciendo lo mismo o algo similar una y otra vez, a menos que sea cibernético.
ott--

@ott, eso no es lo que quise decir. Lo que quise decir fue con una función de recompensa similar a A, el robot podría ser extremadamente bueno en la tarea exacta, pero terrible en tareas que son similares pero ligeramente diferentes. Sin embargo, esa es solo mi suposición.
Shahbaz

Ah, ok, ya veo. Estás pensando en el tenis, por ejemplo
ott:

Quizás la teoría detrás de esto podría ser complicada, pero una respuesta que diga "He pensado que diferentes tareas para muchos robots y que a menudo funcionan Xme dio el mejor resultado", incluso si no es perfectamente correcta, daría una gran regla general.
Shahbaz

Respuestas:


5

Respuesta corta: el efecto de refuerzo más fuerte proviene de entregar una valiosa recompensa en un horario intermitente (aleatorio).

Versión más larga: un aspecto de su pregunta es sobre el condicionamiento operante , al menos en lo que respecta a la enseñanza de las matemáticas a un organismo complejo. Aplicar esto al aprendizaje automático se conoce como aprendizaje de refuerzo .

La economía (según la respuesta de jwpat7 ) solo aborda una parte de la historia del refuerzo. La función de utilidad le dice qué recompensa tiene el efecto de refuerzo más fuerte (mayor impacto en el comportamiento) en un contexto dado. ¿Es un elogio? ¿chocolate? ¿cocaína? ¿Estimulación eléctrica directa a ciertas áreas del cerebro? Principalmente, mi respuesta es sobre el efecto del contexto, suponiendo una utilidad de recompensa dada.

Para organismos / comportamientos complejos, la programación de recompensas es al menos tan importante como la utilidad de recompensas:

  • Un "programa de recompensas de intervalo fijo" es la forma menos efectiva de modificar el comportamiento con una cantidad dada de recompensa (le daré $ 10 por semana si mantiene su habitación ordenada). Piensa en Dole Bludger.
  • Los horarios de recompensas de proporción fija (le daré $ 10 cada siete días que tenga una habitación ordenada) son más efectivos que los intervalos fijos, pero tienen una especie de límite de efectividad (el sujeto ordenará su habitación siete veces cuando tenga hambre por $ 10, pero no de otra manera). Piensa mercenario.
  • La forma más influyente de entregar una recompensa dada con un "programa de refuerzo de intervalo variable" (por ejemplo, cada día que ordena su habitación tiene una probabilidad de 1/7 de obtener $ 10). Piensa en la máquina de póker.

Si usted es un supervisor de aprendizaje con un presupuesto de recompensa fijo, para una situación de aprendizaje dada, habrá un equilibrio óptimo entre el tamaño de la recompensa (utilidad) y la frecuencia. Probablemente no sea una pequeña porción de recompensa a una frecuencia muy alta, ni una gran parte de la recompensa que se entrega muy raramente. Incluso podría ser una recompensa de tamaño aleatorio en un horario aleatorio: el óptimo generalmente se determina experimentalmente para una situación particular.

Finalmente, el programa "óptimo" (frecuencia aleatoria, cantidad aleatoria {p (recompensa), p (valor)}) probablemente variará en las diferentes etapas del proceso de aprendizaje. Por ejemplo, un alumno nuevo podría estar sujeto al efecto de "primacía" (¡bienvenido! Tenga un gominola) que rápidamente se convierte en una recompensa de intervalo fijo si lo repite. Puede haber un efecto de "actualidad" que obtiene más valor de refuerzo de una recompensa entregada en la última prueba ("terminar con una nota alta"). En el medio, puede haber un "efecto de fe" acumulativo en el que a medida que el alumno adquiere más experiencia, lo óptimo podría cambiar hacia una probabilidad más baja, una mayor utilidad a lo largo del tiempo. Nuevamente, más cosas para determinar empíricamente en su situación.


Muy interesante respuesta. Tiene mucho sentido.
Shahbaz

¡Estoy leyendo esta respuesta nuevamente, y nuevamente quisiera decir cuán genial es esta respuesta! De hecho, ¡déjame darte una recompensa!
Shahbaz

6

"Aprendizaje óptimo" es un término muy vago, y depende completamente del problema específico en el que está trabajando. El término que está buscando es " sobreajuste ": ingrese la descripción de la imagen aquí

(La línea verde es el error al predecir el resultado en los datos de entrenamiento, la línea púrpura es la calidad del modelo y la línea roja es el error del modelo aprendido que se usa "en producción")

En otras palabras: cuando se trata de adaptar su comportamiento aprendido a problemas similares, la forma en que recompensó su sistema es menos importante que cuántas veces lo recompensó: desea reducir los errores en los datos de entrenamiento, pero no mantenerlo en el entrenamiento. siempre que pierda la capacidad de trabajar en modelos similares.

Un método para abordar este problema es reducir sus datos de entrenamiento a la mitad: use la mitad para aprender y la otra mitad para validar la capacitación. Le ayuda a identificar cuándo comienza a sobreajustar.

Funciones de recompensa no lineales

La mayoría de los algoritmos de aprendizaje supervisado esperan que la aplicación de la función de recompensa produzca una salida convexa. En otras palabras, tener mínimos locales en esa curva evitará que su sistema converja al comportamiento adecuado. Este video muestra un poco de las matemáticas detrás de las funciones de costo / recompensa .


3

Estos problemas se abordan, en cierta medida, mediante el estudio de las funciones de utilidad en economía. Una función de utilidad expresa valores efectivos o percibidos de una cosa en términos de otra. (Si bien las curvas que se muestran en la pregunta son funciones de recompensa y expresan cuánta recompensa se ofrecerá por varios niveles de rendimiento, las funciones de utilidad de aspecto similar podrían expresar cuánto rendimiento resulta de varios niveles de recompensa).

La función de recompensa que funcionará mejor depende del equilibrio entre el pagador y el intérprete. El artículo de la curva de contrato de wikipedia ilustra con cuadros de Edgeworth cómo encontrar asignaciones eficientes de Pareto . El teorema de la utilidad de Von Neumann-Morgenstern delinea las condiciones que aseguran que un agente sea racional para VNM y pueda caracterizarse por tener una función de utilidad. La sección "Predicciones de comportamiento resultantes de la utilidad HARA" del artículo de aversión al riesgo absoluto hiperbólico en wikipedia describe las consecuencias conductuales de ciertas funciones de utilidad.

Resumen: Estos temas han sido objeto de enormes cantidades de estudio en economía y microeconomía. Desafortunadamente, extraer un resumen breve y útil que responda a su pregunta también podría requerir una gran cantidad de trabajo o la atención de alguien más experto que yo.


Esto es bastante complicado, no estoy seguro si lo entiendo. ¿Pero está seguro de que la función de utilidad de la economía también se aplica a la robótica? En el aprendizaje supervisado (de un robot), el pagador en realidad no pierde nada. La recompensa a menudo sería solo un número que le dirá al robot qué tan bien hicieron la tarea.
Shahbaz,

1

La función óptima de recompensa depende del objetivo de aprendizaje, es decir, lo que se debe aprender. Para problemas simples, es posible encontrar una representación de forma cerrada para la función de recompensa óptima. De hecho, para problemas realmente simples, estoy seguro de que es posible, aunque no conozco ningún método formal para hacerlo (sospecho que la teoría de la utilidad abordaría esta pregunta). Para problemas más complejos, diría que no es posible encontrar una solución de forma cerrada.

En lugar de buscar la función óptima, podríamos recurrir a un experto para obtener una buena función de recompensa. Un enfoque para hacerlo es una técnica llamada Aprendizaje de refuerzo inverso (IRL). Formula un problema de aprendizaje como un problema de aprendizaje de refuerzo donde la función de recompensa es desconocida y el objetivo del proceso de aprendizaje. El artículo Aprendizaje de Aprendizaje a través de Aprendizaje de refuerzo inverso de Pieter Abbeel y Andrew Ng es un buen lugar para comenzar a aprender sobre IRL.


0

Cualquier forma de aprendizaje supervisado es una búsqueda dirigida en el espacio de políticas. Intenta encontrar la política, qué acción tomar, que proporciona la expectativa de recompensa máxima. En tu pregunta, das una recompensa en función del rendimiento. Siempre y cuando esta función sea monótona, cualquier método que converja finalmente terminará brindándole el máximo rendimiento (también mantenga su terminología).

La rapidez con que converge el método es otra cuestión, y bien puede depender de la curva. Pero creo que esto diferirá de un método a otro.

Un problema completamente diferente es que para escenarios más complejos el rendimiento no es un simple escalar, y definirlo puede ser bastante difícil. ¿Cuál es la función de recompensa por ser bueno en matemáticas?


La rapidez con que converge el método es otra cuestión, y bien puede depender de la curva. , bueno por supuesto. Estaba tratando de entender cómo la curva afecta el aprendizaje (y no si lo hace, porque ya sé que sí).
Shahbaz
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.