Eu tenho sua atenção? Bem, o que realmente significa ter sua atenção? A atenção é definida como “a observação de alguém ou alguma coisa; a consideração de alguém ou algo como interessante ou importante”. Como humanos, somos capazes de nos concentrar seletivamente em aspectos de - digamos - uma imagem e entender o contexto com eficiência e, ao mesmo tempo, tirar conclusões. Em vez de examinar cada pixel/detalhe de uma imagem, o cérebro humano escolhe focar primeiro nos objetos-chave.
Essa característica humana de “atenção” é imitada em tarefas de visão computacional. Em vez de digitalizar a imagem inteira, a visão computacional permite que os computadores se concentrem em áreas relevantes.
Acima, a atenção está focada nas áreas destacadas para produzir uma determinada palavra. “Uma mulher está jogando um frisbee no parque.”
Esse conceito de atenção também pode ser aplicado a outros campos do aprendizado de máquina. Pense em um livro didático de ciências do ensino fundamental. Se alguém lhe perguntasse “Quais são as três principais classificações das rochas?” , para encontrar a resposta, você consultaria o capítulo sobre Rocks e não leria todo o livro didático de capa a capa. Isso permite que você encontre uma resposta específica em vez de generalizar com base em todo o livro que você acabou de ler. Essa mesma lógica é como os mecanismos de atenção funcionam nas tarefas de processamento de linguagem natural.
Em 2017, Ashish Vaswani e outros membros da equipe do Google Brain lançaram um novo método de processamento de linguagem chamado “Rede Transformer” em um artigo intitulado “Atenção é tudo que você precisa”. O Transformer utiliza esses mecanismos de atenção (daí o nome “Atenção é tudo o que você precisa”) para processar longas sequências de dados, ou seja, longas sequências de texto, com mais rapidez e precisão do que antes.
Em vez de abordar a linguagem a partir da lente típica de processar cada palavra uma por uma, a equipe do Google se inspirou nos mecanismos de atenção das redes neurais convolucionais (CNN) e viu os corpos de texto quase como se fossem imagens. “Attention is All You Need” usou as ideias-chave de atenção nas CNNs para ensinar máquinas a ler, escrever e entender a linguagem humana (Processamento de Linguagem Natural ou PNL) de uma forma mais eficiente e precisa do que nunca. O Transformer buscou se tornar uma ferramenta computacional mais bem-sucedida, usada para manipular, interpretar e gerar linguagem.
Os problemas abordados pelos mecanismos de atenção
Problemas de dependência de longo prazo da solução anterior (o RNN)
Uma rede neural recorrente (RNN) é a estrutura originalmente usada para capturar dependências oportunas em sequências/sequências de texto processando cada palavra, uma por vez, em ordem. Um RNN tem uma estrutura codificador/decodificadora. Pense no codificador e no decodificador como coisas que falam dois idiomas, um idioma exclusivo e outro que eles compartilham. O codificador pega o texto, traduz um resumo para o idioma compartilhado e, em seguida, o decodificador o traduz de volta para seu próprio idioma.
O problema com isso é que, se o “resumo” for ruim, a tradução será ruim. Os RNNs têm um “problema de dependência de longo prazo”; quanto maior o texto (lembre-se do exemplo do livro didático), pior será o resumo. Como os RNNs processam cada palavra por vez, eles também têm dificuldade em lembrar as principais informações do início da passagem. Isso é chamado de problema do gradiente de desaparecimento. Por exemplo, se uma passagem menciona no início que um homem é da América e depois tem a frase: Ele fala _______. Os RNNs têm dificuldade em usar essas informações anteriores para preencher o espaço em branco porque não têm como identificar o que é importante lembrar. Enquanto os humanos saberiam, a resposta provavelmente seria “inglês”.
Como os transformadores tentam resolver o problema de dependência de longo prazo com mecanismos de atenção
O avanço que impulsiona os Transformers à frente dos métodos anteriores de PNL é o uso desses mecanismos de atenção. Lembre-se de que os mecanismos de atenção se concentram em palavras-chave dentro de um corpo de texto, em vez de olhar para todas as palavras com o mesmo peso. Então, no caso de “o homem era da América; que língua ele fala?” , ter mecanismos de atenção tomaria nota da palavra “América” e a usaria como contexto para descobrir que ele fala inglês. Essa adição ajuda a combater o “problema do gradiente de desaparecimento” que os RNNs sofriam. Apesar de serem uma clara melhoria em relação aos RNNs, pesquisas sugerem que os Transformers ainda não lidam muito bem com dependências de longo prazo; há claramente mais espaço para melhorias.
Computação paralela
Outra diferença a ser observada entre os Transformers e os RNNs é a forma como cada método processa a linguagem. No passado, a solução era processar cada palavra uma a uma, da mesma forma que um humano lê. Mas os Transformers processam todas as palavras ao mesmo tempo, ou seja, em paralelo; isso é chamado de computação paralela. Isso acelera drasticamente o tempo de processamento e facilita o treinamento de modelos incrivelmente grandes em quantidades incrivelmente grandes de dados.
Contexto
As soluções anteriores de processamento de linguagem provaram ser ineficientes e não consideravam as dependências oportunas (ou seja, quando uma palavra ocorre em uma frase afeta o significado) encontradas na linguagem. Em outras palavras, para entender uma frase, você não pode simplesmente contar o número de vezes que uma palavra aparece em uma sequência. Isso é chamado de método “Bag of Words”, que já foi um método tentado de processamento de linguagem.
Para os humanos, as duas frases na figura acima têm significados drasticamente diferentes. Mas, no método Bag of Words, elas parecem ser idênticas. A próxima etapa óbvia foi encontrar uma solução que levasse em conta a ordem das palavras, além da frequência das palavras.
Os modelos anteriores passavam cada palavra uma por uma, então não havia problema em saber onde a palavra estava na frase. No entanto, como os Transformers transmitem as palavras em paralelo, era necessário que houvesse uma nova solução para fornecer contexto para as palavras. Ao processar cada palavra, o Transformer traduz a palavra em algo que o computador possa entender e, em seguida, também adiciona uma referência de posição à palavra. Portanto, se houver várias ocorrências da palavra “Omneky”, a referência de posição permitirá que o computador saiba onde cada uma dessas instâncias está no texto. Essa equação da posição da palavra + cria contexto para o computador.
Modelos de linguagem pré-treinados atuais
Muitos modelos foram baseados no Transformer inicial apresentado em “Atenção é tudo o que você precisa”, do Google. Cada grande empresa está treinando seu próprio modelo de linguagem grande. A OpenAI tem GPT/GPT-2/GPT-3, o Google tem Bert/Albert/XLNET/T5, o Facebook tem Roberta/XLM/BART, a Microsoft tem Turing-NLG, etc. Com o passar do tempo, as empresas continuam desenvolvendo modelos maiores. Mas também há uma ênfase na tentativa de criar modelos que possam funcionar com eficiência em hardware comum e sejam acessíveis à comunidade em geral.
Você pode jogar com modelos pré-treinados e de código aberto com o Huggingface aqui:
https://transformer.huggingface.co/
O futuro dos Transformers
Há muito entusiasmo em torno da API GPT-3 da OpenAI. A API GPT-3 da OpenAI tornou o gigantesco modelo Transformer da OpenAI/Microsoft, treinado em toda a web, acessível a desenvolvedores regulares. Os usuários acessaram o Twitter para mostrar os aplicativos criativos do novo modelo. Por exemplo, o desenvolvedor web Sharif Shameem (@sharifshameem) ajustou o GPT-3 para que ele produzisse código HTML, tuitando seus resultados. Usando apenas prompts, o GPT-3 aprendeu a produzir layouts de páginas da web. As aplicações para criatividade são infinitas.

Transformadores de linguagem e Omneky
O objetivo da Omneky é utilizar o aprendizado profundo para nivelar o “campo de atuação do marketing digital” entre grandes e pequenas empresas. Richard Socher, cientista-chefe da Salesforce, afirma que “a Omneky está tornando os transformadores úteis para todas as empresas que desejam que a IA as ajude no marketing”. Usando PNL e transformadores de linguagem, a Omneky elabora cópias de anúncios personalizadas que garantem a condução de conversas. Combinando ferramentas de análise preditiva e geração de texto, o software da Omneky pode ajudar a criar anúncios personalizados no Facebook com o clique de um botão. Isso permite que a Omneky crie e gerencie campanhas publicitárias a ¼ do custo das empresas de marketing tradicionais. No momento, estamos oferecendo um teste gratuito de duas semanas para experimentar nosso serviço gratuitamente - basta agendar uma demonstração aqui!