Cite os principais impactos da arquitetura Transformers
Qual a origem da arquitetura Transformers?
“Attention is All You Need”, Vaswani et al, 2017
Explique teoricamente Mecanismo de atenção
Permite que o modelo dê importância variável a diferentes partes de uma sequência. Isso facilita a captura de dependências de longo alcance e a compreensão de contextos complexos.
Isso porque nem todas as partes de uma sequência são igualmente relevantes para a tarefa.
Dê o passo-a-passo de Mecanismo de atenção
Dê o passo-a-passo matemático de Mecanismo de atenção
1.
K_i = W_k * X_i
Q_i = W_q * X_i
V_i = W_v * X_i
sendo W_* as matrizes de pesos e X_i cada token.
2.
score(Q_i, K_i) = (Q_i * K_i ^ T) / sqrt(d_k)
Em que d_k é a dimensão das representações das keys e queries e sua raíz quadrada é usada para normalizar a pontuação de atenção, evitando valores muito grandes ou pequenos.
3.
A_ij = softmax(score(Q_i, K_i)) = exp(score(Q_i, K_i)) / (exp(score(Q_i, K_i)))
A_ij é o peso de atenção do i-ésimo token da query em relação ao j-ésimo token da key
4.
Attention_output_i = (A_ij * V_j)
Resultando em uma representação ponderada para cada token de query com base em sua importância relativa em relação aos tokens de key.
Descreva as principais diferenças entre Multi-head attention para Atenção por produto escalar
Ideia principal: permitir que o modelo preste atenção a diferentes tipos de informações contextuais simultaneamente.
Resultados: melhora na capacidade do modelo de entender as dependências e relações entre os tokens na sequência de entrada.
Ele divide as representações de key, query e value em várias “cabeças” menores e aplica o mecanismo de atenção a cada uma delas de forma independente. Em seguida, as saídas ponderadas de cada cabeça são concatenadas e transformadas novamente para obter a saída final da camada de atenção multi-cabeça.
Explique brevemente Paralelização
Os Transformers não dependem de cálculos sequenciais, como as redes recorrentes (ex. LSTM e GRU), o que permite uma paralelização mais eficiente e um treinamento mais rápido.
Explique brevemente Escalabilidade
Permitem o treinamento com bilhões de parâmetros e a obtenção de um desempenho significativamente melhor em várias tarefas de PLN.
Explique brevemente Transferência de aprendizado
Técnica de aprendizado de máquina que aproveita um modelo pré-treinado em uma tarefa para ajudar a resolver outra tarefa relacionada, geralmente com menos dados de treinamento.
Objetivo principal: transferir o conhecimento adquirido pelo modelo durante o treinamento em uma tarefa para acelerar e melhorar o desempenho em outra.
Cite algumas de suas aplicações
Tradução automática, geração de texto, análise de sentimento, resposta a perguntas, … A arquitetura também foi adaptada para outras áreas como visão computacional e análise de séries temporais.
Cite o objetivo principal da arquitetura Transformers
Melhorar a eficiência e a capacidade de lidar com problemas em sequência, como PLN e análise de séries temporais.
Qual sua principal inovação?
Atenção auto-regressiva.
Permite que o modelo atribua pesos diferentes a diferentes partes da sequência de entrada dependendo da sua importância para a tarefa específica.
Essa atenção é calculada usando usando uma técnica chamada “Mecanismo de atenção por produto escalar”, que permite ao modelo aprender padrões de longo alcance e interações entre as palavras de uma sequência.
Explique brevemente os dois componentes principais da arquitetura Transformers
Codificador: processa a sequência de entrada e gera uma representação vetorial contínua.
Decodificador: usa essa representação para gerar a sequência de saída.
Ambos os componentes são compostos por várias camadas de atenção, cada uma com suas próprias conexões e parâmetros aprendidos.
Cite casos em que o Transfer Learning é particularmente útil
Descreva o passo-a-passo básico de utilização do Transfer Learning
Quais submódulos compões as camadas do Encoder e do Decoder?
Encoder
Decoder
Cada submódulo é seguido por uma conexão residual, que adiciona a saída do submódulo à entrada original, e por uma normalização da camada
Explique positional encoding
Incorpora informações sobre a posição dos tokens na sequência. Isso é necessário pois os mecanismos de atenção não têm noção de ordem inerente e precisamos que o modelo entenda e represente as dependências e relações entre os tokens considerando suas posições na sequência.
É adicionada à representação inicial de cada token antes que ele passe pelas camadas do Encoder e do Decoder.
Existem várias formas de implementação, mas no artigo original do Transformer é baseada em funções seno e cosseno com diferentes frequências.
Explique o que é BERT
Bidirectional Encoder Representations from Transformers
Modelo de aprendizado profundo desenvolvido pela Google AI Language em 2018
É baseado na arquitetura Transformer e utiliza uma técnica de treinamento bidirecional para aprender representações de linguagem de alta qualidade.
Ao contrário dos modelos anteriores de PLN, o BERT considera os contextos à esquerda e à direita das palavras simultaneamente. Isso permite que o modelo entenda melhor o significado das palavras com base em seus contextos de uso.
Existem diversas versões e variantes do modelo BERT.