No laboratório de IA, o Uber AI Labs criou uma nova família de algoritmos Go-Explore. O algoritmo é baseado na aprendizagem por reforço. Go-Explore supera a maioria dos designs existentes quando testado em jogos Atari clássicos dos anos 1980.
A IA do Uber jogou 11 dos jogos mais difíceis no total, incluindo Montezuma's Revenge e Pitfall . Em termos de quantidade de pontos conquistados, ele caminhou entre as pessoas. O algoritmo não está sendo desenvolvido para fins de jogos: em um futuro próximo, o algoritmo poderá ser usado para ensino de robótica, processamento de linguagens naturais, criação de novos medicamentos, etc. Qual é a base do algoritmo?
Aprendizagem por reforço
Vamos começar lembrando o que é aprendizagem por reforço e por que ela tem alto potencial.
Esta é uma forma bem conhecida de treinamento de rede neural. A vantagem dessa tecnologia está em um elemento denominado agente . Ele não trabalha isolado, mas aprende a interagir com o meio ambiente. O ambiente reage às ações do agente, criando um efeito gratificante.
A IA está tentando obter uma cenoura virtual, então age com base na possibilidade de receber uma recompensa. Se isso não resultar, na próxima vez, a operação é considerada menos desejável.
No contexto de uma dada utilidade, o treinamento de recompensa maximiza o resultado.
Qual algoritmo o Uber criou?
A principal característica distintiva do algoritmo Uber é lembrar os estados de perspectiva anteriores. Além disso, o algoritmo não só é capaz de reproduzi-los, mas também realiza reconhecimentos . Como se fizesse a pergunta repetidamente: "E se?" E procurando uma nova resposta melhor. Graças a essa cadeia, é possível aumentar a eficiência do algoritmo de aprendizagem.
A família de algoritmos do AI Uber Labs tem uma capacidade importante de lembrar estados prospectivos anteriores. Em pequenas iterações, o algoritmo constrói um arquivo de estados. E eles, por sua vez, são agrupados em células.
Go-Explore resolvem dois problemas importantes de aprendizado de recompensa.
Primeiro problema. O algoritmo perde o interesse em estados percorridos anteriormente. Além disso, algumas dessas condições podem ser promissoras, mas o algoritmo começa a ignorá-las.
Segundo problema. O processo de pesquisa evita uma reversão aos estados iniciais do algoritmo. Em vez de retroceder, a IA vai muito longe do ponto de partida e escala arbitrariamente as ações aleatórias.
Testando o algoritmo em jogos
O Uber recorreu aos jogos clássicos da Altari para garantir que seu desenvolvimento fosse eficaz. Eles pegaram o mais difícil dos jogos, o mais difícil para um computador controlar. As dificuldades surgem de uma recompensa muito rara. Nesses casos, centenas de operações passam entre a ação do algoritmo e o resultado bem-sucedido. Torna-se difícil determinar exatamente quais ações ajudaram a receber uma recompensa virtual.
Então, como o algoritmo do Uber lida com isso? Ele envia estados semelhantes para uma célula. O ciclo começa selecionando estados de uma célula, onde são classificados por peso. Nesse caso, dá-se preferência a estados recém-fundados, a partir dos quais novas áreas são exploradas. Em seguida, o arquivo é atualizado. Assim, Go-Explore processa o número máximo de opções disponíveis e, o mais importante, não perde os estados mais interessantes.
Além disso, o algoritmo tem a opção de fazer a robustezsoluções encontradas e excluem interferências externas. Esta opção reduz o nível de ruído nas trajetórias encontradas. Por que isso é necessário? Na Atari, o ambiente e as ações são bem definidos: movimentos específicos levam aos resultados esperados. Para reduzir o determinismo, atrasos artificiais foram introduzidos no jogo. Para que o algoritmo não apenas execute ações previamente verificadas, mas também aprenda em condições próximas às reais.
Como resultado, Go-Explore apresentou bons resultados no jogo em duas situações:
- Em caso de desconhecido, quando o algoritmo carece de informações primárias.
- Se houver informação: o algoritmo conhece a entrada (coordenadas, chaves, etc.).
No segundo caso, como esperado, os resultados são superiores. Assim, Go-Explore em Montezuma's Revenge venceu o resultado de um jogador humano por 42,5%, ganhando 1,73 milhão de pontos.
Go-Explore para robôs
Além dos jogos Atari, a família de algoritmos foi testada em um braço robótico. Go-Explore executou com sucesso os movimentos do braço do robô no simulador, onde foi necessário reorganizar os itens nas prateleiras. Além disso, o braço robótico poderia não apenas reorganizá-los, mas também retirá-los de trás das portas com fechaduras.