Um sistema de aprendizagem de languas que presta atenção - com mais eficiência do que nunca
O novo hardware e sistema de software dos pesquisadores do MIT agiliza a análise de frases de última geraça£o.
Os pesquisadores do MIT desenvolveram um sistema de hardware e software que pode reduzir o poder de computação, a energia e o tempo necessa¡rios para a análise e geração de texto. Créditos:Imagem: Jose-Luis Olivares, MIT
A linguagem humana pode ser ineficiente. Algumas palavras são vitais. Outros, dispensa¡veis.
Releia a primeira frase desta história. Apenas duas palavras, “linguagem†e “ineficienteâ€, transmitem quase todo o significado da frase. A importa¢ncia das palavras-chave éa base de uma nova ferramenta popular para processamento de linguagem natural (PNL) por computadores: o mecanismo de atenção. Quando codificado em um algoritmo de PNL mais amplo, o mecanismo de atenção se concentra em palavras-chave, em vez de tratar cada palavra com igual importa¢ncia. Isso produz melhores resultados em tarefas de PNL, como detectar sentimentos positivos ou negativos ou prever quais palavras devem vir a seguir em uma frase.
A precisão do mecanismo de atenção geralmente vem a s custas da velocidade e do poder de computação, entretanto. Ele éexecutado lentamente em processadores de uso geral, como vocêpode encontrar em computadores voltados para o consumidor. Assim, os pesquisadores do MIT projetaram um sistema combinado de software-hardware, denominado SpAtten, especializado para executar o mecanismo de atenção. O SpAtten permite uma PNL mais simplificada com menos poder de computação.
“Nosso sistema ésemelhante a forma como o cérebro humano processa a linguagemâ€, diz Hanrui Wang. “Lemos muito rápido e focamos apenas nas palavras-chave. Essa éa ideia do SpAtten. â€
A pesquisa seráapresentada este maªs no IEEE International Symposium on High-Performance Computer Architecture. Wang éo autor principal do artigo e aluno de doutorado no Departamento de Engenharia Elanãtrica e Ciência da Computação. Os co-autores incluem Zhekai Zhang e seu orientador, o professor assistente Song Han.
Desde sua introdução em 2015, o mecanismo de atenção tem sido uma baªnção para a PNL. Ele éintegrado a modelos de PNL de última geração, como o BERT do Google e o GPT-3 da OpenAI. A principal inovação do mecanismo de atenção éa seletividade - ele pode inferir quais palavras ou frases em uma frase são mais importantes, com base em comparações com padraµes de palavras que o algoritmo encontrou anteriormente em uma fase de treinamento. Apesar da rápida adoção do mecanismo de atenção em modelos de PNL, não ésem custo.
Os modelos de PNL requerem uma grande carga de poder do computador, graças em parte a s altas demandas de memória do mecanismo de atenção. “Esta parte éna verdade o gargalo para os modelos de PNLâ€, diz Wang. Um desafio que ele aponta éa falta de hardware especializado para rodar modelos de PNL com o mecanismo de atenção. Processadores de uso geral, como CPUs e GPUs, tem problemas com a complicada sequaªncia de movimentação de dados e aritmanãtica do mecanismo de atenção. E o problema vai piorar a medida que os modelos de PNL se tornam mais complexos, especialmente para frases longas. “Precisamos de otimizações algoratmicas e hardware dedicado para processar a demanda computacional cada vez maiorâ€, diz Wang.
Os pesquisadores desenvolveram um sistema chamado SpAtten para executar o mecanismo de atenção com mais eficiência. Seu design abrange software e hardware especializados. Um avanço importante do software éo uso de “poda em cascata†pelo SpAtten, ou eliminação de dados desnecessa¡rios dos ca¡lculos. Uma vez que o mecanismo de atenção ajuda a escolher as palavras-chave de uma frase (chamadas de tokens), o SpAtten remove os tokens sem importa¢ncia e elimina os ca¡lculos e movimentos de dados correspondentes. O mecanismo de atenção também inclui vários ramos de computação (chamados cabea§as). Semelhante aos tokens, as cabea§as sem importa¢ncia são identificadas e removidas. Uma vez despachados, os tokens e cabea§as estranhos não são levados em consideração nos ca¡lculos downstream do algoritmo, reduzindo a carga computacional e o acesso a memória.
Para reduzir ainda mais o uso da memória, os pesquisadores também desenvolveram uma técnica chamada "quantização progressiva". O manãtodo permite que o algoritmo empunhe dados em pedaço s de largura de bits menores e busque o manimo possível da memória. A precisão de dados mais baixa, correspondendo a uma largura de bits menor, éusada para sentena§as simples, e a precisão mais alta éusada para as complicadas. Intuitivamente, écomo buscar a frase “cmptr progm†como a versão de baixa precisão de “programa de computadorâ€.
Junto com esses avanços de software, os pesquisadores também desenvolveram uma arquitetura de hardware especializada para executar o SpAtten e o mecanismo de atenção, minimizando o acesso a memória. Seu projeto de arquitetura emprega um alto grau de “paralelismoâ€, o que significa que várias operações são processadas simultaneamente em vários elementos de processamento, o que éútil porque o mecanismo de atenção analisa cada palavra de uma frase de uma vez. O design permite que o SpAtten classifique a importa¢ncia de tokens e cabea§otes (para poda potencial) em um pequeno número de ciclos de clock do computador. No geral, os componentes de software e hardware do SpAtten se combinam para eliminar a manipulação de dados desnecessa¡ria ou ineficiente, concentrando-se apenas nas tarefas necessa¡rias para completar o objetivo do usua¡rio.
A filosofia por trás do sistema écapturada em seu nome. SpAtten éuma maleta de “atenção esparsa†e os pesquisadores observam no artigo que SpAtten é“homofa´nico com 'espartano', significando simples e frugalâ€. Wang diz: “essa éa nossa técnica aqui: tornar a frase mais concisaâ€. Essa concisão foi confirmada em testes.
Os pesquisadores codificaram uma simulação do projeto de hardware do SpAtten - eles ainda não fabricaram um chip fasico - e o testaram em relação a processadores de uso geral concorrentes. O SpAtten correu mais de 100 vezes mais rápido do que o pra³ximo melhor concorrente (uma GPU TITAN Xp). Além disso, o SpAtten era mais de 1.000 vezes mais eficiente em termos de energia do que os concorrentes, indicando que o SpAtten poderia ajudar a reduzir as demandas substanciais de eletricidade da PNL.
Os pesquisadores também integraram o SpAtten em seu trabalho anterior, para ajudar a validar sua filosofia de que hardware e software são mais bem projetados em conjunto. Eles construaram uma arquitetura de modelo de PNL especializada para SpAtten, usando sua estrutura Hardware-Aware Transformer (HAT), e alcana§aram um aumento de velocidade de aproximadamente duas vezes em relação a um modelo mais geral.
Os pesquisadores acreditam que o SpAtten pode ser útil para empresas que empregam modelos de PNL para a maioria de suas cargas de trabalho de inteligaªncia artificial. “Nossa visão para o futuro éque novos algoritmos e hardware que removem a redunda¢ncia em idiomas reduzira£o os custos e economizara£o no ora§amento de energia para as cargas de trabalho de PNL do data centerâ€, disse Wang.
No extremo oposto do espectro, o SpAtten poderia levar a PNL para dispositivos pessoais menores. “Podemos melhorar a vida útil da bateria de telefones celulares ou dispositivos IoTâ€, diz Wang, referindo-se a “coisas†conectadas a Internet - televisores, alto-falantes inteligentes e similares. “Isso éespecialmente importante porque, no futuro, vários dispositivos IoT interagira£o com humanos por voz e linguagem natural, então a PNL seráo primeiro aplicativo que queremos empregar.â€
Han diz que o foco da SpAtten na eficiência e na remoção de redunda¢ncia éo caminho a seguir na pesquisa de PNL. “Os cérebros humanos são ativados esparsamente [por palavras-chave]. Os modelos de PNL que são ativados esparsamente sera£o promissores no futuro â€, diz ele. “Nem todas as palavras são iguais - preste atenção apenas a s importantes.â€