Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Generalización del Aprendizaje TD | Aprendizaje por Diferencia Temporal
Introducción al Aprendizaje por Refuerzo
course content

Contenido del Curso

Introducción al Aprendizaje por Refuerzo

Introducción al Aprendizaje por Refuerzo

1. Teoría Central de RL
2. Problema del Bandido de Varios Brazos
3. Programación Dinámica
4. Métodos de Monte Carlo
5. Aprendizaje por Diferencia Temporal

book
Generalización del Aprendizaje TD

Hasta ahora, hemos considerado dos casos extremos de aprendizaje a partir de la experiencia:

  • TD(0): utiliza el retorno de un solo paso;
  • Monte Carlo: espera hasta el final del episodio para calcular el retorno.

¿Pero qué sucede si queremos algo intermedio? Algo que aproveche más información futura que TD(0), pero que no requiera esperar hasta el final del episodio como Monte Carlo.

Aquí es donde entran el aprendizaje TD de nn pasos y TD(λ\lambda): métodos que unifican y generalizan las ideas que hemos visto hasta ahora.

n\Large n-Paso Aprendizaje TD

La idea detrás del aprendizaje TD de nn pasos es sencilla: en lugar de usar solo el siguiente paso o todo el episodio, utilizamos los siguientes nn pasos y luego aplicamos bootstrap:

Gt(n)=Rt+1+γRt+2+...+γn1Rt+n+γnV(St+1)G_t^{(n)} = R_{t+1} + \gamma R_{t+2} + ... + \gamma^{n-1} R_{t+n} + \gamma^n V(S_{t+1})

Esto permite un equilibrio:

  • Cuando n=1n = 1: es simplemente TD(0);
  • Cuando n=n = \infty: se convierte en Monte Carlo.

Estos retornos pueden utilizarse para reemplazar el objetivo en la regla de actualización de TD(0):

V(St)V(St)+α(Gt(n)V(St))V(S_t) \gets V(S_t) + \alpha\Bigl(G_t^{(n)} - V(S_t)\Bigr)

TD(λ\Large\lambda)

TD(λ\lambda) es una idea ingeniosa que se basa en el aprendizaje TD de nn pasos: en lugar de elegir un nn fijo, combinamos todos los retornos de nn pasos juntos:

Lt=(1λ)n=0λn1Gt(n)L_t = (1 - \lambda) \sum_{n=0}^{\infty} \lambda^{n-1}G_t^{(n)}

donde λ[0,1]\lambda \in [0, 1] controla la ponderación:

  • Si λ=0\lambda = 0: solo el retorno de un paso \to TD(0);
  • Si λ=1\lambda = 1: retorno completo \to Monte Carlo;
  • Valores intermedios mezclan múltiples retornos de varios pasos.

Así, λ\lambda actúa como un ajuste de compromiso entre sesgo y varianza:

  • λ\lambda bajo: más sesgo, menos varianza;
  • λ\lambda alto: menos sesgo, más varianza.

LtL_t puede utilizarse como objetivo de actualización en la regla de actualización TD(0):

V(St)V(St)+α(LtV(St))V(S_t) \gets V(S_t) + \alpha\Bigl(L_t - V(S_t)\Bigr)
question mark

Cuando el parámetro λ\lambda se establece en 1 en TD(λ\lambda), el método se vuelve equivalente a

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 5

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

course content

Contenido del Curso

Introducción al Aprendizaje por Refuerzo

Introducción al Aprendizaje por Refuerzo

1. Teoría Central de RL
2. Problema del Bandido de Varios Brazos
3. Programación Dinámica
4. Métodos de Monte Carlo
5. Aprendizaje por Diferencia Temporal

book
Generalización del Aprendizaje TD

Hasta ahora, hemos considerado dos casos extremos de aprendizaje a partir de la experiencia:

  • TD(0): utiliza el retorno de un solo paso;
  • Monte Carlo: espera hasta el final del episodio para calcular el retorno.

¿Pero qué sucede si queremos algo intermedio? Algo que aproveche más información futura que TD(0), pero que no requiera esperar hasta el final del episodio como Monte Carlo.

Aquí es donde entran el aprendizaje TD de nn pasos y TD(λ\lambda): métodos que unifican y generalizan las ideas que hemos visto hasta ahora.

n\Large n-Paso Aprendizaje TD

La idea detrás del aprendizaje TD de nn pasos es sencilla: en lugar de usar solo el siguiente paso o todo el episodio, utilizamos los siguientes nn pasos y luego aplicamos bootstrap:

Gt(n)=Rt+1+γRt+2+...+γn1Rt+n+γnV(St+1)G_t^{(n)} = R_{t+1} + \gamma R_{t+2} + ... + \gamma^{n-1} R_{t+n} + \gamma^n V(S_{t+1})

Esto permite un equilibrio:

  • Cuando n=1n = 1: es simplemente TD(0);
  • Cuando n=n = \infty: se convierte en Monte Carlo.

Estos retornos pueden utilizarse para reemplazar el objetivo en la regla de actualización de TD(0):

V(St)V(St)+α(Gt(n)V(St))V(S_t) \gets V(S_t) + \alpha\Bigl(G_t^{(n)} - V(S_t)\Bigr)

TD(λ\Large\lambda)

TD(λ\lambda) es una idea ingeniosa que se basa en el aprendizaje TD de nn pasos: en lugar de elegir un nn fijo, combinamos todos los retornos de nn pasos juntos:

Lt=(1λ)n=0λn1Gt(n)L_t = (1 - \lambda) \sum_{n=0}^{\infty} \lambda^{n-1}G_t^{(n)}

donde λ[0,1]\lambda \in [0, 1] controla la ponderación:

  • Si λ=0\lambda = 0: solo el retorno de un paso \to TD(0);
  • Si λ=1\lambda = 1: retorno completo \to Monte Carlo;
  • Valores intermedios mezclan múltiples retornos de varios pasos.

Así, λ\lambda actúa como un ajuste de compromiso entre sesgo y varianza:

  • λ\lambda bajo: más sesgo, menos varianza;
  • λ\lambda alto: menos sesgo, más varianza.

LtL_t puede utilizarse como objetivo de actualización en la regla de actualización TD(0):

V(St)V(St)+α(LtV(St))V(S_t) \gets V(S_t) + \alpha\Bigl(L_t - V(S_t)\Bigr)
question mark

Cuando el parámetro λ\lambda se establece en 1 en TD(λ\lambda), el método se vuelve equivalente a

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 5
some-alt