DeepMind diz que seu novo mecanismo de codificação de IA é tão bom quanto um programador humano médio

AlphaCode é bom, mas não ótimo - ainda não

A DeepMind criou um sistema de IA chamada AlphaCode que como eles mesmos dizem “escreve programas de computador em um nível competitivo”. A subsidiária da Alphabet testou seu sistema contra desafios de codificação usados ​​em competições humanas e descobriu que seu programa alcançou uma “classificação estimada”, colocando-o entre os 54% melhores codificadores humanos. O resultado é um avanço significativo para a codificação autônoma, disse a DeepMind, embora as habilidades da AlphaCode não sejam necessariamente representativas do tipo de tarefas de programação enfrentadas pelo codificador médio.

ALPHACODE PODERIA SER USADO PARA CRIAR ASSISTENTES DE CODIFICAÇÃO E UM DIA ESCREVER SEU PRÓPRIO SOFTWARE

 

O AlphaCode foi testado contra desafios selecionados pela Codeforces, uma plataforma de codificação competitiva que compartilha problemas semanais e emite classificações para codificadores semelhantes ao sistema de classificação Elo usado no xadrez. Esses desafios são diferentes do tipo de tarefa que um codificador pode enfrentar ao fazer, digamos, um aplicativo comercial. Eles são mais independentes e exigem um conhecimento mais amplo de algoritmos e conceitos teóricos em ciência da computação. Pense neles como quebra-cabeças muito especializados que combinam lógica, matemática e conhecimento de codificação.

Em um exemplo de desafio no qual o AlphaCode foi testado, os concorrentes são solicitados a encontrar uma maneira de converter uma sequência de letras s e t repetidas e aleatórias em outra sequência das mesmas letras usando um conjunto limitado de entradas. Os concorrentes não podem, por exemplo, apenas digitar novas letras, mas sim usar um comando “backspace” que exclui várias letras da string original. Você pode ler uma descrição completa do desafio abaixo:

Um exemplo de desafio intitulado “Backspace” que foi usado para avaliar o programa da DeepMind. O problema é de dificuldade média, com o lado esquerdo mostrando a descrição do problema e o lado direito mostrando casos de teste de exemplo. Imagem: DeepMind / Codeforces

Um exemplo de desafio intitulado “Backspace” que foi usado para avaliar o programa da DeepMind. O problema é de dificuldade média, com o lado esquerdo mostrando a descrição do problema e o lado direito mostrando casos de teste de exemplo. Imagem: DeepMind / Codeforces

Dez desses desafios foram inseridos no AlphaCode exatamente no mesmo formato que são dados aos humanos. O AlphaCode então gerou um número maior de respostas possíveis e as reduziu executando o código e verificando a saída da mesma forma que um concorrente humano faria. “Todo o processo é automático, sem seleção humana das melhores amostras”, disseram Yujia Li e David Choi, co-líderes do artigo AlphaCode, ao The Verge por e-mail.

O AlphaCode foi testado em 10 desafios que foram enfrentados por 5.000 usuários no site Codeforces. Em média, ele foi classificado entre os 54,3% de respostas, e a DeepMind estima que isso dá ao sistema um Codeforces Elo de 1238, o que o coloca entre os 28% de usuários que competiram no site nos últimos seis meses.

Uma interface de exemplo do AlphaCode abordando um desafio de codificação. A entrada é dada como é para humanos à esquerda e a saída gerada à direita. Imagem: Deep Mind

Uma interface de exemplo da AlphaCode abordando um desafio de codificação. A entrada é dada como é para humanos à esquerda e a saída gerada à direita. Imagem: Deep Mind

“Posso dizer com segurança que os resultados da AlphaCode superaram minhas expectativas”, disse o fundador da Codeforces, Mike Mirzayanov, em um comunicado compartilhado pela DeepMind. “Fiquei cético [sic] 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 concorrente promissor.”

A DeepMind observa que o atual conjunto de habilidades da AlphaCode só é aplicável atualmente no domínio da programação competitiva, mas que suas habilidades abrem as portas para a criação de ferramentas futuras que tornam a programação mais acessível e um dia totalmente automatizada.

Muitas outras empresas estão trabalhando em aplicativos semelhantes. Por exemplo, a Microsoft e o laboratório de IA OpenAI adaptaram o programa gerador de linguagem GPT-3 deste último para funcionar como um programa de autocompletar que finaliza strings de código. (Como o GPT-3, o AlphaCode também é baseado em uma arquitetura de IA conhecida como transformador, que é particularmente adepta da análise de texto sequencial, tanto em linguagem natural quanto em código). Para o usuário final, esses sistemas funcionam exatamente como o recurso Smart Compose do Gmail – sugerindo maneiras de terminar o que você está escrevendo.

SISTEMAS DE IA TÊM SIDO CRITICADOS POR PRODUZIR CÓDIGO VULNERÁVEL E COM BUGS

Em um estudo de uma ferramenta de programação de IA chamada Copilot desenvolvida pelo repositório de código GitHub, os pesquisadores descobriram que cerca de 40% de sua saída continha vulnerabilidades de segurança. Os analistas de segurança até sugeriram que os maus atores poderiam escrever e compartilhar intencionalmente códigos com backdoors ocultos online, que poderiam ser usados ​​para treinar programas de IA que inseririam esses erros em programas futuros.

Desafios como esses significam que os sistemas de codificação de IA provavelmente serão integrados lentamente ao trabalho dos programadores – começando como assistentes cujas sugestões são tratadas com suspeita antes de serem confiadas para realizar o trabalho por conta própria. Em outras palavras: eles têm um aprendizado a realizar. Mas até agora, esses programas estão aprendendo rápido.

Fonte: theverge

Deixe seu comentário