Qual é a novidade do AlphaGo, o sistema de reprodução Go do Google Deepmind?

7

Recentemente, pesquisadores do Google DeepMind publicaram um artigo , onde descreviam um sistema de jogo Go que superava os melhores programas de computador atuais e o campeão europeu humano.

Dei uma rápida olhada nesse artigo, e parece que ele está usando muitas idéias interessantes de artigos anteriores. O que eles fizeram de maneira diferente que lhes permitiu alcançar essa melhoria espetacular?

Valentas
fonte
11
Os programas de reprodução em movimento estavam silenciosamente progredindo para um novo território com técnicas de aprendizado de máquina há alguns anos. A equipe do Google avançou ainda mais, mas a melhoria não é tão radical quanto parece (muitas pessoas irão compará-la com o "conhecimento comum" de 10 anos atrás, que Go era muito difícil para computadores). Por exemplo, alguns programas de reprodução do Go venceram o player do Google nos testes. Além disso, veja o progresso na página da wikipedia: en.wikipedia.org/wiki/Computer_Go#2000s . . .
Neil Slater

Respostas:

6

Os programas existentes antes do AlphaGo foram baseados em:

1) Redes neurais convolucionais (CNN), treinadas em um banco de dados de jogos existentes.

OU

2) Pesquisa de árvore em Monte Carlo (MCTS)


AlphaGo é baseado em uma combinação de:

A) aprendizado por reforço: treine redes deixando versões das CNN (veja acima) jogarem umas contra as outras.

E

B) MCTS usando movimentos gerados pela etapa A)

Além disso, o desempenho foi aprimorado ainda mais usando a computação distribuída com grandes quantidades de CPU e GPU.

Portanto, a novidade foi a combinação das técnicas acima A) e B).

Rolf Schorpion
fonte
Eu realmente não estou ciente dos programas da CNN que existiam antes do AlphaGo. Você tem exemplos? As CNNs, como você descreve em (A), são simplesmente uma queda em substituição aos modelos tradicionais de aprendizado de máquina para fazer a mesma coisa. (B) também foi feito exatamente como você descreveu nos mecanismos anteriores, portanto, nenhum deles é novidade. A novidade é simplesmente aplicar CNNs no lugar de velhos modelos de aprendizado de máquina dentro da estrutura existente do Monte Carlo Tree Search.
Imran
@ Neil Slater +1. Editei minha resposta para enfatizar mais a combinação das duas técnicas. Obrigado.
Rolf Schorpion
1

Nada nos componentes que eles usaram é novo. Todas as abordagens foram exploradas. Verificando suas referências, você notará muitos pesquisadores fazendo trabalhos semelhantes. A novidade foi o pipeline que eles seguiram e a combinação de abordagens de Aprendizagem por Reforço sem modelo e com base em modelo. Vou tentar dar uma perspectiva diferente não técnica sobre o que eles capturaram.

As abordagens sem modelo geralmente tentam aproximar funções como funções Value (representando o quão bom é estar em um determinado estado - configuração da placa - em termos de recompensa futura) ou funções de política parametrizadas (probabilidades de selecionar uma ação dada um estado. , seu modelo ganha algum tipo de ' intuição ' em que os movimentos são relativamente bons - algo semelhante à intuição que os jogadores profissionais de Go têm, quando declaram que fazem um movimento porque 'se sente' bem. Isso é muito importante no estágio inicial do jogo quando o planejamento é ineficiente para uso.

As abordagens baseadas em modelo tentam simular todas as trajetórias possíveis do jogo na forma de uma árvore de decisão. Assim, eles são úteis para o planejamento (antes de você realmente fazer uma jogada no jogo, você verifica e avalia todas as contingências possíveis e depois decide qual jogada tomar da sua posição atual). O MCTS é um algoritmo desse tipo, cria uma árvore de decisão sobre possíveis cursos futuros do jogo a partir da posição atual do tabuleiro e avalia essas heurísticas de acordo com alguns critérios. Os melhores algoritmos do Go até agora foram baseados nesse algoritmo (e é considerado um algoritmo RL).

Assim, em termos de novidade, com poucas palavras: combinação de planejamento e intuição, o que significa combinação do algoritmo MCTS com aproximadores de função para avaliação das trajetórias simuladas do jogo. Nesse caso, eles usaram redes neurais convolucionais muito profundas para a parte "intuição". Além disso, o modelo inteiro é orientado por dados, pois foi treinado pela primeira vez em movimentos de especialistas humanos (isso pode ser útil em aplicativos em muitos outros domínios além dos jogos). Se você examinar todos os componentes, não há nada novo ... mas todo o processo para combinar efetivamente todos esses elementos e alcançar o domínio nesse domínio complexo é algo novo. Espero que ajude!

Constantinos
fonte