Inovação

O TransCoder AI do Facebook 'Bests' rivais comerciais traduzindo entre idiomas de código

O TransCoder AI do Facebook 'Bests' rivais comerciais traduzindo entre idiomas de código


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

Pesquisadores do Facebook dizem que desenvolveram um novo sistema chamado transcompilador neural, capaz de converter o código de uma linguagem de programação de alto nível como Java, Python ou C ++ em um código diferente, de acordo com um estudo publicado em um site de pré-impressão.

RELACIONADO: O FACEBOOK ESTÁ AJUDANDO A MAPEAR ESTRADAS COM APRENDIZAGEM PROFUNDA E FERRAMENTAS FOCADAS EM IA

Pesquisadores da IA ​​do Facebook criam sistema de tradução entre códigos

O sistema não é supervisionado, o que significa que ele busca padrões previamente não detectados em conjuntos de dados sem rótulos de orientação e um grau mínimo de supervisão humana, relata Venture Beat.

Notavelmente, ele supera as diretrizes baseadas em regras que outros sistemas usam para tradução de código por uma margem "significativa".

"TransCoder pode ser facilmente generalizado para qualquer linguagem de programação, não requer nenhum conhecimento especializado e supera as soluções comerciais por uma grande margem", escreveram os co-autores do estudo de pré-impressão. "Nossos resultados sugerem que muitos erros cometidos pelo modelo podem ser facilmente corrigidos adicionando restrições simples ao decodificador para garantir que as funções geradas sejam sintaticamente corretas, ou usando arquiteturas dedicadas."

Mover uma base de código existente para uma linguagem moderna e mais eficiente como C ++ ou Java requer um conhecimento sério em ambas as linguagens de origem e de destino - um processo normalmente caro. O Commonwealth Bank of Australia gastou cerca de US $ 750 milhões em um período de cinco anos para converter sua plataforma de COBOL para script Java. Embora os transcompiladores sejam tecnicamente úteis aqui - eles eliminam a necessidade de reescrever o novo código do zero - também são difíceis de construir porque linguagens díspares têm sintaxe variada e usam APIs de plataforma distintas, tipos de variáveis ​​e funções de biblioteca padrão, relata Venture Batida.

Novo sistema TransCoder do Facebook

Chamado de TransCoder, o novo sistema do Facebook pode traduzir entre Java, C ++ e Python - completando tarefas difíceis sem a supervisão que esses projetos normalmente exigem. O novo sistema é inicializado primeiro com pré-treinamento de modelo de linguagem multilíngue - um processo que mapeia expressões de código parciais cujos significados se sobrepõem a representações idênticas, independente da linguagem de programação.

As sequências do código-fonte de entrada são mascaradas aleatoriamente e o TransCoder tem a tarefa de prever quais partes mascaradas são baseadas em contextos maiores.

O processo - chamado de codificação automática de eliminação de ruído - treina o TransCoder para gerar sequências válidas, mesmo quando dados de entrada com ruído são fornecidos. Em seguida, a retrotradução permite que o TransCoder gere dados paralelos usados ​​posteriormente para treinamento adicional.

O treinamento multilíngue do TransCoder vem de quantos tokens comuns - também chamados de pontos de ancoragem - existem em várias linguagens de programação. Eles vêm de palavras-chave comuns como "while", "try", "for" e "if", além de dígitos, strings em inglês e operadores matemáticos que aparecem no código-fonte.

A retrotradução ajuda o sistema a melhorar a qualidade da tradução do código ao emparelhar um modelo de origem para destino com um modelo de destino para origem "retrógrado" treinado na direção de string oposta. O modelo de destino para origem é usado para traduzir sequências de destino para o idioma de origem, o que cria sequências de origem barulhentas - enquanto o modelo de origem para destino reconstrói sequências de destino de fontes barulhentas até que os dois modelos mutuamente invertidos convergem em um.


Assista o vídeo: My First Artificial Intelligence Program I Ever Coded (Julho 2022).


Comentários:

  1. Meturato

    Eu li tanto que perdi meu programa favorito)

  2. Kerg

    Não tem nada a dizer - fique quieto para não atingir o problema.



Escreve uma mensagem