AlphaСode, uma IA de geração de código

DeepMind, conhecida por seus desenvolvimentos no campo da inteligência artificial e construir redes neurais capazes de jogar jogos de computador e de tabuleiro no nível humano, recentemente revelado o projeto AlphaCode que descreve como um sistema de aprendizado de máquina para geração de código que você pode participar de competições de programação na plataforma Codeforces e demonstrar um resultado médio.

Menciona-se que o projeto usa a arquitetura de rede neural “Transformer” em combinação com outros métodos de amostragem e filtragem para gerar várias variantes de código imprevisíveis correspondentes ao texto em linguagem natural.

O método como funciona AlfaСode baseia-se em filtrar, agrupar e ordenar, após o que procede à seleção do código de trabalho mais óptimo a partir do fluxo de opções gerado, que é então verificado para garantir que o resultado correto seja obtido (em cada tarefa da competição, um exemplo de dados de entrada e um resultado correspondente) a este exemplo, que deve ser obtido após a execução do programa).

Detalhamos o AlphaCode, que usa modelos de linguagem baseados em transformadores para gerar código em uma escala sem precedentes e, em seguida, filtra de forma inteligente um pequeno conjunto de programas promissores.

Validamos nosso desempenho usando competições hospedadas no Codeforces, uma plataforma popular que hospeda competições regulares que atraem dezenas de milhares de participantes de todo o mundo que vêm testar suas habilidades de codificação. Selecionamos 10 concursos recentes para avaliação, cada um mais recente que nossos dados de treinamento. O AlphaCode estava aproximadamente no mesmo nível do concorrente médio, marcando a primeira vez que um sistema de geração de código de IA atingiu um nível competitivo de desempenho em competições de programação.

Para treinamento aproximado do sistema aprendizado de máquina, destaca-se que foi utilizado o código base disponível nos repositórios públicos do GitHub. Após a elaboração do modelo inicial, foi realizada uma fase de otimização baseada em uma coleção de código com exemplos de problemas e soluções oferecidas aos participantes dos concursos Codeforces, CodeChef, HackerEarth, AtCoder e Aizu.

No total, para a formação do AlphaCode 715 GB de código GitHub usado e mais de um milhão de exemplos de soluções para problemas típicos da concorrência. Antes de proceder à geração do código, o texto da tarefa passou por uma fase de normalização, na qual tudo o que era supérfluo era excluído e restavam apenas as partes significativas.

Para testar o sistema, foram selecionados 10 novos concursos Codeforces com mais de 5.000 participantes, realizados após a conclusão do treinamento do modelo de aprendizado de máquina.

Posso dizer com segurança que os resultados do AlphaCode superaram minhas expectativas. Eu estava cético porque mesmo em problemas competitivos simples, muitas vezes é necessário não apenas implementar o algoritmo, mas também (e essa é a parte mais difícil) inventá-lo. A AlphaCode conseguiu atuar no nível de um novo e promissor concorrente. Mal posso esperar para ver o que está por vir!

MIKE MIRZAYANOV

FUNDADOR DA CODEFORCES

Os resultados das tarefas permitiram para o sistema AlphaCode entrar aproximadamente no meio da qualificação dessas competições (54,3%). A pontuação geral prevista do AlphaCode foi de 1238 pontos, garantindo a entrada no Top 28% entre todos os participantes do Codeforces que participaram de competições pelo menos uma vez nos últimos 6 meses.

Ressalta-se que observa-se que o projeto ainda está em fase inicial de desenvolvimento e que futuramente está previsto melhorar a qualidade do código gerado, bem como desenvolver o AlphaСode para sistemas que ajudem a escrever código, ou ferramentas de desenvolvimento de aplicativos que pessoas sem habilidades de programação podem usar.

Finalmente se você estiver interessado em saber mais sobre isso, você deve saber que um recurso chave de desenvolvimento é a capacidade de gerar código em Python ou C++, tomando como entrada de texto uma declaração do problema em inglês.

Você pode verificar os detalhes no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.