O que é o a3c (asynchronous advantage actor-critic)
O A3C é um algoritmo revolucionário criado pelo DeepMind. Ele combina aprendizado assíncrono com vantagem (advantage). Primeiramente, múltiplos agentes são executados em paralelo. Cada agente tem sua própria cópia do ambiente. Em segundo lugar, eles atuam de forma independente e assíncrona. Periodicamente, cada agente atualiza uma rede global compartilhada. Este paralelismo quebra a correlação entre as amostras. Consequentemente, o aprendizado torna-se mais estável. O A3C não necessita de Experience Replay. Isso reduz o uso de memória e acelera o treinamento.
Uma grande vantagem é a escalabilidade do método. Quanto mais núcleos de CPU, mais rápido é o aprendizado. Primeiramente, cada agente coleta experiências localmente. Depois, os gradientes são calculados de forma independente. Finalmente, eles são aplicados à rede global de forma assíncrona. Este processo é chamado de “atualização assíncrona”. Por isso, o nome é Asynchronous Advantage Actor-Critic. O paralelismo também serve como regularizador natural. Assim, o algoritmo é mais robusto que versões síncronas. O A3C foi usado para jogar jogos da Atari profissionalmente.
Arquitetura do modelo a3c
A arquitetura A3C possui uma rede global compartilhada. Além dela, existem N redes locais (workers). Cada worker tem sua própria cópia do ambiente. Primeiramente, cada worker executa um episódio localmente. Depois de N passos, o worker calcula os gradientes. Os gradientes são enviados para a rede global. A rede global é atualizada de forma assíncrona. Em seguida, o worker sincroniza seus pesos com a global. Este processo se repete continuamente. O número típico de workers é entre 4 e 16.
Cada worker possui duas redes: ator e crítico. O ator mapeia estados para distribuições de ações. O crítico mapeia estados para valores esperados. Primeiramente, o ator usa softmax para ações discretas. Para ações contínuas, usa-se média e variância. O crítico usa uma saída linear para o valor. As redes compartilham camadas iniciais para eficiência. Contudo, para simplificação, redes separadas são usadas. A vantagem (advantage) é calculada com n-passos. Isso balanceia viés e variância do estimador.
Hiperparâmetros e fórmulas matemáticas
A taxa de aprendizado global (alpha) é um hiperparâmetro crucial. Valores típicos variam entre 0.0001 e 0.001. O número de workers (N) afeta a velocidade de treinamento. Valores comuns são 4, 8 ou 16 workers. O número de passos por atualização (t_max) é importante. Valores entre 5 e 20 são usados na prática. O fator de desconto (gamma) prioriza recompensas futuras. Gamma é tipicamente 0.99 para problemas contínuos. O coeficiente de entropia (beta) incentiva exploração. Valores típicos variam entre 0.01 e 0.001.