Este é um artigo com fins didáticos para a disciplina [IF1006] Tópicos Avançados em SI 3 e que tem o nome fantasia de Transformação Digital com IA, utilizando Modelos de Linguagem no Ambiente de Negócios do curso de Bacharelado em Sistemas de Informação do Centro de Informática UFPE.
Leia o artigo anterior da série: Metodologia Data-Driven e Inteligência de Negócios
A preparação e limpeza de dados textuais são etapas críticas no desenvolvimento de soluções baseadas em Modelos de Linguagem de Grande Escala (LLMs). Essas etapas garantem que os dados sejam consistentes, relevantes e de alta qualidade, o que impacta diretamente a performance dos modelos treinados. Este texto explora técnicas fundamentais, como normalização e remoção de ruído, com uma introdução prática ao Processamento de Linguagem Natural (NLP) em Python, fornecendo uma base sólida para debates sobre as melhores práticas e escolhas metodológicas.
A Importância da Preparação de Dados para LLMs
A preparação de dados é uma etapa essencial no desenvolvimento de Modelos de Linguagem de Grande Escala (LLMs). Sua qualidade e relevância impactam diretamente a capacidade do modelo de gerar respostas precisas e alinhadas aos objetivos propostos. Nesta seção, discutiremos o papel central da preparação de dados, seus desafios, e como ela se integra ao ciclo de vida do modelo.
O Papel Central da Qualidade dos Dados
LLMs aprendem padrões linguísticos a partir de grandes volumes de dados. No entanto, dados brutos frequentemente contêm inconsistências, ruído e redundâncias que podem prejudicar o desempenho do modelo. Dados mal preparados levam a problemas como overfitting, vieses e interpretações imprecisas. Por exemplo, em um contexto de atendimento ao cliente, um modelo treinado com dados inconsistentes pode gerar respostas inadequadas, afetando negativamente a experiência do usuário.
A qualidade dos dados não apenas influencia os resultados, mas também define a eficiência do processo de treinamento. Modelos treinados com dados bem estruturados e representativos exigem menos iterações e apresentam melhor generalização em aplicações práticas.
Desafios na Preparação de Dados
A diversidade e a complexidade dos dados textuais apresentam vários desafios:
Ruído e Relevância: Dados textuais frequentemente incluem informações irrelevantes, como tags HTML, URLs ou caracteres especiais. Identificar e remover esses elementos é essencial para evitar que o modelo aprenda padrões errôneos.
Variações Linguísticas: Idiomas com múltiplas variações regionais e dialetos apresentam complexidades adicionais. Um exemplo é o português falado no Brasil e em Portugal, que possui diferenças em vocabulário, gramática e ortografia.
Representatividade e Viés: Conjuntos de dados não representativos podem introduzir vieses no modelo, prejudicando sua capacidade de atender a diferentes públicos ou contextos.
A superação desses desafios requer um planejamento cuidadoso e o uso de ferramentas e técnicas adequadas. A próxima subseção explora como a preparação de dados se integra ao ciclo de vida dos modelos.
Integração com o Ciclo de Vida do Modelo
A preparação de dados é a primeira etapa no ciclo de vida de um modelo, servindo como base para todo o processo subsequente. Uma abordagem bem estruturada de preparação de dados inclui as seguintes fases:
- Coleta: Identificar fontes confiáveis e relevantes de dados textuais.
- Limpeza: Remover inconsistências, duplicatas e elementos irrelevantes.
- Pré-processamento: Transformar dados brutos em um formato padronizado e utilizável, como tokenização e normalização.
Além disso, a preparação de dados está diretamente conectada a etapas como validação e inferência. Por exemplo, dados mal preparados podem levar a resultados inconsistentes durante a fase de validação, dificultando a identificação de problemas no modelo.
Impactos de Dados Mal Preparados
As consequências de dados inadequadamente preparados vão além do desempenho técnico:
Resultados Inconsistentes: Dados ruidosos ou não representativos podem levar a saídas imprevisíveis do modelo, especialmente em tarefas complexas como geração de texto ou tradução automática.
Vieses e Problemas Éticos: Dados com vieses podem amplificar preconceitos existentes, criando implicações éticas e legais para as organizações.
Custo e Tempo de Treinamento: Modelos treinados com dados de baixa qualidade frequentemente requerem mais tempo e recursos para atingir desempenho aceitável, aumentando os custos operacionais.
Consideraçoes finais
A preparação de dados não é apenas um passo técnico, mas também estratégico no desenvolvimento de soluções baseadas em LLMs. Investir em práticas adequadas de coleta, limpeza e pré-processamento garante maior eficiência e reduz riscos associados a vieses e resultados imprecisos. Na próxima seção, serão discutidas técnicas específicas de normalização e remoção de ruído, fundamentais para aprimorar o processo de preparação.
Técnicas de Normalização de Dados Textuais
A normalização de dados textuais é um passo essencial no processamento de dados para LLMs. Ela consiste em transformar dados brutos em um formato mais uniforme, eliminando variabilidades e inconsistências que podem prejudicar o desempenho do modelo. Esta seção explora as técnicas de normalização, sua aplicação prática e sua importância para a construção de bases de dados de qualidade para treinamento de modelos.
Objetivo e Importância da Normalização
A normalização tem como objetivo principal padronizar o formato dos dados textuais, eliminando variações que não adicionam valor ao aprendizado do modelo. Por exemplo, textos coletados de fontes diversas podem conter variações em maiúsculas e minúsculas, espaços extras ou formatações específicas de cada fonte. Padronizar esses elementos garante que o modelo aprenda padrões consistentes e evite desperdício de recursos computacionais.
Além disso, a normalização pode reduzir o vocabulário total processado pelo modelo, o que melhora sua eficiência sem sacrificar a qualidade. Por exemplo, “Internet” e “internet” seriam tratadas como palavras distintas em uma análise sensível a maiúsculas, mas podem ser unificadas para reduzir redundâncias.
Principais Técnicas de Normalização
A normalização inclui várias etapas e ferramentas. Abaixo estão as técnicas mais utilizadas:
Lowercasing (Conversão para Minúsculas): Esta técnica converte todo o texto para letras minúsculas, eliminando diferenças de capitalização. Por exemplo, “IA” e “ia” seriam tratadas como equivalentes.
Remoção de Pontuações e Caracteres Especiais: Elementos como vírgulas, pontos e emojis são eliminados, a menos que sejam essenciais para o contexto. Em textos de mídia social, por exemplo, emojis podem ter um papel semântico importante.
Tokenização: O processo de dividir um texto em unidades menores, como palavras ou subpalavras, facilita a análise subsequente. Por exemplo, a frase “Aprender IA é essencial” seria tokenizada como ["Aprender", "IA", "é", "essencial"].
Lematização e Stemização: Ambas as técnicas reduzem palavras às suas formas base. Enquanto a lematização utiliza regras linguísticas para identificar o significado raiz da palavra, a stemização é mais simplista e baseada em cortes. Por exemplo, "correndo", "corre" e "correram" podem ser reduzidos a "correr".
Remoção de Stop Words: Palavras que aparecem com alta frequência, mas têm pouco valor semântico para o contexto, como "de", "a", e "o", podem ser eliminadas. Contudo, essa etapa deve ser considerada com cautela, pois algumas aplicações podem exigir essas palavras para preservar o significado do texto.
Aplicação Prática: Escolha de Técnicas para Diferentes Cenários
A escolha das técnicas de normalização deve ser orientada pelos requisitos específicos do projeto. Por exemplo:
Textos Jurídicos: Em documentos legais, a capitalização pode indicar importância, como em “Lei de Proteção de Dados”. Nesse caso, lowercasing poderia não ser apropriado.
Análise de Sentimentos: Em redes sociais, emojis e pontuações podem ser cruciais para determinar o tom de uma mensagem, exigindo técnicas que preservem esses elementos.
Dados Multilíngues: Em contextos que incluem vários idiomas, a tokenização e a lematização podem precisar ser adaptadas para respeitar as particularidades linguísticas.
Desafios Associados à Normalização
Apesar de sua importância, a normalização apresenta desafios. Um deles é a preservação de informações semânticas durante a remoção de elementos considerados irrelevantes. Por exemplo, eliminar stop words pode comprometer a compreensão de textos curtos. Além disso, a aplicação de técnicas como lematização pode ser computacionalmente intensiva, especialmente em grandes conjuntos de dados.
Outro desafio está relacionado a dados não estruturados provenientes de fontes diversas, como comentários em redes sociais e transcrições de áudio. Cada fonte pode exigir abordagens distintas de normalização, aumentando a complexidade do processo.
Considerações finais
A normalização de dados textuais é uma etapa indispensável na preparação de dados para LLMs. Ela garante consistência, reduz redundâncias e otimiza o uso de recursos computacionais. Contudo, as técnicas de normalização devem ser escolhidas e aplicadas com base nos objetivos do projeto, considerando as particularidades do domínio e as implicações semânticas de cada decisão.
A próxima seção explorará como remover ruídos nos dados textuais, complementando as técnicas de normalização para criar bases de dados mais robustas.
Remoção de Ruído: Garantindo Dados Limpos
A remoção de ruído nos dados é um processo essencial para garantir a qualidade do conjunto de dados utilizado no treinamento de modelos de linguagem. Ruídos podem ser definidos como elementos irrelevantes ou inconsistentes nos dados, que não contribuem para a tarefa de aprendizado e podem prejudicar a performance do modelo. Esta seção explora as fontes de ruído, as principais técnicas para sua remoção e os desafios associados a esse processo.
O que é ruído nos dados textuais?
Ruídos nos dados textuais referem-se a elementos que introduzem inconsistências ou irrelevâncias no conjunto de dados. Exemplos incluem erros tipográficos, caracteres especiais sem valor semântico, tags HTML, links, ou mesmo informações descontextualizadas que não contribuem para os objetivos do modelo.
Por exemplo, em um conjunto de dados coletado de redes sociais, emojis podem representar ruído em alguns contextos, mas podem ser valiosos para análises de sentimento. Além disso, em transcrições de áudio, ruídos podem incluir pausas, palavras repetidas ou preenchimentos como "hum" e "ah", que não possuem valor semântico relevante para muitas tarefas.
Esses elementos podem aumentar a complexidade do processamento e, em alguns casos, introduzir vieses no modelo, especialmente se os ruídos forem mais prevalentes em determinados subconjuntos de dados.
Técnicas de Remoção de Ruído
Existem diversas técnicas para identificar e remover ruídos nos dados textuais. A escolha da abordagem depende do tipo de dados e do contexto da aplicação.
Filtragem de caracteres especiais: Remover caracteres como “#”, “@”, e links URL é uma prática comum, especialmente em textos oriundos de mídias sociais. Scripts de limpeza em Python, como expressões regulares (Regex), são amplamente utilizados para essa tarefa.
Eliminação de duplicatas: Textos duplicados podem inflar a importância de informações repetidas no modelo. A deduplicação é feita por meio de algoritmos de verificação de similaridade.
Correção ortográfica: Ferramentas como Hunspell e bibliotecas Python como
autocorrect
ajudam a corrigir erros tipográficos e ortográficos que podem comprometer a consistência dos dados.Identificação de outliers: Outliers, como sentenças extremamente longas ou curtas fora do padrão, podem ser identificados e filtrados para evitar interferências no aprendizado do modelo.
Processamento de linguagem natural (NLP): Ferramentas como o spaCy podem identificar palavras irrelevantes ou estruturar textos em formatos mais adequados para análise.
Aplicação Prática e Desafios
A aplicação das técnicas de remoção de ruído deve considerar o equilíbrio entre a limpeza dos dados e a preservação de informações relevantes. Por exemplo, ao processar textos de redes sociais, caracteres especiais e hashtags podem ser ruídos para algumas tarefas, mas cruciais para outras, como a análise de tendências ou hashtags.
Estudo de Caso: Em um projeto para criar um chatbot baseado em LLMs, textos de suporte ao cliente contendo notas de rodapé, metadados e identificadores de sistemas internos foram considerados ruídos. A remoção desses elementos resultou em um aumento significativo na precisão das respostas do modelo.
Desafios: Um dos maiores desafios é determinar o que constitui ruído em contextos diferentes. Além disso, a remoção excessiva pode levar à perda de informações valiosas. A escalabilidade também é uma preocupação, especialmente em conjuntos de dados grandes, onde a limpeza manual é impraticável.
Considerações finais
A remoção de ruído é um passo essencial para preparar dados de alta qualidade para treinamento de modelos de linguagem. Técnicas bem implementadas podem melhorar a eficiência computacional e a precisão do modelo, mas devem ser usadas com cuidado para evitar perdas de informações críticas. A próxima seção abordará a integração das técnicas de normalização e remoção de ruído no fluxo geral de preparação de dados.
Introdução ao NLP com Python
A linguagem Python se tornou uma das ferramentas mais amplamente utilizadas para processamento de linguagem natural (NLP) devido à sua versatilidade e a um rico ecossistema de bibliotecas. Esta seção apresenta uma introdução prática ao uso de Python para tarefas de NLP, destacando as etapas fundamentais, ferramentas mais utilizadas e como integrá-las no pipeline de preparação de dados para LLMs.
Fundamentos do NLP e Python
O NLP é uma subárea da inteligência artificial que se concentra em habilitar as máquinas a compreender e processar a linguagem humana. Tarefas comuns incluem análise de sentimentos, classificação de texto, extração de entidades e geração de texto. Python se destaca devido a sua simplicidade e ao suporte de bibliotecas robustas como nltk
, spaCy
e transformers
.
O uso de Python em NLP geralmente envolve três etapas principais:
- Pré-processamento de texto: Remoção de ruídos, normalização e tokenização de texto bruto.
- Modelagem semântica: Transformação de texto em representações numéricas, como vetores.
- Análise e inferência: Aplicação de modelos de aprendizado para análise ou geração de texto.
Essas etapas estão diretamente relacionadas aos desafios discutidos em seções anteriores, como normalização e remoção de ruídos.
Ferramentas Essenciais para NLP com Python
O código abaixo ilustra um fluxo básico de pré-processamento:
import nltk
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize
import string
# Baixar pacotes necessários
nltk.download('punkt')
nltk.download('stopwords')
# Dados de exemplo
texto = "Olá, bem-vindo ao mundo do Processamento de Linguagem Natural!"
# Tokenização
tokens = word_tokenize(texto.lower())
# Remoção de pontuação e stop words
stop_words = set(stopwords.words('portuguese'))
tokens_limpos = [t for t in tokens if t not in string.punctuation and t not in stop_words]
print(tokens_limpos)
Esse exemplo básico pode ser expandido para atender às necessidades específicas de projetos com LLMs.
- NLTK (Natural Language Toolkit): Biblioteca poderosa para tarefas de NLP como tokenização, stemming, lematização e análise gramatical. Exemplo:
from nltk.tokenize import word_tokenize
text = "Natural Language Processing is essential for AI."
tokens = word_tokenize(text)
print(tokens)
- spaCy: Um framework mais recente, otimizado para aplicações em produção. Ele oferece modelos pré-treinados para tokenização, reconhecimento de entidades e análise sintática.
import spacy
nlp = spacy.load("en_core_web_sm")
doc = nlp("SpaCy is efficient and fast.")
for token in doc:
print(token.text, token.pos_)
- Transformers (Hugging Face): Biblioteca projetada para trabalhar com modelos avançados, como BERT e GPT, fornecendo APIs fáceis de usar para análise e treinamento.
from transformers import pipeline
sentiment_pipeline = pipeline("sentiment-analysis")
result = sentiment_pipeline("I love learning NLP with Python!")
print(result)
Essas bibliotecas oferecem flexibilidade para abordar diferentes níveis de complexidade, desde tarefas básicas até projetos avançados com LLMs.
Integração de NLP no Pipeline de Dados para LLMs
Integrar tarefas de NLP no pipeline de preparação de dados é essencial para garantir que o texto seja processado de maneira eficiente antes do treinamento. As etapas incluem:
- Tokenização e normalização: Transformar o texto em sequências de tokens e aplicar técnicas de normalização discutidas anteriormente.
- Extração de características: Utilizar embeddings como Word2Vec ou modelos pré-treinados, como BERT, para transformar texto em vetores numéricos.
- Validação de dados: Implementar verificações para garantir que os dados textuais estejam limpos e consistentes.
Um exemplo prático seria o pré-processamento de textos para treinar um chatbot:
import re
from nltk.tokenize import word_tokenize
def preprocess_text(text):
text = re.sub(r"[^a-zA-Z0-9\s]", "", text) # Remove caracteres especiais
text = text.lower() # Converte para minúsculas
tokens = word_tokenize(text)
return tokens
sample_text = "Welcome to NLP with Python! Let's learn."
processed_text = preprocess_text(sample_text)
print(processed_text)
Este código demonstra uma abordagem básica para remover ruídos, normalizar e tokenizar o texto.
Desafios e Boas Práticas
Apesar da acessibilidade de ferramentas e bibliotecas, o NLP apresenta desafios, como o tratamento de ambiguidade linguística e a escalabilidade para grandes volumes de dados. Boas práticas incluem:
- Escolher ferramentas adequadas ao projeto: Optar por bibliotecas como spaCy para produção ou Hugging Face para modelos avançados.
- Documentação: Registrar os passos e decisões tomadas no pipeline de NLP para facilitar a manutenção e a reprodução.
- Validação contínua: Monitorar a performance do pipeline e ajustar técnicas de pré-processamento conforme necessário.
Considerações finais
Python fornece ferramentas acessíveis e poderosas para iniciar projetos de NLP, facilitando desde tarefas básicas até integrações com modelos de ponta. A próxima etapa do artigo explorará como aplicar as técnicas discutidas em um projeto real de desenvolvimento baseado em LLMs.
Impactos no Desenvolvimento de LLMs
A preparação e a limpeza de dados são etapas fundamentais no pipeline de desenvolvimento de grandes modelos de linguagem (LLMs). Este processo não apenas define a qualidade dos dados que alimentam o modelo, mas também influencia diretamente seu desempenho, escalabilidade e adequação ao propósito final. Nesta seção, discutimos os principais impactos dessas etapas no desenvolvimento de LLMs, abordando como escolhas feitas na preparação de dados afetam o modelo em termos de eficiência, viés, generalização e alinhamento ético.
Qualidade do Modelo e Generalização
A qualidade dos dados determina diretamente a capacidade do modelo de generalizar além do conjunto de treinamento. Dados mal preparados, com ruídos ou inconsistências, podem levar a resultados imprevisíveis. Por exemplo, a presença de duplicatas ou redundâncias pode induzir o modelo a superestimar a importância de certos padrões, enquanto a falta de diversidade nos dados pode restringir a aplicação do modelo a contextos específicos.
Um exemplo prático ocorre na aplicação de LLMs para geração de texto em múltiplos idiomas. Se o conjunto de dados contiver mais entradas em um idioma dominante, como o inglês, o modelo terá maior proficiência nesse idioma em detrimento de outros. Isso ressalta a importância de um pipeline de preparação que garanta equilíbrio e representatividade nos dados.
Redução de Viés e Impactos Éticos
A limpeza de dados desempenha um papel crucial na mitigação de vieses presentes nos conjuntos de dados. Modelos treinados em dados tendenciosos tendem a amplificar esses vieses, criando desafios éticos significativos em sua aplicação. Um exemplo notório é o viés de gênero ou raça, que pode surgir de conjuntos de dados históricos.
Durante o processo de limpeza, técnicas como a identificação de linguagem tendenciosa, revisão de amostras por especialistas e a exclusão de exemplos problemáticos ajudam a reduzir esses riscos. Além disso, práticas como a criação de benchmarks específicos para detectar e corrigir vieses em modelos treinados são cada vez mais adotadas.
Eficiência Computacional e Otimização de Recursos
Conjuntos de dados sujos ou desnecessariamente grandes aumentam o custo computacional do treinamento de LLMs. Isso inclui consumo de energia, tempo de processamento e uso de hardware especializado. Estratégias de preparação e limpeza de dados, como deduplicação e filtragem, podem reduzir significativamente o tamanho do conjunto de treinamento sem comprometer a representatividade.
Por exemplo, ao usar algoritmos de hashing para detectar duplicatas em grandes corpora textuais, pesquisadores podem economizar milhões de cálculos desnecessários. Da mesma forma, técnicas de balanceamento permitem que modelos aprendam com menos dados sem perda de eficiência.
Relevância e Aplicabilidade ao Domínio
A preparação de dados impacta diretamente a capacidade do LLM de ser adaptado a domínios específicos. Por exemplo, ao treinar um modelo para aplicações em saúde, dados ruidosos ou fora do contexto médico podem prejudicar a capacidade do modelo de fornecer respostas úteis e precisas. A curadoria de dados específicos do domínio é essencial para garantir relevância e aplicabilidade.
Uma abordagem comum é o uso de pipelines de NLP, como descrito na seção anterior, para extrair apenas informações relevantes e contextuais antes do treinamento do modelo. Isso inclui técnicas de anotação manual e automação baseada em aprendizado supervisionado.
Alinhamento com Objetivos do Projeto
Os objetivos de um projeto orientam a escolha de técnicas de preparação e limpeza de dados. Para aplicações em análise de sentimentos, por exemplo, dados mal rotulados ou com ruído de contexto podem prejudicar significativamente a performance do modelo. Por outro lado, para tarefas de geração criativa, como em chatbots, a limpeza excessiva pode remover nuances importantes.
Portanto, encontrar o equilíbrio entre limpeza e preservação de informações contextuais é uma prática essencial para maximizar os impactos positivos no desenvolvimento de LLMs.
Conclusão
A preparação e limpeza de dados desempenham um papel central no desenvolvimento de grandes modelos de linguagem (LLMs). Este artigo abordou desde a importância da preparação de dados até técnicas específicas de normalização, remoção de ruídos e introdução ao processamento de linguagem natural (NLP) em Python, destacando os impactos diretos no desempenho e na aplicabilidade dos modelos. Esses fundamentos não são apenas técnicos, mas também estratégicos, uma vez que influenciam decisões éticas, eficiência computacional e alinhamento com objetivos específicos do projeto.
Ao longo da discussão, ficou evidente que cada etapa no pipeline de preparação de dados contribui para a construção de modelos mais robustos e éticos. A normalização garante consistência e padronização, enquanto a remoção de ruído mitiga a propagação de informações irrelevantes ou distorcidas. Além disso, a introdução ao NLP em Python proporciona um ponto de partida acessível para que equipes possam implementar essas práticas em projetos reais.
Como próximos passos, é fundamental explorar ferramentas e frameworks avançados para automação de pipelines de dados e aprofundar-se em questões éticas associadas à curadoria de dados. Estudos de caso específicos e benchmarks robustos podem ajudar a guiar melhores práticas para diferentes domínios de aplicação.
Essa trajetória, que conecta práticas de preparação de dados a desafios e soluções no contexto de LLMs, reflete o papel indispensável dos dados no avanço da inteligência artificial.
Referências
- Bird, S., Klein, E., & Loper, E. (2019). Natural Language Processing with Python. This version of the NLTK book is updated for Python 3 and NLTK 3.
- Manning, C. D., et al. (2008). Introduction to Information Retrieval. Cambridge University Press.
- Goldberg, Y. (2017). Neural Network Methods for Natural Language Processing. Morgan & Claypool Publishers.
- Vaswani, A., et al. (2017). "Attention Is All You Need." Proceedings of the 31st International Conference on Neural Information Processing Systems (NIPS'17). Curran Associates Inc., Red Hook, NY, USA, 6000–6010.
- Jurafsky, D., & Martin, J. H. (2020). Speech and Language Processing. Pearson.
- Favaron, G. (2024). "O que é RAG em LLMs e IA? Introdução ao tema (Parte 1/2)". Atualizado: 17 de set. 2024.
- Favaron, G. (2024). "Guia prático de implementação de RAG em LLMs e IA (Parte 2/2)". set 17, 2024.
- databricks. "O que é LLMOps?". Glossário.
- Genesis, Gallileu. (2024). "Uma dose de ciência de dados: Ciclo de vida LLMOps". Posted 28 de mar de 2024 -- Updated 1 de abr de 2024
- Shah, M., Sureja, N. (2024). "A Comprehensive Review of Bias in Deep Learning Models: Methods, Impacts, and Future Directions". Arch Computat Methods Eng (2024).
- Bender, E. M., et al. (2021). "On the Dangers of Stochastic Parrots: Can Language Models Be Too Big?" Proceedings of the 2021 ACM Conference on Fairness, Accountability, and Transparency (FAccT '21). Association for Computing Machinery, New York, NY, USA, 610–623.
- Manning, C. D., & Schütze, H. (1999). Foundations of Statistical Natural Language Processing. MIT Press, May 28, 1999
- Hugging Face Documentation: https://huggingface.co/docs
- spaCy Documentation: https://spacy.io/
- Loukides, G., et al. (2018). "Ethics and Data Science". O'Reilly Media, Inc.
- Devlin, J., et al. (2019). "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding." Proceedings of the 2019 Conference of the North {A}merican Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers).
- Kaplan, J., et al. (2020). "Scaling Laws for Neural Language Models." arXiv preprint arXiv:2001.08361.
- Sun, T., et al. (2019). "Mitigating Gender Bias in Natural Language Processing." Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics.
Este texto contou com apoio de IA na sua revisão e produção da imagem.