Função de perda crítico-ator na aprendizagem por reforço

9

No aprendizado crítico-ator para aprendizado reforçado, eu entendo que você tem um "ator" que está decidindo a ação a ser tomada e um "crítico" que avalia essas ações; no entanto, estou confuso sobre o que a função de perda está realmente dizendo mim.

Na página 274 do livro de Sutton e Barton (292 do pdf), encontrada aqui http://ufal.mff.cuni.cz/~straka/courses/npfl114/2016/sutton-bookdraft2016sep.pdf

eles descrevem o algoritmo.

Entendo que você deseja atualizar o ator incorporando informações sobre o valor do estado (determinado pelo crítico). Isso é feito através do valor deδ que incorpora essas informações, mas não entendo muito bem por que está olhando para o gradiente da função de valor do estado?

Eu não deveria estar olhando para o gradiente de alguma função objetiva que pretendo minimizar? No início do capítulo, ele afirma que podemos considerar o desempenho da política simplesmente como sua função de valor; nesse caso, é tudo o que estamos fazendo apenas ajustando os parâmetros na direção que maximiza o valor de cada estado? Eu pensei que isso deveria ser feito ajustando a política, não mudando a forma como avaliamos um estado.

obrigado

tentando aprender
fonte
link está morto. por favor corrija-o ou faça upload de conteúdo relevante #
Gulzar

Respostas:

7

Vamos primeiro tentar construir uma sólida compreensão do que δsignifica. Talvez você saiba tudo isso, mas é bom analisar de qualquer maneira na minha opinião.

δR+γv^(S,w)v^(S,w)

Vamos começar com o v^(S,w)prazo. Esse termo é o valor de estar no estadoS, como estimado pelo crítico sob a parametrização atual w. Esse valor de estado é essencialmente a soma descontada de todas as recompensas que esperamos obter a partir deste momento.

v^(S,w) tem um significado muito semelhante, com a única diferença de que é o valor para o próximo estado S em vez do estado anterior S. Se descontarmos isso multiplicando porγe adicione a recompensa observada R para isso, obtemos a parte do lado direito da equação antes do menos: R+γv^(S,w). Isso tem essencialmente o mesmo significado quev^(S,w) (é uma estimativa do valor de estar no estado anterior S), mas desta vez é baseado em algumas informações recentemente observadas (R) e uma estimativa do valor do próximo estado, em vez de ser apenas uma estimativa de um estado em sua totalidade.

Assim, δ é a diferença entre duas maneiras diferentes de estimar exatamente o mesmo valor, com uma parte (à esquerda do sinal de menos) sendo esperada uma estimativa um pouco mais confiável, porque se baseia em um pouco mais de informações conhecidas por estar corretas (R)

δ é positivo se a transição de S para S deu uma recompensa maior R que o crítico esperava e negativo se fosse menor que o crítico esperado (com base na parametrização atual w)


Eu não deveria estar olhando para o gradiente de alguma função objetiva que pretendo minimizar? No início do capítulo, ele afirma que podemos considerar o desempenho da política simplesmente como sua função de valor; nesse caso, é tudo o que estamos fazendo apenas ajustando os parâmetros na direção que maximiza o valor de cada estado? Eu pensei que isso deveria ser feito ajustando a política, não mudando a forma como avaliamos um estado.

Sim, isso deve ser feito e é exatamente o que é feito pela seguinte linha:

θθ+αIδθlogπ(AS,θ)

No entanto, essa não é a única coisa que queremos atualizar.

Entendo que você deseja atualizar o ator incorporando informações sobre o valor do estado (determinado pelo crítico). Isso é feito através do valor de δ que incorpora as informações mencionadas, mas não entendo muito bem por que ele está olhando para o gradiente da função de valor do estado?

Também queremos fazer isso, porque o crítico sempre deve fornecer uma estimativa tão boa quanto possível do valor do estado. E seδ é diferente de zero, isso significa que cometemos um erro no crítico, portanto, também queremos atualizá-lo para se tornar mais preciso.

Dennis Soemers
fonte
11
Certo, a atualização do crítico não está realmente relacionada ao ajuste para fornecer o valor "mais alto" por estado, mas sim ao ajuste para fornecer a melhor estimativa possível e, ao fazê-lo, é o melhor "crítico" para o modelo. Obrigado por deixar isso tão claro! Eles chave foi o meu mal-entendido deδcomo você explicou.
tryingtolearn