A modelagem de linguagem mascarada treina os modelos para prever palavras ausentes no texto. Normalmente, ele pré-treina modelos para tarefas de PLN downstream.
Os modelos de linguagem mascarados (MLM) são um tipo de grandes modelos de linguagem (LLM) usado para ajudar a prever palavras ausentes no texto em tarefas de processamento de linguagem natural (NLP). Por extensão, a modelagem em linguagem mascarada é uma forma de treinar modelos de transformadores, notavelmente representações de codificadores bidirecionais de transformadores (BERT) e sua abordagem de pré-treinamento de BERT robustamente otimizada (RoBERTa) para tarefas de PLN, treinando o modelo para preencher palavras mascaradas dentro de um texto. e, assim, prever as palavras mais prováveis e coerentes para completar o texto.1
A modelagem de linguagem mascarada auxilia em diversas tarefas — da análise de sentimentos à geração de texto— treinando um modelo para compreender a relação contextual entre as palavras. Na verdade, os desenvolvedores de pesquisa geralmente usam a modelagem de linguagem mascarada para criar modelos pré-treinados que passam por um ajuste fino supervisionado adicional para tarefas posteriores, como classificação de texto ou tradução automática. Os modelos de linguagem mascarados são, portanto, a base de muitos algoritmos de modelagem de linguagem atuais de última geração. Embora a modelagem de linguagem mascarada seja um método de pré-treinamento de modelos de linguagem, as fontes on-line às vezes se referem a ela como um método de aprendizagem por transferência. Isso pode não ser injustificado, já que alguns grupos de pesquisa começaram a implementar a modelagem de linguagem mascarada como uma tarefa final por si só.
Os transformadores HuggingFace e as bibliotecas de texto Tensorflow contêm funções projetadas para treinar e testar modelos de linguagem mascarados em Python, tanto como tarefas finais quanto para tarefas posteriores.
O procedimento geral que caracteriza os modelos de linguagem mascarada é bastante simples. Por ser uma forma de aprendizado não supervisionado, a modelagem de linguagem mascarada começa com um conjunto de dados de texto grande e não anotado. O algoritmo substitui uma amostra aleatória de palavras desse texto de entrada por tokens mascarados, que podem consistir no token [MASK] ou em outros tokens de palavras do vocabulário do texto de input. Para cada token mascarado, o modelo prevê quais tokens de palavras são os mais prováveis de terem aparecido no texto de entrada original.2
Por exemplo, na seguinte frase de Otelo, de Shakespeare, duas palavras foram substituídas por símbolos mascarados, enquanto outra palavra foi substituída por um token completamente diferente:
Em seguida, o modelo treinará um codificador bidirecional para prever os tokens de input originais que foram mascarados. Como ele faz isso? É certo que elucidar as máquinas internas de modelos de linguagem mascarada requer uma base em álgebra avançada e aprendizado de máquina. No entanto, é possível fazer uma visão geral.
Para cada palavra token nos dados de texto input , o modelo gera um vetor de incorporação de palavras semelhante a um modelo bag of words . O modelo combina essas embeddings com codificações de posição para criar o input do transformador. As codificações posicionais, em resumo, representam a localização de um determinado token de palavra em uma sequência usando um valor vetorial único. Por meio de codificações posicionais (ou embeddings posicionais), o modelo pode capturar informações semânticas sobre palavras por meio de suas relações posicionais com outras palavras.
O modelo transformador então usa esses embeddings de palavras e posições para gerar distribuições de probabilidade sobre o input para cada um dos tokens mascarados. As palavras com a maior probabilidade prevista para cada token mascarado são as respectivas previsões do modelo para o valor real de cada token.3
A modelagem de linguagem mascarada é uma funcionalidade característica do pré-treinamento do modelo do transformador BERT - de fato, os dois foram apresentados juntos à comunidade de aprendizado de máquina. Antes do BERT, os modelos de linguagem eram unidirecionais. Isso significa que eles aprenderam representações de linguagem considerando apenas o texto que precede uma determinada palavra. A abordagem do BERT para uma tarefa de modelagem de linguagem mascarada, no entanto, considera tanto o texto anterior quanto o seguinte.4 A principal diferença entre as abordagens unidirecional e bidirecional depende de como a camada de autoatenção do transformador decodifica os valores de saída.
Ao prever a próxima palavra em uma sequência — ou, no nosso caso, a palavra que falta — um modelo unidirecional considera apenas as palavras que precedem o valor ausente. Os decodificadores transformadores que operam dessa maneira também são chamados de causais ou retrospectivos. Ao processar uma sequência de entrada, o decodificador considera somente as entradas até o token de entrada em questão; o decodificador não tem acesso às entradas de token após aquela em consideração. Por outro lado, um codificador bidirecional, conforme adotado no modelo BERT, gera previsões usando todos os tokens de input, aqueles que precedem e seguem o valor mascarado.5
Para ilustrar, voltemos à citação de Otelo mencionada anteriormente: "Mas eu acho que a culpa é dos maridos se as esposas caem em desgraça." Imagine que, por algum motivo, temos todo esse texto, exceto pela palavra "esposas ": "Mas eu acho que a culpa é dos maridos se ________ caírem." Queremos determinar o que preenche essa lacuna. Esta figura ilustra a diferença em como ambos os decodificadores processariam nossa frase de exemplo:
Nesta figura, y representa a saída prevista para o token mascarado. O transformador unidirecional usa somente os valores de entrada que antecedem o token mascarado para prever o valor deste último. No entanto, o transformador bidirecional usa incorporações posicionais de todos os valores de entrada, tanto aqueles que precedem quanto seguem a máscara, a fim de prever o valor do token mascarado.
Desenvolvedores e pesquisadores utilizam modelos de linguagem mascarada para alimentar muitas tarefas de PLN, tais como named entity recognition, resposta a perguntas e classificação de texto. Tal como acontece com muitos domínios da PLN, a pesquisa de modelagem de linguagem mascarada muitas vezes se concentrou em línguas latinas, e principalmente em inglês. Mais recentemente, experimentos publicados desenvolvem e avaliam conjuntos de dados de línguas não latinas, como japonês e russo, para modelagem de linguagem mascarada e tarefas subsequentes.6 Além disso, um grupo de pesquisa propõe um método fracamente supervisionado para pré-treinar modelos de linguagem mascarada multilíngue. Especificamente, eles introduzem um token mascarado especial para aprovar um avanço entre idiomas no pré-treinamento em conjuntos de dados multilíngues. O método deles demonstra uma melhoria significativa na classificação multilíngue com modelos de linguagem mascarada multilíngue.7
Conforme mencionado, os pesquisadores podem frequentemente usar modelagem de linguagem mascarada como um meio para melhorar o desempenho do modelo em tarefas de PLN downstream. Tais tarefas incluem:
Named entity recognition. Esta tarefa utiliza modelos e redes neurais para identificar categorias de objetos predefinidas em textos — como nomes de pessoas, nomes de cidades e assim por diante. Como acontece com muitos objetivos de aprendizado de máquina, a falta de dados adequados se mostrou um obstáculo no named entity recognition. Para lidar com isso, pesquisadores têm explorado a modelagem de linguagem mascarada como uma forma de aumento de dados para Named Entity Recognition com notável sucesso.8
Análise de sentimentos. A análise de sentimentos analisa e classifica os dados como positivos, negativos ou neutros. Frequentemente, é usado para classificar grandes coleções de avaliações de clientes online. Semelhante ao named entity recognition, os pesquisadores exploraram a modelagem com linguagem mascarada como uma técnica de aumento de dados para análise de sentimento.9 Além disso, a modelagem em linguagem mascarada mostra-se promissora para a adaptação de domínio na análise de sentimento. As pesquisas sugerem que ele ajuda especificamente a focar na previsão de palavras com grandes pesos em tarefas de classificação de sentimento.10
Explore a biblioteca de modelos de base da IBM no portfólio do watsonx para escalar a IA generativa com confiança na sua empresa.
Use a IA a serviço da sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.
Reinvente os fluxos de trabalho e as operações críticas adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor comercial.
1 Daniel Jurafsky e James Martin, Processamento de Fala e Linguagem: Uma Introdução ao Processamento de Linguagem Natural, Linguística Computacional e Reconhecimento de Fala, 3ª edição, 2023, https://web.stanford.edu/~jurafsky/slp3.
2 Lewis Tunstall, Leandro von Werra e Thomas Wolf, Processamento de Linguagem Natural com Transformers, Edição Revisada, O'Reilly Media, 2022.
3 Daniel Jurafsky e James Martin, Processamento de Fala e Linguagem: Uma Introdução ao Processamento de Linguagem Natural, Linguística Computacional e Reconhecimento de Fala, 3ª edição, 2023, https://web.stanford.edu/~jurafsky/slp3. Denis Rothman, Transformadores para Processamento de Linguagem Natural e Visão Computacional, 3ª edição, Packt Publishing, 2024.
4 Jacob Devlin, Ming-Wei Chang, Kenton Lee e Kristina Toutanova, "BERT: Pré-treinamento de Transformadores Bidirecionais Profundos para Compreensão de Linguagem", Anais da Conferência de 2019 do Capítulo Norte-Americano da Associação de Linguística Computacional, 2019, https://aclanthology.org/N19-1423.
5 Daniel Jurafsky e James Martin, Processamento de Fala e Linguagem: Uma Introdução ao Processamento de Linguagem Natural, Linguística Computacional e Reconhecimento de Fala, 3ª edição, 2023, https://web.stanford.edu/~jurafsky/slp3.
6 Masahiro Kaneko, Aizhan Imankulova, Danushka Bollegala e Naoaki Okazaki, "Viés de gênero em modelos de linguagem mascarados para vários idiomas", Anais da Conferência de 2022 do Capítulo Norte-Americano da Associação de Linguística Computacional: Tecnologias da Linguagem Humana, 2022, https://aclanthology.org/2022.naacl-main.197. Sheng Liang, Philipp Dufter e Hinrich Schütze, "Redução monolíngue e multilíngue do viés de gênero em representações contextualizadas", Anais da 28ª Conferência Internacional de Linguística Computacional, 2020, https://aclanthology.org/2020.coling-main.446.
7 Xi IA e Bin Fang, "na hora Cross-lingual Masking for Multilingual Pre-training," Proceedings of the 61st Annual Meeting of the Association for Computational Linguistics, 2023, https://aclanthology.org/2023.acl-long.49.
8 Ran Zhou, Xin Li, Ruidan He, Lidong Bing, Erik Cambria, Luo Si e Chunyan Miao, "MELM: Aumento de dados com modelagem de linguagem de entidade mascarada para NER de baixo recurso", Anais da 60ª Reunião Anual da Associação de Linguística Computacional, 2022, https://aclanthology.org/2022.acl-long.160.
9 Larisa Kolesnichenko, Erik Velldal e Lilja Øvrelid, "Substituição de palavras com modelos de linguagem mascarados como aumento de dados para análise de sentimentos", Anais do Segundo Workshop sobre Recursos e Representações para Linguagens e Domínios com Recursos Limitados (RESOURCEFUL-2023), 2023, https://aclanthology.org/2023.resourceful-1.6.
10 Nikolay Arefyev, Dmitrii Kharchev e Artem Shelmanov, "NB-MLM: Adaptação de domínio eficiente de modelos de linguagem mascarados para análise de sentimento", Anais da conferência de 2021 sobre Métodos Empíricos em Processamento de Linguagem Natural, 2021, https://aclanthology.org/2021.emnlp-main.717.