Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda TD(0): Estimativa da Função de Valor | Aprendizado por Diferença Temporal
Introdução ao Aprendizado por Reforço com Python

TD(0): Estimativa da Função de Valor

Deslize para mostrar o menu

A versão mais simples do aprendizado por diferença temporal é chamada de TD(0). Ela atualiza o valor de um estado com base na recompensa imediata e no valor estimado do próximo estado. Trata-se de um método TD de um passo.

Regra de Atualização

Dado um estado StS_t, recompensa Rt+1R_{t+1} e próximo estado St+1S_{t+1}, a regra de atualização é:

V(St)V(St)+α(Rt+1+γV(St+1)V(St))V(S_t) \gets V(S_t) + \alpha\Bigl(R_{t+1}+\gamma V(S_{t+1}) - V(S_t)\Bigr)

onde

  • α\alpha é a taxa de aprendizado, ou tamanho do passo;
  • δt=Rt+1+γV(St+1)V(St)\delta_t = R_{t+1}+\gamma V(S_{t+1}) - V(S_t) é o erro TD.

Intuição

A função de valor de estado vπv_\pi pode ser definida e expandida da seguinte forma:

vπ(s)=Eπ[GtSt=s]=Eπ[Rt+γGt+1St=s]=Eπ[Rt+γvπ(St+1)St=s]\def\E{\operatorname{\mathbb{E}}} \begin{aligned} v_\pi(s) &= \E_\pi[G_t | S_t = s] \\ &= \E_\pi[R_t + \gamma G_{t+1} | S_t = s] \\ &= \E_\pi[R_t + \gamma v_\pi(S_{t+1}) | S_t = s] \end{aligned}

Isso fornece a primeira parte de δt\delta_t — o retorno experimentado Rt+1+γV(St+1)R_{t+1} + \gamma V(S_{t+1}). E a segunda parte de δt\delta_t é o retorno esperado V(St)V(S_t). O erro TD δt\delta_t é, portanto, a discrepância observável entre o que realmente aconteceu e o que acreditávamos que aconteceria. Assim, a regra de atualização ajusta a crença anterior um pouco a cada passo, aproximando-a da verdade.

TD(0) vs Estimativa de Monte Carlo

Tanto o TD(0) quanto a estimativa de Monte Carlo utilizam experiências amostradas para estimar a função de valor de estado vπ(s)v_\pi(s) para uma política π\pi. Sob condições padrão de convergência, ambos convergem para o verdadeiro vπ(s)v_\pi(s) à medida que o número de visitas a cada estado tende ao infinito. Na prática, porém, geralmente dispomos apenas de uma quantidade finita de dados, e os dois métodos diferem significativamente em como utilizam esses dados e na velocidade com que aprendem.

Compromisso entre viés e variância

Combinações de viés e variância

Do ponto de vista do compromisso entre viés e variância:

A estimação de Monte Carlo espera até o final de um episódio e então utiliza o retorno completo para atualizar os valores. Isso gera estimativas sem viés — os retornos refletem verdadeiramente a distribuição subjacente — mas podem variar drasticamente, especialmente em tarefas longas ou altamente estocásticas. Alta variância significa que muitos episódios são necessários para suavizar o ruído e obter estimativas de valor estáveis.

O TD(0) utiliza bootstrap ao combinar cada recompensa de um passo com a estimativa atual do valor do próximo estado. Isso introduz viés — as atualizações iniciais dependem de estimativas imperfeitas — mas mantém a variância baixa, já que cada atualização é baseada em um erro pequeno e incremental. Menor variância permite que o TD(0) propague informações de recompensa pelo espaço de estados mais rapidamente, mesmo que o viés inicial possa retardar a convergência.

Aprendizado de Dados vs Aprendizado de Modelo

Diferentes abordagens para estimar valor

Outra maneira de analisar esses dois métodos é observar o que cada um realmente aprende:

Estimativa de Monte Carlo aprende diretamente a partir dos retornos observados, ajustando suas estimativas de valor aos episódios específicos que presenciou. Isso significa que minimiza o erro nessas trajetórias de treinamento, mas como nunca constrói uma visão explícita de como os estados levam uns aos outros, pode ter dificuldade para generalizar para situações novas ou ligeiramente diferentes.

TD(0), por outro lado, faz bootstrap a cada transição de um passo, combinando a recompensa imediata com sua estimativa do valor do próximo estado. Ao fazer isso, captura efetivamente as relações entre os estados — um modelo implícito da dinâmica do ambiente. Esse entendimento semelhante a um modelo permite que o TD(0) generalize melhor para transições não vistas, frequentemente resultando em estimativas de valor mais precisas em novos dados.

Pseudocódigo

Pseudocódigo do TD(0) para estimativa do valor do estado
question mark

Como você pode descrever o TD(0) em termos de viés e variância?

Selecione todas as respostas corretas

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 2

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Seção 5. Capítulo 2
some-alt