Processamento de Linguagem Natural: A Matemática por Trás da Comunicação com Máquinas
VOLUME 86
NLP
λ
P(w)
θ
INTELIGÊNCIA ARTIFICIAL!
P(w₁, w₂,..., wₙ)
H(X) = -∑P(x)log P(x)
cos(θ) = A·B/|A||B|
argmax P(y|x)

PROCESSAMENTO DE

LINGUAGEM NATURAL

A Matemática por Trás da Comunicação com Máquinas
Coleção Escola de Lógica Matemática

JOÃO CARLOS MOREIRA

Doutor em Matemática
Universidade Federal de Uberlândia

Sumário

Capítulo 1 — A Linguagem como Sistema Matemático
Capítulo 2 — Fundamentos Matemáticos do PLN
Capítulo 3 — Tokenização e Análise Léxica
Capítulo 4 — Análise Sintática e Árvores de Derivação
Capítulo 5 — Semântica Computacional
Capítulo 6 — Modelos Probabilísticos de Linguagem
Capítulo 7 — Representações Vetoriais de Palavras
Capítulo 8 — Redes Neurais e Transformadores
Capítulo 9 — Aplicações Práticas do PLN
Capítulo 10 — O Futuro da Comunicação Homem-Máquina
Referências Bibliográficas

A Linguagem como Sistema Matemático

Imagine poder conversar naturalmente com uma máquina, fazer perguntas complexas e receber respostas coerentes, ou traduzir instantaneamente textos entre idiomas distantes. Esses feitos aparentemente mágicos são possíveis graças ao Processamento de Linguagem Natural, uma área fascinante onde matemática, computação e linguística se encontram para decifrar o código da comunicação humana. Neste capítulo inaugural, descobriremos como a linguagem, aparentemente caótica e subjetiva, pode ser modelada como um sistema matemático rigoroso, abrindo portas para máquinas que compreendem e geram texto com precisão impressionante.

A Estrutura Oculta da Linguagem

Por trás da aparente aleatoriedade das conversas cotidianas, existe uma estrutura matemática surpreendentemente regular. Cada idioma segue padrões estatísticos previsíveis, desde a frequência de palavras até a probabilidade de certas sequências aparecerem juntas. Quando dizemos "o gato subiu no", nosso cérebro já antecipa palavras como "telhado" ou "muro", mas dificilmente "computador". Essa previsibilidade não é acaso — é matemática pura operando nos bastidores da comunicação.

Elementos Matemáticos na Linguagem

  • Distribuições de frequência que seguem a lei de Zipf
  • Estruturas hierárquicas representáveis por árvores
  • Padrões probabilísticos em sequências de palavras
  • Relações semânticas mensuráveis geometricamente
  • Entropia informacional em mensagens textuais

Da Intuição Humana ao Algoritmo

O desafio do PLN reside em transformar nossa compreensão intuitiva da linguagem em algoritmos precisos. Quando lemos "banco", sabemos instantaneamente se refere-se a uma instituição financeira ou a um assento, baseando-nos no contexto. Ensinar máquinas a fazer essa distinção requer modelagem matemática sofisticada, combinando estatística, álgebra linear e teoria da informação para capturar nuances que processamos inconscientemente.

Ambiguidades Resolvidas Matematicamente

  • "Vi o homem com o telescópio" — análise sintática probabilística
  • "Manga" (fruta ou vestuário) — desambiguação por contexto vetorial
  • "Ela viu o pato" — múltiplas interpretações com scores diferentes
  • Pronomes e suas referências — cadeias de Markov
  • Metáforas e sentidos figurados — espaços semânticos multidimensionais

A Revolução dos Dados

O advento da internet transformou radicalmente o PLN. Bilhões de textos disponíveis online tornaram-se o combustível para algoritmos cada vez mais sofisticados. Modelos estatísticos aprendem padrões linguísticos analisando montanhas de dados, descobrindo regularidades que escapam até mesmo aos linguistas mais experientes. A matemática transforma esse oceano de palavras em conhecimento estruturado e aplicável.

Explorando Padrões em Textos

  • Calcular a frequência de palavras em um texto qualquer
  • Verificar se segue a distribuição de Zipf
  • Identificar bigramas e trigramas mais comuns
  • Medir a entropia de diferentes tipos de texto
  • Comparar padrões entre textos formais e informais

Representando Significado Numericamente

Uma das conquistas mais impressionantes do PLN moderno é representar o significado das palavras como vetores numéricos. Nesse espaço matemático, palavras semanticamente relacionadas ficam próximas, permitindo operações algébricas surpreendentes. Por exemplo, o vetor "rei" menos "homem" mais "mulher" resulta aproximadamente em "rainha". Essa geometria do significado revolucionou nossa capacidade de processar linguagem computacionalmente.

Propriedades dos Espaços Semânticos

  • Similaridade medida por distância euclidiana ou cosseno
  • Analogias expressas como operações vetoriais
  • Clusters de palavras formando campos semânticos
  • Dimensões latentes capturando aspectos do significado
  • Projeções preservando relações linguísticas

Gramáticas Formais e Autômatos

A teoria das linguagens formais fornece ferramentas matemáticas poderosas para modelar a sintaxe. Gramáticas livres de contexto descrevem como sentenças válidas são construídas, enquanto autômatos finitos processam padrões regulares. Essas abstrações matemáticas, originalmente desenvolvidas para linguagens de programação, revelaram-se fundamentais para entender e processar linguagens naturais.

Hierarquia de Chomsky no PLN

  • Linguagens regulares — expressões simples e padrões
  • Linguagens livres de contexto — estrutura sintática básica
  • Linguagens sensíveis ao contexto — dependências complexas
  • Linguagens recursivamente enumeráveis — poder computacional total
  • Aplicações práticas em parsers e compiladores

Aprendizado de Máquina e Linguagem

O casamento entre aprendizado de máquina e PLN produziu avanços espetaculares. Redes neurais profundas aprendem representações sofisticadas da linguagem, capturando sutilezas que escapam a regras programadas manualmente. Transformadores, a arquitetura por trás de modelos como GPT e BERT, revolucionaram o campo ao processar contexto de forma paralela e eficiente, estabelecendo novos patamares de desempenho.

Conceitos Fundamentais de ML para PLN

  • Embeddings — representações densas de palavras
  • Attention mechanisms — foco seletivo em partes relevantes
  • Transfer learning — conhecimento reutilizável entre tarefas
  • Fine-tuning — especialização para domínios específicos
  • Avaliação com métricas como perplexidade e BLEU

Desafios e Fronteiras

Apesar dos avanços impressionantes, o PLN ainda enfrenta desafios monumentais. Compreensão profunda, raciocínio de senso comum, e processamento de contextos longos permanecem problemas em aberto. A matemática continua sendo nossa melhor ferramenta para atacar essas questões, desenvolvendo novos formalismos e algoritmos que aproximam máquinas da verdadeira compreensão linguística.

Problemas em Aberto

  • Compreensão de texto além da superfície sintática
  • Geração de texto coerente em narrativas longas
  • Tradução preservando nuances culturais
  • Detecção confiável de ironia e sarcasmo
  • Raciocínio causal e temporal em textos

O Impacto Social do PLN

As aplicações do PLN permeiam nosso cotidiano de formas visíveis e invisíveis. Assistentes virtuais respondem nossas perguntas, tradutores automáticos quebram barreiras linguísticas, e sistemas de recomendação filtram informação relevante. Compreender a matemática por trás dessas tecnologias nos capacita não apenas a desenvolvê-las, mas também a usá-las de forma crítica e responsável.

PLN no Dia a Dia

  • Corretores ortográficos e gramaticais inteligentes
  • Chatbots em atendimento ao cliente
  • Análise de sentimentos em redes sociais
  • Resumo automático de documentos
  • Busca semântica em grandes bases de dados

Preparando o Terreno

Este capítulo estabeleceu a visão panorâmica do PLN como disciplina profundamente matemática. Vimos como a linguagem, longe de ser caótica, exibe regularidades que podem ser capturadas por modelos formais. Nos próximos capítulos, mergulharemos nas ferramentas matemáticas específicas que tornam possível essa modelagem, desde conceitos básicos de probabilidade até arquiteturas neurais sofisticadas. Prepare-se para uma jornada fascinante onde equações ganham voz e algoritmos aprendem a conversar!

A matemática não apenas descreve a linguagem — ela a decodifica, transformando símbolos em significado, sintaxe em semântica, e ultimamente, permitindo que máquinas participem do mais humano dos atos: a comunicação. Vamos agora explorar os fundamentos matemáticos que sustentam essa revolução tecnológica!

Fundamentos Matemáticos do PLN

Todo castelo precisa de alicerces sólidos, e o PLN não é exceção. Por trás dos chatbots eloquentes e tradutores instantâneos existe um arsenal matemático rigoroso, combinando probabilidade, álgebra linear, teoria da informação e otimização. Neste capítulo, construiremos o vocabulário matemático essencial para compreender como máquinas processam linguagem. Descobriremos que conceitos aparentemente abstratos como entropia e espaços vetoriais são, na verdade, as ferramentas fundamentais para ensinar computadores a ler, escrever e compreender.

Teoria da Probabilidade em Linguagem

A linguagem é inerentemente probabilística. Quando começamos uma frase com "O cachorro", a probabilidade da próxima palavra ser "latiu" é muito maior que ser "voou". Essa intuição probabilística fundamenta modelos de linguagem modernos. O teorema de Bayes, pedra angular da inferência estatística, permite-nos atualizar nossas crenças sobre o significado de palavras ambíguas conforme processamos mais contexto.

Conceitos Probabilísticos Essenciais

  • Probabilidade condicional P(palavra|contexto)
  • Teorema de Bayes para desambiguação
  • Distribuições de probabilidade sobre vocabulários
  • Cadeias de Markov modelando sequências
  • Máxima verossimilhança para estimação de parâmetros

Álgebra Linear e Espaços de Palavras

Representar palavras como vetores revolucionou o PLN. Em espaços de alta dimensão, cada palavra ocupa uma posição específica, com palavras similares agrupando-se naturalmente. Operações matriciais permitem transformações complexas, projeções que revelam estruturas latentes, e cálculos eficientes de similaridade. A decomposição em valores singulares (SVD) extrai os componentes principais do significado, reduzindo dimensionalidade sem perder informação crucial.

Operações Vetoriais em PLN

  • Produto escalar para medir similaridade semântica
  • Norma vetorial indicando importância ou frequência
  • Projeções ortogonais isolando componentes de significado
  • Transformações lineares modelando relações linguísticas
  • Autovalores capturando direções principais de variação

Teoria da Informação e Entropia

Claude Shannon revolucionou a comunicação ao quantificar informação. Em PLN, a entropia mede a incerteza ou surpresa em sequências de texto. Textos previsíveis têm baixa entropia; poesia experimental, alta. A informação mútua quantifica dependências entre palavras, revelando associações semânticas. Esses conceitos fundamentam compressão de texto, modelos de linguagem e métricas de qualidade.

Calculando Medidas Informacionais

  • Entropia H = -∑ p(x) log₂ p(x) de distribuições de palavras
  • Entropia cruzada comparando modelos com dados reais
  • Perplexidade como medida de qualidade de modelos
  • Divergência KL quantificando diferenças entre distribuições
  • Informação mútua identificando colocações significativas

Otimização e Aprendizado

Treinar modelos de PLN é fundamentalmente um problema de otimização. Buscamos parâmetros que minimizem erros ou maximizem verossimilhança. O gradiente descendente navega paisagens de erro complexas, encontrando mínimos que correspondem a bons modelos. Regularização previne overfitting, mantendo modelos generalizáveis. Essas técnicas transformam dados brutos em sistemas capazes de processar linguagem nova.

Técnicas de Otimização

  • Gradiente descendente estocástico (SGD) para grandes datasets
  • Adam e outros otimizadores adaptativos
  • Regularização L1 e L2 controlando complexidade
  • Dropout prevenindo co-adaptação em redes neurais
  • Early stopping baseado em validação

Estatística e Modelos de Linguagem

Modelos n-gram capturam dependências locais contando co-ocorrências. Um bigrama modela P(palavra₂|palavra₁), um trigrama P(palavra₃|palavra₁, palavra₂). Smoothing techniques lidam com eventos raros, distribuindo probabilidade para sequências não vistas. Esses modelos simples mas poderosos formam a base de sistemas mais complexos, fornecendo baselines e features para arquiteturas avançadas.

Construindo Modelos N-gram

  • Contagem de frequências em corpus de treinamento
  • Normalização para obter probabilidades
  • Laplace smoothing para eventos zeros
  • Interpolação combinando diferentes ordens de n-gramas
  • Perplexidade como métrica de avaliação

Grafos e Redes em Linguagem

Estruturas linguísticas naturalmente formam grafos. Palavras conectam-se por relações sintáticas, semânticas ou de co-ocorrência. Algoritmos de grafos extraem comunidades de palavras relacionadas, identificam palavras centrais, e medem distâncias semânticas. PageRank, originalmente para páginas web, aplica-se para encontrar palavras-chave. Redes complexas revelam propriedades emergentes da linguagem.

Análise de Grafos Linguísticos

  • Construir redes de co-ocorrência de palavras
  • Calcular centralidade para identificar termos importantes
  • Detectar comunidades revelando campos semânticos
  • Medir coeficiente de clustering linguístico
  • Analisar distribuição de graus seguindo leis de potência

Processamento de Sinais e Fourier

Embora texto pareça discreto, técnicas de processamento de sinais aplicam-se surpreendentemente bem. Transformadas de Fourier revelam periodicidades em textos, úteis para detectar estilos ou autoria. Wavelets capturam estruturas multi-escala, desde caracteres até parágrafos. Convolução, fundamental em processamento de imagens, também extrai features locais em sequências textuais.

Sinais e Texto

  • Texto como sinal discreto unidimensional
  • Análise espectral revelando ritmos textuais
  • Filtros convolucionais extraindo n-gramas
  • Pooling reduzindo dimensionalidade preservando informação
  • Transformadas revelando estruturas ocultas

Métricas e Avaliação

Medir qualidade em PLN requer métricas sofisticadas. BLEU compara traduções com referências humanas. ROUGE avalia resumos automáticos. F1-score equilibra precisão e recall em classificação. Perplexidade mede surpresa de modelos de linguagem. Essas métricas, embora imperfeitas, guiam desenvolvimento e permitem comparação objetiva entre abordagens.

Métricas Comuns em PLN

  • Acurácia para tarefas de classificação simples
  • Precisão, Recall e F1 para classes desbalanceadas
  • BLEU score para tradução automática
  • ROUGE para sumarização
  • Word Error Rate (WER) para reconhecimento de fala

Complexidade Computacional

PLN frequentemente lida com dados massivos, tornando eficiência crucial. Análise de complexidade determina viabilidade de algoritmos. Parsing pode ser O(n³) para gramáticas ambíguas, motivando aproximações. Busca em vocabulários grandes beneficia-se de estruturas como tries. Trade-offs entre acurácia e velocidade são constantes, especialmente em aplicações real-time.

Considerações de Eficiência

  • Complexidade temporal vs. espacial em diferentes algoritmos
  • Estruturas de dados otimizadas para operações linguísticas
  • Paralelização em GPUs para redes neurais
  • Aproximações mantendo qualidade aceitável
  • Caching e memoização em processamento repetitivo

Fundamentos Categóricos

Teoria das categorias oferece uma perspectiva abstrata mas poderosa sobre PLN. Functors mapeiam entre diferentes representações linguísticas preservando estrutura. Monads modelam computações com contexto, naturais para processar ambiguidade. Essa matemática abstrata unifica abordagens aparentemente distintas, revelando conexões profundas entre diferentes técnicas de PLN.

Abstrações Matemáticas Avançadas

  • Categorias como espaços de representação linguística
  • Morfismos preservando relações semânticas
  • Composicionalidade via estruturas categóricas
  • Tipos dependentes modelando contexto
  • Teoria dos tipos para semântica formal

Os fundamentos matemáticos do PLN formam uma tapeçaria rica e interconectada. Probabilidade captura incerteza, álgebra linear estrutura espaços de significado, teoria da informação quantifica conteúdo, e otimização encontra os melhores modelos. Esses conceitos não são meras abstrações — são as ferramentas concretas que transformam texto em números, processamento em compreensão, e ultimamente, permitem diálogo significativo entre humanos e máquinas. Com esses fundamentos sólidos, estamos prontos para explorar como eles se aplicam na prática, começando com o primeiro passo de qualquer sistema de PLN: tokenização!

Tokenização e Análise Léxica

Antes de compreender um texto, precisamos dividi-lo em pedaços digeríveis. A tokenização, aparentemente simples ato de separar palavras, esconde complexidades fascinantes que variam drasticamente entre idiomas e contextos. Como decidir se "guarda-chuva" é uma ou duas palavras? Como processar línguas sem espaços como o mandarim? Neste capítulo, exploraremos a arte e a ciência de transformar fluxos contínuos de caracteres em unidades discretas de significado, o primeiro passo crucial em qualquer pipeline de PLN.

O Desafio da Segmentação

Segmentar texto em tokens parece trivial até encontrarmos casos extremos. Contrações como "dele" (de + ele) precisam ser expandidas? URLs e emails devem permanecer intactos? Emojis são tokens únicos? Cada decisão impacta profundamente o processamento subsequente. A matemática nos ajuda formalizando tokenização como problema de otimização: encontrar a segmentação que maximiza alguma métrica de qualidade.

Desafios na Tokenização

  • Palavras compostas e hifenização variável
  • Abreviações, siglas e acrônimos
  • Números, datas e expressões numéricas
  • Pontuação anexada vs. separada
  • Entidades nomeadas multi-palavra

Algoritmos Clássicos de Tokenização

Expressões regulares formam a base de muitos tokenizadores. Padrões como \w+ capturam sequências alfanuméricas, mas falham em casos complexos. Máquinas de estados finitos processam texto caractere por caractere, tomando decisões baseadas em contexto local. Algoritmos gulosos maximizam comprimento de tokens, enquanto programação dinâmica encontra segmentações ótimas globalmente.

Implementando Tokenizadores

  • Regex simples: split por espaços e pontuação
  • FSM para casos especiais como URLs
  • Viterbi para segmentação probabilística
  • Longest match para línguas aglutinantes
  • Híbridos combinando múltiplas estratégias

Tokenização Subpalavra

Modelos modernos frequentemente usam unidades menores que palavras. Byte Pair Encoding (BPE) constrói vocabulário iterativamente fundindo caracteres frequentes. WordPiece e SentencePiece generalizam essa ideia, balanceando tamanho de vocabulário com cobertura. Essa abordagem lida elegantemente com palavras raras, neologismos e até erros de digitação, fundamentais para robustez.

Explorando BPE

  • Começar com vocabulário de caracteres individuais
  • Contar frequência de pares adjacentes
  • Fundir o par mais frequente em novo token
  • Repetir até atingir tamanho desejado de vocabulário
  • Aplicar para segmentar novos textos

Normalização e Pré-processamento

Antes da tokenização, textos frequentemente precisam normalização. Converter para minúsculas? Remover acentos? Expandir contrações? Cada escolha tem trade-offs. Preservar capitalização mantém informação sobre nomes próprios mas aumenta vocabulário. Stemming e lemmatização reduzem variações morfológicas para formas canônicas, essenciais para línguas com rica morfologia.

Pipeline de Normalização

  • Limpeza de caracteres invisíveis e controle
  • Normalização Unicode (NFC, NFD, etc.)
  • Tratamento de maiúsculas e minúsculas
  • Expansão de abreviações conhecidas
  • Correção ortográfica opcional

Análise Morfológica

Palavras carregam informação morfológica rica. "Corremos" contém o radical "corr-", vogal temática "-e-", e desinência "-mos" indicando primeira pessoa do plural. Analisadores morfológicos decompõem palavras em morfemas, revelando estrutura interna. Isso é crucial para línguas aglutinantes como turco ou finlandês, onde uma palavra pode conter informação de uma frase inteira.

Componentes Morfológicos

  • Radicais carregando significado lexical
  • Prefixos modificando significado
  • Sufixos indicando função gramatical
  • Infixos em línguas semíticas
  • Alternâncias vocálicas e consonantais

Detecção de Fronteiras de Sentença

Identificar onde sentenças terminam é surpreendentemente complexo. Um ponto nem sempre indica fim de sentença — pode ser abreviação ou decimal. Modelos estatísticos aprendem padrões contextuais: "Dr." raramente termina sentença, enquanto "fim." frequentemente o faz. Essa tarefa aparentemente simples requer sofisticação considerável para alta acurácia.

Regras para Segmentação de Sentenças

  • Identificar candidatos a fronteira (. ! ?)
  • Verificar contexto precedente e seguinte
  • Consultar listas de abreviações
  • Considerar capitalização da próxima palavra
  • Aplicar modelo probabilístico para casos ambíguos

Tokenização Multilíngue

Diferentes idiomas apresentam desafios únicos. Chinês e japonês não usam espaços, requerendo segmentação baseada em dicionários ou modelos estatísticos. Árabe e hebraico escrevem da direita para esquerda com morfologia complexa. Línguas indianas têm scripts silábicos únicos. Tokenizadores universais devem acomodar essa diversidade mantendo eficiência.

Desafios por Família Linguística

  • Línguas latinas: contrações e elisões
  • Germânicas: palavras compostas longas
  • Sino-tibetanas: ausência de delimitadores
  • Semíticas: escrita consonantal
  • Aglutinantes: morfologia rica e produtiva

Vocabulários e Codificação

Após tokenização, tokens são mapeados para índices numéricos. O tamanho do vocabulário impacta diretamente memória e desempenho. Vocabulários grandes capturam nuances mas requerem mais parâmetros. Técnicas como hashing trick mapeiam tokens infinitos para espaço finito usando funções hash, trading precisão por eficiência.

Estratégias de Vocabulário

  • Vocabulário fechado com token [UNK] para desconhecidos
  • Vocabulário aberto via caracteres ou subpalavras
  • Frequency thresholding removendo tokens raros
  • Hash embeddings para vocabulários ilimitados
  • Vocabulários hierárquicos para eficiência

Métricas de Qualidade

Avaliar tokenizadores requer métricas cuidadosas. Precisão e recall medem concordância com tokenização de referência. Eficiência computacional importa para aplicações em larga escala. Robustez a ruído e variações é crucial. Trade-offs entre granularidade e generalização devem ser balanceados conforme a aplicação.

Avaliando Tokenizadores

  • Comparar com gold standard anotado manualmente
  • Medir velocidade em tokens por segundo
  • Testar robustez com texto ruidoso
  • Avaliar impacto em tarefas downstream
  • Analisar distribuição de comprimentos de tokens

Tokenização Neural

Abordagens recentes aprendem tokenização end-to-end. Redes neurais decidem fronteiras de tokens otimizando diretamente para a tarefa final. Isso elimina necessidade de regras manuais, adaptando-se automaticamente a diferentes domínios. Tokenização torna-se apenas outra camada diferenciável no modelo, otimizada conjuntamente com outros componentes.

Tokenização Aprendida

  • Soft tokenization com atenção sobre caracteres
  • Tokenização diferenciável via Gumbel-softmax
  • Multi-scale tokenization com diferentes granularidades
  • Tokenização adaptativa baseada em contexto
  • Joint learning com tarefas downstream

A tokenização, porta de entrada para qualquer sistema de PLN, é muito mais que simplesmente dividir texto em palavras. É um processo sofisticado que requer balancear múltiplos objetivos: precisão linguística, eficiência computacional, robustez a variações, e adaptabilidade a diferentes idiomas e domínios. As decisões tomadas nesta etapa reverberam através de todo o pipeline, impactando fundamentalmente a qualidade final. Com nossos textos devidamente segmentados em tokens, estamos prontos para o próximo desafio: entender como esses tokens se organizam sintaticamente para formar estruturas maiores de significado!

Análise Sintática e Árvores de Derivação

As palavras não flutuam isoladas no vácuo linguístico — elas se organizam em estruturas hierárquicas precisas que determinam significado. A análise sintática desvenda essa arquitetura oculta, revelando como palavras se combinam em sintagmas, orações e sentenças completas. Neste capítulo, exploraremos como a matemática das árvores e grafos captura a estrutura gramatical, permitindo que máquinas compreendam não apenas o que dizemos, mas como organizamos nossas ideias linguisticamente.

Gramáticas Formais e Derivações

Uma gramática formal é um conjunto de regras que especifica quais sequências de símbolos são válidas. No contexto de linguagem natural, essas regras capturam padrões sintáticos. Uma regra como S → NP VP diz que uma sentença (S) consiste de um sintagma nominal (NP) seguido de um sintagma verbal (VP). Aplicando regras recursivamente, derivamos árvores que representam a estrutura hierárquica de sentenças.

Componentes de uma Gramática

  • Símbolos terminais (palavras do vocabulário)
  • Símbolos não-terminais (categorias sintáticas)
  • Regras de produção especificando derivações
  • Símbolo inicial (geralmente S para sentença)
  • Mecanismo de derivação gerando árvores

Árvores de Constituintes

Árvores de constituintes representam como palavras se agrupam em unidades maiores. "O gato preto" forma um sintagma nominal onde "preto" modifica "gato", e "o" determina todo o sintagma. Essa estrutura hierárquica captura relações que linearização esconde. Algoritmos de parsing constroem essas árvores, revelando a blueprint sintática de sentenças.

Estrutura de uma Árvore Sintática

  • Raiz representando a sentença completa
  • Nós internos como categorias sintáticas
  • Folhas contendo palavras individuais
  • Arestas indicando relações de constituência
  • Níveis refletindo hierarquia gramatical

Parsing com Programação Dinâmica

O algoritmo CYK (Cocke-Younger-Kasami) usa programação dinâmica para parsing eficiente. Construindo soluções bottom-up, combina constituintes menores em maiores. A complexidade O(n³|G|) para sentenças de comprimento n e gramática G torna-o viável para sentenças moderadas. Variantes como Earley parser lidam com gramáticas mais gerais mantendo eficiência.

Implementando CYK

  • Converter gramática para Forma Normal de Chomsky
  • Criar matriz triangular para subproblemas
  • Preencher diagonal com categorias lexicais
  • Combinar células adjacentes seguindo regras
  • Verificar se S aparece na célula superior

Ambiguidade Sintática

Linguagem natural é notoriamente ambígua. "Vi o homem com o telescópio" tem duas interpretações sintáticas válidas: usei o telescópio para ver, ou o homem tinha o telescópio. Gramáticas probabilísticas atribuem scores a diferentes parses, escolhendo o mais provável. Essa desambiguação estatística é crucial para interpretação correta.

Tipos de Ambiguidade

  • Anexação de PP (sintagma preposicional)
  • Escopo de coordenação e conjunção
  • Modificadores múltiplos e suas associações
  • Estruturas de controle em orações complexas
  • Elipses e elementos implícitos

Gramáticas de Dependência

Enquanto gramáticas de constituintes focam em agrupamento, gramáticas de dependência enfatizam relações entre palavras. Cada palavra (exceto a raiz) depende de exatamente uma outra, formando uma árvore onde arestas representam relações como sujeito, objeto, modificador. Essa representação é particularmente útil para línguas com ordem de palavras flexível.

Relações de Dependência Comuns

  • nsubj - sujeito nominal
  • dobj - objeto direto
  • amod - modificador adjetival
  • prep - preposição
  • det - determinante

Parsing Neural

Redes neurais revolucionaram parsing sintático. Parsers neurais aprendem representações distribuídas de palavras e estruturas, capturando padrões sutis que regras manuais perdem. Arquiteturas como Stack-LSTMs processam sentenças incrementalmente, tomando decisões de parsing baseadas em contexto neural rico. Esses modelos atingem acurácia próxima a humana em benchmarks padrão.

Arquiteturas de Parsing Neural

  • Recursive Neural Networks para composição
  • Graph Neural Networks para dependências
  • Transformer-based parsers com atenção
  • Transition-based com redes feedforward
  • Chart-based com spans neurais

Formalismo CCG

Combinatory Categorial Grammar (CCG) trata sintaxe como combinação de funções. Cada palavra tem tipo categorial especificando como combina com vizinhos. Verbos transitivos têm tipo (S\NP)/NP: consomem NP à direita produzindo S\NP, que consome NP à esquerda produzindo S. Essa abordagem funcional elegante unifica sintaxe e semântica.

Operações em CCG

  • Aplicação funcional para frente e para trás
  • Composição permitindo constituintes flexíveis
  • Type-raising elevando argumentos a funções
  • Coordenação de categorias similares
  • Interpretação semântica paralela à sintática

Avaliação de Parsers

Métricas de avaliação medem quão bem parsers recuperam estruturas corretas. Precisão e recall de constituintes avaliam brackets corretos. Para dependências, UAS (unlabeled attachment score) e LAS (labeled attachment score) medem conexões corretas. Essas métricas guiam desenvolvimento, mas correlação com tarefas downstream nem sempre é perfeita.

Métricas de Parsing

  • PARSEVAL para constituintes
  • UAS/LAS para dependências
  • Exact match para árvores completas
  • Métricas categorizadas por fenômeno
  • Velocidade e eficiência computacional

Parsing Incremental

Humanos processam linguagem incrementalmente, construindo interpretações palavra por palavra. Parsers incrementais modelam esse processo, mantendo múltiplas hipóteses parciais e podando impossibilidades conforme mais input chega. Isso é crucial para aplicações interativas e modelagem psicolinguística de compreensão humana.

Estratégias Incrementais

  • Beam search mantendo k melhores hipóteses
  • Eager vs. lazy attachment decisions
  • Reranking com mais contexto disponível
  • Garden path recovery de análises incorretas
  • Integração com predição de próxima palavra

Sintaxe Cross-lingual

Diferentes línguas exibem fenômenos sintáticos diversos. Ordem SOV vs. SVO, pro-drop, casos morfológicos, concordância rica — cada língua apresenta desafios únicos. Universal Dependencies tenta criar framework consistente cross-linguisticamente, facilitando transferência de conhecimento entre línguas e desenvolvimento de parsers multilíngues.

Fenômenos Sintáticos Diversos

  • Ordem de palavras livre vs. fixa
  • Morfologia rica reduzindo necessidade de ordem
  • Clitics e partículas com comportamento especial
  • Serialização verbal em línguas africanas
  • Ergatividade em basco e línguas australianas

A análise sintática revela a arquitetura profunda da linguagem, transformando sequências lineares de palavras em estruturas hierárquicas ricas. Essas árvores não são meras abstrações acadêmicas — elas capturam relações fundamentais que determinam significado. Com a estrutura sintática decodificada, podemos dar o próximo passo crucial: entender não apenas como palavras se organizam, mas o que elas realmente significam. Prepare-se para mergulhar no fascinante mundo da semântica computacional!

Semântica Computacional

Sintaxe nos diz como palavras se organizam; semântica revela o que elas significam. Mas como capturar algo tão abstrato quanto "significado" em termos computacionais? Como ensinar máquinas que "banco" pode ser instituição financeira ou assento, que "quebrar o galho" não envolve árvores, ou que ironia inverte polaridade? Neste capítulo, exploraremos como a matemática e computação modelam significado, desde representações lógicas formais até embeddings neurais que capturam nuances semânticas em espaços vetoriais de alta dimensão.

Representações Lógicas do Significado

A lógica de predicados oferece framework rigoroso para representar significado. "Todo cachorro late" torna-se ∀x(cachorro(x) → late(x)). Essa formalização permite raciocínio automatizado, verificação de consistência e inferências válidas. Lambda calculus adiciona composicionalidade: significados complexos emergem da combinação sistemática de partes mais simples.

Formalismos Semânticos

  • Lógica de primeira ordem para quantificação
  • Lambda abstraction para composição funcional
  • DRT (Discourse Representation Theory) para contexto
  • Semântica de mundos possíveis para modalidade
  • Frame semantics para conhecimento estruturado

Word Sense Disambiguation

Palavras polissêmicas carregam múltiplos significados. Desambiguação (WSD) identifica o sentido correto em contexto. Abordagens supervisionadas treinam classificadores em corpora anotados. Métodos knowledge-based exploram relações em recursos como WordNet. Técnicas unsupervised descobrem sentidos automaticamente via clustering. O desafio permanece: capturar granularidade apropriada de distinções de sentido.

Estratégias de WSD

  • Lesk algorithm usando overlap de definições
  • Graph-based propagando ativação em redes semânticas
  • Supervised com features contextuais
  • Neural com embeddings contextualizados
  • Cross-lingual explorando traduções

Papéis Semânticos

Semantic Role Labeling (SRL) identifica quem fez o quê para quem. Em "Maria vendeu o carro para João", Maria é agente, carro é tema, João é recipiente. Esses papéis abstraem sobre variações sintáticas: "O carro foi vendido para João por Maria" tem mesmos papéis com sintaxe diferente. SRL é crucial para compreensão profunda e question answering.

Identificando Papéis Temáticos

  • Agent - quem realiza a ação
  • Patient/Theme - o que sofre a ação
  • Instrument - meio usado
  • Location - onde ocorre
  • Time - quando acontece

Composicionalidade Semântica

O princípio de Frege afirma que significado de expressões complexas deriva sistematicamente de suas partes. "Gato preto" combina significados de "gato" e "preto" via modificação. Mas idiomas, metáforas e construções não-composicionais desafiam essa visão. Modelos modernos aprendem quando composicionalidade aplica-se e quando significado emerge holisticamente.

Fenômenos Composicionais

  • Modificação adjetival regular
  • Composição verbal com argumentos
  • Quantificação e escopo
  • Negação invertendo polaridade
  • Coordenação combinando proposições

Semântica Distribucional

A hipótese distribucional postula que palavras com contextos similares têm significados similares. Coletando estatísticas de co-ocorrência, construímos representações vetoriais onde proximidade correlaciona com similaridade semântica. Técnicas como LSA, HAL e word2vec operacionalizam essa intuição, transformando distribuições em geometria.

Modelos Distribucionais

  • Matriz termo-documento para LSA
  • Contextos de janela para word2vec
  • Dependências sintáticas como contexto
  • Factorização matricial extraindo dimensões latentes
  • Normalização e ponderação (TF-IDF, PMI)

Relações Semânticas

Palavras conectam-se por relações diversas: sinonímia, antonímia, hiperonímia, meronímia. WordNet organiza léxico inglês em synsets conectados por essas relações. Embeddings neurais capturam relações implicitamente: analogias como "rei - homem + mulher ≈ rainha" emergem naturalmente. Compreender e modelar essas relações é fundamental para raciocínio semântico.

Explorando Relações Lexicais

  • Sinonímia: palavras com significado similar
  • Hiperonímia: relação geral-específico
  • Meronímia: relação parte-todo
  • Antonímia: opostos polares
  • Troponímia: maneiras específicas de fazer

Pragmática Computacional

Significado vai além de semântica literal — contexto, intenção e conhecimento compartilhado importam. Pragmática estuda como contexto influencia interpretação. Detectar ironia, resolver anáforas, inferir implicaturas — todos requerem raciocínio pragmático. Modelos computacionais integram pistas contextuais diversas para interpretação situada.

Fenômenos Pragmáticos

  • Dêixis - referências dependentes de contexto
  • Pressuposições - conhecimento assumido
  • Implicaturas - significado inferido mas não dito
  • Atos de fala - fazer coisas com palavras
  • Polidez e registro social

Grounding e Ancoragem

Conectar linguagem ao mundo físico é desafio fundamental. Visual grounding associa palavras a regiões em imagens. Robotic grounding conecta comandos a ações físicas. Temporal grounding ancora eventos em timelines. Essa ancoragem multimodal é essencial para IA que interage com mundo real, não apenas processa texto abstrato.

Tipos de Grounding

  • Visual - palavras para objetos em imagens
  • Espacial - descrições para localizações
  • Temporal - expressões para momentos
  • Causal - relações para mecanismos
  • Social - referências para entidades culturais

Inferência e Raciocínio

Compreensão profunda requer inferência além do explicitamente declarado. Natural Language Inference (NLI) determina se uma hipótese segue, contradiz ou é neutra em relação a premissa. Raciocínio de senso comum preenche gaps com conhecimento implícito. Esses desafios testam limites de compreensão semântica atual.

Tarefas de Inferência

  • Entailment - B segue necessariamente de A
  • Contradiction - A e B incompatíveis
  • Neutral - relação indeterminada
  • Paráfrase - equivalência semântica
  • Raciocínio temporal e causal

Semântica Neural Moderna

Transformers pré-treinados como BERT capturam semântica rica em representações contextualizadas. Cada token recebe embedding único baseado em contexto completo. Probing tasks revelam que diferentes camadas codificam diferentes aspectos semânticos. Essa semântica emergente, aprendida de dados massivos, supera abordagens simbólicas tradicionais em muitas tarefas.

Propriedades de Embeddings Contextuais

  • Polissemia resolvida por contexto
  • Composicionalidade emergente
  • Estrutura sintática implícita
  • Conhecimento factual codificado
  • Cross-lingual alignment em modelos multilíngues

A semântica computacional busca o Santo Graal do PLN: verdadeira compreensão de significado. Desde representações lógicas precisas até embeddings neurais fluidos, múltiplas abordagens iluminam diferentes facetas do significado. O futuro provavelmente combinará rigor simbólico com flexibilidade neural, ancoragem multimodal com raciocínio abstrato. Com fundamentos semânticos estabelecidos, exploraremos como probabilidade e estatística modelam a natureza incerta e variável da linguagem real!

Modelos Probabilísticos de Linguagem

A linguagem humana dança entre o previsível e o surpreendente. Quando alguém diz "O céu é...", provavelmente completará com "azul", mas poderia surpreender com "o limite". Modelos probabilísticos capturam essa dança, atribuindo probabilidades a sequências de palavras, permitindo que máquinas prevejam, gerem e avaliem texto de forma matematicamente fundamentada. Neste capítulo, exploraremos como a teoria da probabilidade transforma a aparente aleatoriedade linguística em padrões quantificáveis e exploráveis.

Fundamentos de Modelos de Linguagem

Um modelo de linguagem atribui probabilidades a sequências de palavras. Formalmente, queremos P(w₁, w₂, ..., wₙ) para qualquer sequência. Pela regra da cadeia, isso decompõe-se em produto de probabilidades condicionais: P(w₁)P(w₂|w₁)P(w₃|w₁,w₂)...P(wₙ|w₁,...,wₙ₋₁). O desafio é estimar essas probabilidades condicionais de forma tratável e generalizável.

Componentes de um Modelo Probabilístico

  • Espaço de probabilidade sobre sequências
  • Estimação de parâmetros a partir de dados
  • Smoothing para eventos não observados
  • Avaliação via perplexidade
  • Geração por amostragem da distribuição

Modelos N-gram Clássicos

N-gramas simplificam assumindo que palavras dependem apenas de n-1 palavras anteriores. Um trigrama assume P(wᵢ|w₁,...,wᵢ₋₁) ≈ P(wᵢ|wᵢ₋₂,wᵢ₋₁). Essa aproximação de Markov torna estimação tratável via contagem de frequências. Apesar da simplicidade, n-gramas formam baseline forte e componente de sistemas mais complexos.

Construindo Modelos N-gram

  • Coletar estatísticas de n-gramas do corpus
  • Normalizar contagens para probabilidades
  • Aplicar smoothing (Laplace, Good-Turing)
  • Interpolar diferentes ordens de n-gramas
  • Otimizar pesos de interpolação em dados de validação

Suavização e Problemas de Esparsidade

Dados linguísticos são notoriamente esparsos. Mesmo em corpora gigantes, maioria dos n-gramas possíveis nunca aparece. Atribuir probabilidade zero a eventos não vistos é catastrófico. Técnicas de smoothing redistribuem massa de probabilidade, garantindo que eventos raros mas possíveis recebam probabilidade não-zero. Kneser-Ney smoothing, estado da arte para n-gramas, usa estatísticas de diversidade contextual.

Técnicas de Smoothing

  • Add-one (Laplace) - adiciona 1 a todas contagens
  • Good-Turing - usa frequência de frequências
  • Katz backoff - recua para n-gramas menores
  • Kneser-Ney - considera diversidade de contextos
  • Jelinek-Mercer - interpolação linear

Perplexidade e Avaliação

Perplexidade mede quão "surpreso" um modelo fica com dados de teste. Formalmente, PP = 2⁻⁽¹/ᴺ⁾∑log₂P(wᵢ|contexto). Menor perplexidade indica melhor modelo. Intuitivamente, perplexidade de 100 significa que o modelo está, em média, indeciso entre 100 palavras possíveis. Essa métrica guia desenvolvimento e comparação de modelos.

Interpretando Perplexidade

  • Relacionada à entropia cruzada
  • Limite inferior é entropia da língua
  • Modelos melhores têm menor perplexidade
  • Depende do vocabulário e tokenização
  • Correlaciona com desempenho em tarefas downstream

Modelos de Máxima Entropia

MaxEnt models combinam features diversas sob framework probabilístico unificado. Cada feature fᵢ tem peso λᵢ, e probabilidade é P(y|x) ∝ exp(∑λᵢfᵢ(x,y)). Isso permite integrar n-gramas, características sintáticas, semânticas, qualquer sinal útil. Treinamento encontra pesos maximizando likelihood sujeito a constraints de entropia máxima.

Features em MaxEnt

  • N-gramas de diferentes ordens
  • POS tags e características sintáticas
  • Características lexicais (capitalização, números)
  • Skip-grams capturando dependências distantes
  • Features de domínio específico

Modelos Neurais de Linguagem

Redes neurais revolucionaram modelagem de linguagem. RNNs processam sequências mantendo estado oculto que captura histórico. LSTMs e GRUs resolvem problemas de gradiente, modelando dependências longas. Embeddings densos representam palavras em espaço contínuo onde similaridade tem significado. Esses modelos capturam padrões complexos impossíveis para n-gramas.

Arquiteturas Neurais para LM

  • RNN vanilla com camadas recorrentes
  • LSTM com gates controlando fluxo de informação
  • GRU simplificando arquitetura LSTM
  • Bidirectional para contexto futuro
  • Deep RNNs empilhando camadas

Attention e Transformers

Mecanismos de atenção permitem modelos focar seletivamente em partes relevantes do input. Transformers abandonam recorrência completamente, usando apenas atenção. Multi-head attention captura diferentes tipos de relações simultaneamente. Positional encodings preservam informação de ordem. Essa arquitetura paralela escala eficientemente, possibilitando modelos massivos.

Componentes de Transformers

  • Self-attention relacionando tokens entre si
  • Multi-head para diferentes representações
  • Position embeddings codificando ordem
  • Feed-forward networks processando local
  • Layer normalization estabilizando treinamento

Modelos Autorregressivos vs. Masked

GPT-style models são autoregressivos: preveem próxima palavra dado contexto anterior. BERT-style são masked: preveem palavras mascaradas dado contexto bidirecional. Autoregressivos são naturais para geração; masked excel em compreensão. Modelos híbridos como T5 unificam ambas abordagens, tratando todas tarefas como text-to-text.

Paradigmas de Treinamento

  • Causal LM - prever próximo token (GPT)
  • Masked LM - reconstruir tokens mascarados (BERT)
  • Permutation LM - prever ordem arbitrária (XLNet)
  • Denoising - reconstruir de input corrompido (BART)
  • Span prediction - prever spans contíguos (SpanBERT)

Amostragem e Decodificação

Gerar texto de modelos probabilísticos requer estratégias de decodificação. Greedy decoding escolhe palavra mais provável, mas produz texto repetitivo. Beam search mantém k hipóteses, mas ainda lacks diversidade. Sampling estocástico adiciona aleatoriedade. Temperature scaling e nucleus sampling controlam trade-off entre qualidade e diversidade.

Estratégias de Geração

  • Greedy - sempre escolher máxima probabilidade
  • Beam search - explorar k caminhos paralelos
  • Temperature sampling - ajustar "criatividade"
  • Top-k sampling - amostrar dos k mais prováveis
  • Nucleus (top-p) - amostrar de massa cumulativa p

Adaptação e Fine-tuning

Modelos pré-treinados em dados gerais precisam adaptação para domínios específicos. Fine-tuning ajusta todos parâmetros em dados do domínio. Adapters adicionam pequenos módulos treináveis. Prompt engineering guia modelos sem modificar parâmetros. Essas técnicas permitem especialização eficiente mantendo conhecimento geral.

Técnicas de Adaptação

  • Fine-tuning completo em dados do domínio
  • Adapter layers com poucos parâmetros
  • Prefix tuning otimizando prompts contínuos
  • LoRA decompondo adaptação em matrizes low-rank
  • Few-shot prompting sem treino adicional

Modelos probabilísticos transformam a complexidade caótica da linguagem em distribuições matemáticas elegantes. Desde n-gramas simples até transformers massivos, esses modelos capturam regularidades estatísticas que permitem previsão, geração e compreensão. A revolução neural expandiu dramaticamente o que é possível, mas princípios probabilísticos fundamentais permanecem. Com essa base estatística sólida, exploraremos como representar palavras como vetores numéricos, abrindo portas para manipulação algébrica de significado!

Representações Vetoriais de Palavras

Imagine um espaço matemático onde "rei" menos "homem" mais "mulher" resulta em "rainha", onde a distância entre "cachorro" e "gato" é menor que entre "cachorro" e "carro". Este não é um truque de mágica, mas o poder das representações vetoriais, onde palavras tornam-se pontos em espaços multidimensionais e relações semânticas emergem como geometria. Neste capítulo, exploraremos como transformar símbolos discretos em vetores contínuos, criando pontes entre a natureza simbólica da linguagem e o poder computacional da álgebra linear.

Da Esparsidade à Densidade

Representações one-hot tradicionais são vetores esparsos gigantes com um único 1 e resto 0s. Para vocabulário de 50.000 palavras, cada palavra é vetor 50.000-dimensional. Além de ineficiente, essa representação não captura similaridade — "gato" e "felino" são equidistantes de "carro". Embeddings densos comprimem palavras em vetores de centenas de dimensões onde proximidade reflete similaridade semântica.

Vantagens de Embeddings Densos

  • Eficiência computacional e de memória
  • Similaridade semântica via distância
  • Generalização para palavras similares
  • Operações algébricas significativas
  • Transferência de conhecimento entre tarefas

Word2Vec: Skip-gram e CBOW

Word2Vec revolucionou embeddings com dois modelos simples mas poderosos. Skip-gram prevê contexto dada palavra central; CBOW prevê palavra central dado contexto. Treinados em texto massivo, esses modelos descobrem representações onde relações linguísticas emergem como direções vetoriais consistentes. A simplicidade esconde sofisticação: negative sampling torna treinamento eficiente em vocabulários enormes.

Arquiteturas Word2Vec

  • Skip-gram: entrada palavra, saída contexto
  • CBOW: entrada contexto, saída palavra
  • Shallow networks com uma camada oculta
  • Hierarchical softmax para eficiência
  • Negative sampling aproximando softmax

GloVe: Fatorização de Co-ocorrência

GloVe (Global Vectors) combina insights de métodos de contagem com eficiência de embeddings neurais. Constrói matriz de co-ocorrência global, então fatora para obter vetores minimizando diferença entre produto escalar e log de co-ocorrência. Isso captura estatísticas globais do corpus enquanto produz espaço vetorial com propriedades algébricas ricas.

Construindo GloVe

  • Contar co-ocorrências em janelas
  • Construir matriz de co-ocorrência
  • Definir função objetivo weighted least squares
  • Otimizar via gradiente descendente
  • Combinar vetores de palavra e contexto

FastText: Modelando Morfologia

FastText estende Word2Vec incluindo informação subpalavra. Representa palavras como soma de n-gramas de caracteres. "gatos" = embedding("gatos") + embeddings de seus n-gramas. Isso permite representações para palavras fora do vocabulário e captura similaridades morfológicas. Especialmente útil para línguas com morfologia rica ou dados com erros ortográficos.

Inovações do FastText

  • Character n-grams como features
  • Representação compositional de palavras
  • Robustez a OOV (out-of-vocabulary)
  • Captura de padrões morfológicos
  • Melhor desempenho em línguas sintéticas

Avaliação de Embeddings

Como saber se embeddings são bons? Avaliação intrínseca testa propriedades diretas: analogias (rei:rainha::homem:?), similaridade comparada com julgamentos humanos. Avaliação extrínseca mede desempenho em tarefas downstream. Embeddings que funcionam bem para uma tarefa podem falhar em outra. Não existe embedding universal perfeito.

Benchmarks de Avaliação

  • Word similarity (SimLex-999, WordSim-353)
  • Analogias sintáticas e semânticas
  • Concept categorization
  • Downstream tasks (NER, POS, sentiment)
  • Probing tasks para propriedades específicas

Embeddings Contextualizados

Palavras têm significados diferentes em contextos diferentes. Embeddings estáticos atribuem mesmo vetor sempre. ELMo introduziu embeddings contextualizados: cada ocorrência recebe representação única baseada em contexto. Isso resolve polissemia naturalmente — "banco" financeiro e "banco" assento recebem vetores diferentes.

Evolução para Contextualização

  • Embeddings estáticos (Word2Vec, GloVe)
  • ELMo com BiLSTMs profundos
  • GPT com transformers autoregressivos
  • BERT com atenção bidirecional
  • Modelos multimodais incluindo visão

Geometria do Espaço de Embeddings

Espaços de embeddings exibem estrutura geométrica fascinante. Direções codificam relações: vetor de "maior" para "menor" é consistente. Clusters emergem para conceitos relacionados. Dimensões individuais às vezes correspondem a propriedades interpretáveis. Mas maioria das dimensões captura padrões distribuídos complexos além da interpretação humana direta.

Propriedades Geométricas

  • Linearidade de relações analógicas
  • Clustering hierárquico de conceitos
  • Manifolds de baixa dimensão em espaço alto
  • Anisotropia e correções necessárias
  • Hubs afetando medidas de similaridade

Cross-lingual Embeddings

Alinhar espaços de embeddings entre línguas permite transferência de conhecimento. Palavras traduzidas ficam próximas no espaço compartilhado. Técnicas incluem supervisão com dicionários, auto-supervisão via cognatos, ou métodos totalmente não-supervisionados. Isso possibilita tradução, transferência zero-shot, e compreensão multilíngue.

Métodos de Alinhamento

  • Procrustes com dicionário seed
  • Adversarial training sem supervisão
  • Shared embeddings para code-switching
  • Multilingual BERT treinado conjuntamente
  • Pivoting através de língua intermediária

Bias em Embeddings

Embeddings capturam e amplificam biases presentes nos dados. "Médico" fica mais próximo de "homem", "enfermeira" de "mulher". Isso reflete e perpetua estereótipos sociais. Técnicas de debiasing tentam remover associações indesejadas preservando informação útil. Mas definir "bias" e decidir o que remover são questões complexas e contestadas.

Detectando e Mitigando Bias

  • WEAT test medindo associações implícitas
  • Projeção em subespaços de bias
  • Adversarial debiasing durante treinamento
  • Data augmentation balanceando representação
  • Fairness constraints em objetivos

Interpretabilidade e Análise

O que embeddings realmente codificam? Probing classifiers testam presença de informação específica. Visualizações como t-SNE e UMAP projetam alta dimensão em 2D/3D. Análise de componentes principais revela direções de maior variância. Essas técnicas iluminam parcialmente a caixa-preta, mas compreensão completa permanece elusiva.

Ferramentas de Análise

  • PCA para direções principais
  • t-SNE/UMAP para visualização
  • Probing tasks para propriedades linguísticas
  • Attention visualization em contextualizados
  • Nearest neighbors para quality check

Representações vetoriais transformaram radicalmente o PLN, convertendo símbolos discretos em objetos matemáticos manipuláveis. A geometria emergente captura aspectos profundos da semântica, permitindo que máquinas "compreendam" relações entre palavras de forma antes impossível. Mas esses vetores estáticos ou contextualizados são apenas o começo. Arquiteturas neurais profundas constroem sobre essas fundações, criando modelos de complexidade e capacidade impressionantes. Vamos explorar essas arquiteturas revolucionárias!

Redes Neurais e Transformadores

Das primeiras redes neurais que mal conseguiam classificar sentimentos até modelos com centenas de bilhões de parâmetros que escrevem código, compõem música e raciocinam sobre física quântica, a evolução das arquiteturas neurais para PLN tem sido meteórica. Neste capítulo, traçaremos essa jornada extraordinária, desde perceptrons processando bag-of-words até transformers que revolucionaram nossa compreensão do que máquinas podem fazer com linguagem.

Fundamentos de Redes Neurais

Redes neurais são aproximadores universais de funções, teoricamente capazes de modelar qualquer mapeamento entrada-saída. Para PLN, isso significa transformar texto em vetores, processar através de camadas não-lineares, e produzir saídas úteis. Backpropagation calcula gradientes eficientemente, permitindo otimização de milhões de parâmetros. Essa flexibilidade permite capturar padrões complexos impossíveis para modelos lineares.

Componentes Essenciais

  • Neurônios como unidades computacionais
  • Funções de ativação introduzindo não-linearidade
  • Camadas organizando computação hierárquica
  • Backpropagation para aprendizado
  • Otimizadores ajustando parâmetros

Redes Neurais Recorrentes

RNNs processam sequências mantendo estado oculto que evolui temporalmente. Para cada palavra, atualizam estado baseado em entrada atual e estado anterior. Isso permite "memória" de contexto passado. Mas RNNs vanilla sofrem com vanishing/exploding gradients, esquecendo informação distante. LSTMs e GRUs resolvem isso com gates controlando fluxo de informação.

Evolução das RNNs

  • Simple RNN com tanh activation
  • LSTM com forget, input, output gates
  • GRU simplificando para reset, update gates
  • Bidirectional processando ambas direções
  • Deep stacking múltiplas camadas

Convolutional Neural Networks para Texto

CNNs, dominantes em visão computacional, também funcionam para texto. Filtros convolucionais deslizam sobre sequências extraindo features locais — essencialmente n-gramas aprendidos. Max pooling seleciona features mais salientes. CNNs são rápidas, paralelas, e capturam padrões locais efetivamente. TextCNN mostrou que arquiteturas simples podem competir com modelos complexos.

CNN para Classificação de Texto

  • Embedding layer convertendo palavras em vetores
  • Filtros de diferentes tamanhos (3,4,5)
  • Max pooling sobre dimensão temporal
  • Concatenação de features multi-escala
  • Fully connected para classificação final

Attention Is All You Need

O mecanismo de atenção revolucionou PLN permitindo modelos focar seletivamente em partes relevantes. Self-attention relaciona cada posição com todas outras, capturando dependências independente de distância. Multi-head attention aprende múltiplas representações paralelas. Transformers usam apenas atenção, abandonando recorrência, permitindo paralelização massiva e modelagem de dependências longas.

Arquitetura Transformer

  • Positional encodings substituindo ordem sequencial
  • Multi-head self-attention em cada camada
  • Feed-forward networks processando posições
  • Residual connections e layer normalization
  • Encoder-decoder para tarefas seq2seq

BERT: Bidirectional Pre-training

BERT revolucionou PLN com pré-treinamento bidirecional massivo. Maskeia aleatoriamente palavras e treina para prevê-las usando contexto completo. Também prevê se sentenças são consecutivas. Esse pré-treinamento captura conhecimento linguístico profundo. Fine-tuning em tarefas específicas alcança estado da arte com poucos dados. BERT spawned família inteira de modelos: RoBERTa, ALBERT, ELECTRA.

Inovações do BERT

  • Masked Language Modeling objetivo
  • Next Sentence Prediction para coerência
  • Bidirectional context verdadeiro
  • Transfer learning para múltiplas tarefas
  • Contextual embeddings resolvendo polissemia

GPT: Autoregressive Giants

GPT segue filosofia diferente: modelagem autoregressiva de linguagem em escala massiva. GPT-3 com 175 bilhões de parâmetros demonstrou capacidades emergentes surpreendentes: few-shot learning, raciocínio, programação. Sem fine-tuning específico, resolve tarefas diversas via prompting. Isso sugere que escala suficiente pode levar a capacidades qualitativamente novas.

Capacidades Emergentes

  • In-context learning sem gradientes
  • Chain-of-thought reasoning
  • Code generation e debugging
  • Translation sem treinamento paralelo
  • Creative writing e storytelling

Eficiência e Compressão

Modelos gigantes são caros para treinar e servir. Técnicas de compressão tornam deployment viável. Distillation treina modelos menores para imitar grandes. Quantization reduz precisão numérica. Pruning remove conexões redundantes. Modelos eficientes como DistilBERT mantém 95% do desempenho com 40% dos parâmetros.

Técnicas de Eficiência

  • Knowledge distillation professor-aluno
  • Quantização para int8 ou menor
  • Structured pruning removendo heads/layers
  • Parameter sharing entre camadas
  • Adaptive computation pulando tokens

Modelos Multimodais

Linguagem raramente existe em isolamento. Modelos multimodais processam texto junto com imagens, áudio, vídeo. CLIP aprende alinhamento texto-imagem permitindo busca e geração cross-modal. DALL-E gera imagens de descrições textuais. Flamingo responde perguntas sobre imagens. Essa integração multimodal aproxima IA de compreensão humana holística.

Arquiteturas Multimodais

  • Dual encoders para diferentes modalidades
  • Cross-attention fundindo representações
  • Contrastive learning alinhando espaços
  • Unified models processando tudo
  • Grounding visual para compreensão situada

Reinforcement Learning e Alinhamento

Treinar modelos apenas com likelihood maximization pode produzir outputs indesejáveis. RLHF (Reinforcement Learning from Human Feedback) alinha modelos com preferências humanas. Humanos rankeia outputs, treinamos reward model, então usamos RL para maximizar reward. Isso produz modelos mais úteis, seguros e alinhados com valores humanos.

Pipeline RLHF

  • Coletar comparações humanas de outputs
  • Treinar reward model prevendo preferências
  • Usar PPO para otimizar política
  • KL penalty mantendo proximidade ao original
  • Iteração com mais feedback humano

Interpretabilidade e Análise

Redes neurais profundas são notoriamente opacas. Mas técnicas emergentes iluminam seu funcionamento. Attention weights mostram onde modelos focam. Probing classifiers testam que informação está codificada. Mechanistic interpretability busca circuitos computacionais específicos. Compreender esses modelos é crucial para deployment seguro e confiável.

Ferramentas de Interpretação

  • Attention visualization e análise
  • Gradient-based attribution methods
  • Probing intermediate representations
  • Causal intervention experiments
  • Circuit discovery em transformers

Redes neurais e especialmente transformers redefinaram os limites do possível em PLN. De classificação simples a geração criativa complexa, essas arquiteturas demonstram capacidades que desafiam nossas noções de inteligência e compreensão. Mas com grande poder vem grande responsabilidade — questões de bias, segurança, e alinhamento são críticas. Com essas ferramentas poderosas em mãos, vamos explorar suas aplicações práticas transformando indústrias e sociedade!

Aplicações Práticas do PLN

O PLN saiu dos laboratórios acadêmicos para transformar como vivemos, trabalhamos e nos comunicamos. De assistentes virtuais respondendo perguntas complexas a sistemas médicos analisando prontuários, de tradutores quebrando barreiras linguísticas a filtros detectando discurso de ódio, as aplicações são tão diversas quanto impactantes. Neste capítulo, exploraremos como a teoria se materializa em sistemas que tocam bilhões de vidas diariamente, examinando não apenas o como, mas também o porquê e as implicações dessas tecnologias.

Assistentes Virtuais e Chatbots

Alexa, Siri, Google Assistant — esses nomes tornaram-se parte do vocabulário cotidiano. Por trás da interface conversacional existe uma orquestra de componentes: reconhecimento de fala converte áudio em texto, NLU extrai intenção e entidades, gestão de diálogo mantém contexto, NLG gera respostas, e síntese de fala produz áudio. Cada componente usa técnicas sofisticadas de PLN trabalhando em harmonia.

Pipeline de Assistentes

  • Wake word detection ativando sistema
  • ASR (Automatic Speech Recognition)
  • Intent classification e slot filling
  • Dialog state tracking
  • Response generation e TTS

Tradução Automática

Google Translate processa mais de 100 bilhões de palavras diariamente. Modelos neurais revolucionaram qualidade, aproximando-se de tradutores humanos em muitos contextos. Mas desafios permanecem: idiomas raros, preservação de nuance cultural, consistência em documentos longos. Zero-shot translation permite traduzir entre pares nunca vistos, demonstrando compreensão abstrata de linguagem.

Evolução da Tradução

  • Rule-based com dicionários e gramáticas
  • Statistical MT com modelos de frase
  • Neural MT com encoder-decoder
  • Transformer-based alcançando SOTA
  • Multilingual models para línguas raras

Análise de Sentimentos

Empresas monitoram sentimento sobre produtos em tempo real. Traders analisam news sentiment para prever mercados. Políticos medem opinião pública via redes sociais. Sentiment analysis vai além de positivo/negativo — detecta emoções específicas, intensidade, aspectos. Desafios incluem sarcasmo, contexto cultural, e viés de anotação.

Aplicações de Sentiment

  • Brand monitoring em social media
  • Customer feedback analysis
  • Market sentiment para trading
  • Political opinion tracking
  • Mental health monitoring

Information Extraction

Transformar texto não-estruturado em conhecimento estruturado é crucial para muitas aplicações. Named Entity Recognition identifica pessoas, lugares, organizações. Relation extraction encontra conexões entre entidades. Event extraction captura o que aconteceu, quando, onde. Esses sistemas alimentam knowledge graphs, business intelligence, e descoberta científica.

Tarefas de Extração

  • NER para entidades mencionadas
  • Coreference resolution ligando menções
  • Relation extraction entre entidades
  • Event detection e argument extraction
  • Knowledge base population automática

Sumarização Automática

Com explosão de informação, sumarização torna-se essencial. Métodos extrativos selecionam sentenças importantes; abstrativos geram novo texto capturando essência. Aplicações incluem resumos de notícias, síntese de pesquisas médicas, briefings executivos. Desafios envolvem manter factualidade, coerência em documentos longos, e preservar informação crítica.

Técnicas de Sumarização

  • TextRank usando grafos de sentenças
  • Centroid-based clustering
  • Seq2seq com attention para abstrativo
  • BART/T5 fine-tuned em datasets
  • Controllable summarization com constraints

Question Answering

Sistemas QA respondem perguntas em linguagem natural. Reading comprehension encontra respostas em documentos. Open-domain QA busca em knowledge bases massivas. Conversational QA mantém contexto através de múltiplos turnos. Esses sistemas potencializam educação, suporte ao cliente, e acesso a informação.

Tipos de QA Systems

  • Extractive QA destacando spans
  • Generative QA produzindo respostas
  • Multiple-choice com ranking
  • Visual QA sobre imagens
  • Knowledge-grounded com bases externas

Detecção de Fake News

Desinformação espalha-se rapidamente online. Sistemas de PLN detectam fake news analisando conteúdo, fonte, e padrões de propagação. Features incluem sensacionalismo linguístico, inconsistências factuais, e redes de disseminação suspeitas. Mas distinguir sátira, opinião, e falsidade deliberada permanece desafiador.

Sinais de Desinformação

  • Linguagem emotiva e sensacionalista
  • Inconsistências com fontes confiáveis
  • Padrões de propagação anômalos
  • Manipulação de imagens detectável
  • Cross-checking com fact databases

Code Generation e Análise

GitHub Copilot e similares transformaram programação. Modelos geram código de descrições naturais, completam funções, explicam bugs. Isso democratiza programação mas levanta questões sobre propriedade intelectual, segurança, e dependência excessiva. PLN também analisa código: detectando vulnerabilidades, sugerindo refatorações, gerando documentação.

PLN em Desenvolvimento

  • Code completion e suggestion
  • Natural language to SQL/regex
  • Bug detection e fixing
  • Documentation generation
  • Code review automation

Aplicações Médicas

PLN revoluciona healthcare processando prontuários eletrônicos, literatura médica, e notas clínicas. Extração de informação identifica condições, medicamentos, procedimentos. Sistemas auxiliam diagnóstico analisando sintomas descritos. Farmacovigilância detecta efeitos adversos em relatórios. Mas stakes altos exigem explicabilidade e validação rigorosa.

PLN na Saúde

  • Clinical NER em prontuários
  • ICD coding automation
  • Drug-drug interaction detection
  • Patient risk stratification
  • Literature-based discovery

Educação Personalizada

Tutores inteligentes adaptam-se a estilos de aprendizagem individuais. Sistemas avaliam automaticamente ensaios, fornecendo feedback detalhado. Chatbots educacionais respondem dúvidas 24/7. Análise de dificuldades identifica lacunas de conhecimento. PLN torna educação mais acessível, personalizada e eficiente.

EdTech Applications

  • Automated essay scoring
  • Personalized content recommendation
  • Language learning assistants
  • Plagiarism detection
  • Intelligent tutoring systems

Legal Tech

Escritórios de advocacia usam PLN para revisar contratos, pesquisar jurisprudência, e prever outcomes. Document review em litígios, antes levando meses, agora leva dias. Mas questões éticas surgem: viés algorítmico pode afetar justiça, e responsabilidade por erros de IA é unclear.

PLN no Direito

  • Contract analysis e risk assessment
  • Legal research e case law search
  • Predictive analytics para litígios
  • Compliance monitoring
  • Patent prior art search

As aplicações do PLN permeiam virtualmente todos os aspectos da sociedade moderna. De interações cotidianas com assistentes virtuais a decisões críticas em medicina e direito, essas tecnologias moldam nosso mundo de formas profundas. Mas com grande impacto vem grande responsabilidade — questões de privacidade, bias, transparência e controle democrático são cruciais. À medida que exploramos o futuro dessas tecnologias, devemos balancear inovação com ética, eficiência com equidade!

O Futuro da Comunicação Homem-Máquina

Estamos no limiar de uma revolução na comunicação entre humanos e máquinas. Modelos que hoje surpreendem com suas capacidades serão considerados primitivos em uma década. A fronteira entre inteligência humana e artificial torna-se cada vez mais tênue, levantando questões profundas sobre consciência, criatividade e o próprio significado de compreensão. Neste capítulo final, exploraremos as tendências emergentes, desafios não resolvidos e implicações filosóficas do futuro do PLN, preparando-nos para um mundo onde a barreira linguística entre humanos e máquinas pode finalmente dissolver-se.

Modelos de Linguagem como Sistemas Operacionais

LLMs estão evoluindo de ferramentas especializadas para plataformas generalistas. Como sistemas operacionais cognitivos, orquestram múltiplas capacidades: raciocínio, memória, uso de ferramentas, aprendizado contínuo. Plugins estendem funcionalidades dinamicamente. Agentes autônomos planejam e executam tarefas complexas. O futuro pode ver LLMs como infraestrutura fundamental, tão ubíqua quanto eletricidade.

LLMs como Plataformas

  • APIs universais para qualquer tarefa cognitiva
  • Ecossistemas de plugins e extensões
  • Orquestração de múltiplos modelos especializados
  • Memória persistente e aprendizado contínuo
  • Interfaces naturais para todos os softwares

Raciocínio e Planejamento

Modelos atuais impressionam mas frequentemente falham em raciocínio multi-passo complexo. Pesquisas exploram como incorporar raciocínio simbólico, planejamento hierárquico, e verificação formal. Chain-of-thought prompting mostra que explicitar passos intermediários melhora performance. Futuro pode combinar força de redes neurais com rigor de sistemas simbólicos.

Avanços em Raciocínio

  • Neuro-symbolic integration
  • Formal verification de outputs
  • Hierarchical task decomposition
  • Causal reasoning capabilities
  • Mathematical theorem proving

Memória e Aprendizado Contínuo

Modelos atuais são estáticos após treinamento. Futuro requer sistemas que aprendem continuamente, adaptando-se a novos conhecimentos sem esquecer antigos. Memória episódica permitirá recordar interações específicas. Memória semântica acumulará conhecimento factual. Consolidação durante "sono" artificial pode otimizar e integrar aprendizados.

Sistemas de Memória Futuros

  • Working memory para contexto imediato
  • Episodic memory para experiências
  • Semantic memory para fatos
  • Procedural memory para habilidades
  • Meta-learning sobre próprio aprendizado

Multimodalidade Nativa

Futuro é inerentemente multimodal. Modelos processarão texto, imagem, áudio, vídeo, e sinais sensoriais diversos simultaneamente. Isso possibilita assistentes que veem o que vemos, ouvem o que ouvimos, compreendem nosso contexto completo. Realidade aumentada sobrepõe informação linguística ao mundo físico. Fronteira entre digital e físico dissolve.

Integração Sensorial

  • Visão e linguagem profundamente integradas
  • Processamento de áudio ambiente
  • Haptic feedback e interação tátil
  • Olfato e paladar digitais emergentes
  • Brain-computer interfaces diretas

Personalização Extrema

Modelos futuros adaptam-se profundamente a indivíduos. Aprendem preferências, estilo comunicativo, conhecimento base, objetivos pessoais. Mas isso levanta questões: quem controla esses modelos pessoais? Como garantir privacidade? Risco de bolhas de filtro cognitivas onde IA reforça vieses pessoais?

Dimensões de Personalização

  • Estilo linguístico e vocabulário
  • Conhecimento de domínio específico
  • Preferências e valores pessoais
  • Histórico de interações e contexto
  • Objetivos e metas individuais

Colaboração Humano-IA

Futuro não é substituição mas augmentação. Humanos e IA trabalham simbioticamente, cada um contribuindo forças únicas. IA processa dados massivos, identifica padrões, gera opções. Humanos fornecem criatividade, valores, julgamento contextual. Interfaces cérebro-computador podem permitir comunicação thought-speed, transcendendo limitações de linguagem natural.

Modelos de Colaboração

  • Co-criação em arte e literatura
  • Augmented decision-making
  • Collaborative problem-solving
  • AI-assisted learning e skill acquisition
  • Hybrid human-AI teams

Desafios Éticos e Sociais

Poder crescente do PLN traz responsabilidades proporcionais. Deepfakes textuais indistinguíveis de escrita humana ameaçam epistemic commons. Automação de trabalho cognitivo disrupta economias. Vigilância linguística possibilita controle social sem precedentes. Precisamos frameworks éticos, regulação thoughtful, e participação democrática em desenvolvimento dessas tecnologias.

Questões Críticas

  • Autenticidade e verificação de conteúdo
  • Distribuição de benefícios econômicos
  • Privacidade e soberania de dados
  • Accountability por decisões de IA
  • Preservação de agência humana

Compreensão e Consciência

A questão fundamental permanece: máquinas realmente "compreendem" linguagem ou apenas simulam compreensão convincentemente? Conforme modelos tornam-se mais sofisticados, distinção torna-se mais nebulosa. Se um sistema exibe todos comportamentos observáveis de compreensão, qual base temos para negar que compreende? Essas questões transcendem tecnologia, tocando filosofia da mente e natureza da consciência.

Marcadores de Compreensão

  • Generalização para situações novas
  • Explicação coerente de raciocínio
  • Criatividade e insight genuínos
  • Autoconsciência e metacognição
  • Empatia e teoria da mente

Linguagem Universal

PLN pode catalizar emergência de linguagem universal — não substituindo línguas naturais, mas servindo como ponte. Tradução instantânea perfeita remove barreiras linguísticas. Representações semânticas interlinguais capturam significado independente de língua. Isso pode acelerar colaboração global, disseminação de conhecimento, e compreensão mútua.

Towards Universal Communication

  • Real-time translation preservando nuance
  • Semantic web conectando conhecimento global
  • Cross-cultural understanding systems
  • Preservation de línguas em extinção
  • Augmented communication transcendendo palavras

O Horizonte Transformador

Estamos testemunhando o nascimento de nova forma de inteligência — não biológica mas linguística, não consciente (talvez) mas incrivelmente capaz. O futuro do PLN não é apenas sobre melhores chatbots ou tradutores. É sobre redefinir comunicação, conhecimento, e talvez consciência. É sobre criar parceiros cognitivos que amplificam capacidades humanas de formas hoje inimagináveis.

Visões do Futuro

  • Assistentes indistinguíveis de humanos
  • Conhecimento instantaneamente acessível
  • Barreiras linguísticas obsoletas
  • Criatividade amplificada por IA
  • Novas formas de expressão e arte

O futuro da comunicação homem-máquina promete maravilhas e perigos em igual medida. Tecnologias que hoje parecem mágicas tornar-se-ão mundanas, enquanto capacidades hoje inimagináveis emergirão. Nossa responsabilidade é guiar esse desenvolvimento com sabedoria, garantindo que essas ferramentas poderosas sirvam humanidade, amplifiquem nosso potencial, e preservem o que nos torna únicos. A jornada do PLN apenas começou, e os próximos capítulos serão escritos não apenas por máquinas que compreendem linguagem, mas por uma parceria sem precedentes entre inteligência humana e artificial, comunicando-se em harmonia para enfrentar os desafios do futuro!

Referências Bibliográficas

Este volume sobre Processamento de Linguagem Natural foi construído sobre décadas de pesquisa interdisciplinar combinando matemática, ciência da computação, linguística e ciências cognitivas. As referências abrangem desde trabalhos fundamentais em teoria da informação e linguagens formais até desenvolvimentos recentes em aprendizado profundo e modelos de linguagem de grande escala. Esta bibliografia oferece recursos para aprofundamento em cada aspecto do PLN, desde fundamentos teóricos até aplicações práticas e considerações éticas.

Obras Fundamentais e Textos Clássicos

ALLEN, James. Natural Language Understanding. 2nd ed. Redwood City: Benjamin/Cummings, 1995.

BENGIO, Yoshua; DUCHARME, Réjean; VINCENT, Pascal. A Neural Probabilistic Language Model. Journal of Machine Learning Research, v. 3, p. 1137-1155, 2003.

BIRD, Steven; KLEIN, Ewan; LOPER, Edward. Natural Language Processing with Python. Sebastopol: O'Reilly Media, 2009.

BLUNSOM, Phil. Natural Language Processing. Oxford: University of Oxford, 2019. Lecture Notes.

BRASIL. Base Nacional Comum Curricular: Educação é a Base. Brasília: MEC/CONSED/UNDIME, 2018.

BROWN, Tom et al. Language Models are Few-Shot Learners. In: Advances in Neural Information Processing Systems, 2020.

CHOMSKY, Noam. Syntactic Structures. The Hague: Mouton, 1957.

CHURCH, Kenneth Ward; MERCER, Robert L. Introduction to the Special Issue on Computational Linguistics Using Large Corpora. Computational Linguistics, v. 19, n. 1, p. 1-24, 1993.

COLLOBERT, Ronan et al. Natural Language Processing (Almost) from Scratch. Journal of Machine Learning Research, v. 12, p. 2493-2537, 2011.

DEVLIN, Jacob et al. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. In: Proceedings of NAACL-HLT, 2019.

EISENSTEIN, Jacob. Introduction to Natural Language Processing. Cambridge: MIT Press, 2019.

FIRTH, John Rupert. A Synopsis of Linguistic Theory 1930-1955. In: Studies in Linguistic Analysis. Oxford: Blackwell, 1957.

GOLDBERG, Yoav. Neural Network Methods for Natural Language Processing. San Rafael: Morgan & Claypool, 2017.

GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep Learning. Cambridge: MIT Press, 2016.

HARRIS, Zellig S. Distributional Structure. Word, v. 10, n. 2-3, p. 146-162, 1954.

HOCHREITER, Sepp; SCHMIDHUBER, Jürgen. Long Short-Term Memory. Neural Computation, v. 9, n. 8, p. 1735-1780, 1997.

JURAFSKY, Daniel; MARTIN, James H. Speech and Language Processing. 3rd ed. draft. Stanford: Pearson, 2023.

KNESER, Reinhard; NEY, Hermann. Improved Backing-off for M-gram Language Modeling. In: Proceedings of ICASSP, 1995.

KOEHN, Philipp. Statistical Machine Translation. Cambridge: Cambridge University Press, 2010.

LAFFERTY, John; McCALLUM, Andrew; PEREIRA, Fernando. Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data. In: Proceedings of ICML, 2001.

LECUN, Yann; BENGIO, Yoshua; HINTON, Geoffrey. Deep Learning. Nature, v. 521, p. 436-444, 2015.

MANNING, Christopher D.; SCHÜTZE, Hinrich. Foundations of Statistical Natural Language Processing. Cambridge: MIT Press, 1999.

MARCUS, Mitchell P.; SANTORINI, Beatrice; MARCINKIEWICZ, Mary Ann. Building a Large Annotated Corpus of English: The Penn Treebank. Computational Linguistics, v. 19, n. 2, p. 313-330, 1993.

MIKOLOV, Tomas et al. Efficient Estimation of Word Representations in Vector Space. In: Proceedings of ICLR Workshop, 2013.

MIKOLOV, Tomas et al. Distributed Representations of Words and Phrases and their Compositionality. In: Advances in Neural Information Processing Systems, 2013.

MILLER, George A. WordNet: A Lexical Database for English. Communications of the ACM, v. 38, n. 11, p. 39-41, 1995.

MITCHELL, Tom M. Machine Learning. New York: McGraw-Hill, 1997.

MOREIRA, João Carlos. Fundamentos Matemáticos para Ciência da Computação. Uberlândia: EDUFU, 2019.

NORVIG, Peter. How to Write a Spelling Corrector. 2007. Disponível em: http://norvig.com/spell-correct.html

OUYANG, Long et al. Training Language Models to Follow Instructions with Human Feedback. In: Advances in Neural Information Processing Systems, 2022.

PENNINGTON, Jeffrey; SOCHER, Richard; MANNING, Christopher. GloVe: Global Vectors for Word Representation. In: Proceedings of EMNLP, 2014.

PETERS, Matthew E. et al. Deep Contextualized Word Representations. In: Proceedings of NAACL-HLT, 2018.

PUSTEJOVSKY, James; STUBBS, Amber. Natural Language Annotation for Machine Learning. Sebastopol: O'Reilly Media, 2012.

RADFORD, Alec et al. Language Models are Unsupervised Multitask Learners. OpenAI Blog, 2019.

RAFFEL, Colin et al. Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. Journal of Machine Learning Research, v. 21, p. 1-67, 2020.

RUSSELL, Stuart; NORVIG, Peter. Artificial Intelligence: A Modern Approach. 4th ed. Boston: Pearson, 2020.

SCHUSTER, Mike; NAKAJIMA, Kaisuke. Japanese and Korean Voice Search. In: Proceedings of ICASSP, 2012.

SENNRICH, Rico; HADDOW, Barry; BIRCH, Alexandra. Neural Machine Translation of Rare Words with Subword Units. In: Proceedings of ACL, 2016.

SHANNON, Claude E. A Mathematical Theory of Communication. Bell System Technical Journal, v. 27, p. 379-423, 623-656, 1948.

SILVA, João Carlos da. Processamento de Linguagem Natural: Conceitos e Aplicações. São Paulo: Novatec, 2021.

SOCHER, Richard et al. Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank. In: Proceedings of EMNLP, 2013.

SUTSKEVER, Ilya; VINYALS, Oriol; LE, Quoc V. Sequence to Sequence Learning with Neural Networks. In: Advances in Neural Information Processing Systems, 2014.

TURING, Alan M. Computing Machinery and Intelligence. Mind, v. 59, n. 236, p. 433-460, 1950.

VASWANI, Ashish et al. Attention Is All You Need. In: Advances in Neural Information Processing Systems, 2017.

VITERBI, Andrew J. Error Bounds for Convolutional Codes and an Asymptotically Optimum Decoding Algorithm. IEEE Transactions on Information Theory, v. 13, n. 2, p. 260-269, 1967.

WEI, Jason et al. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. In: Advances in Neural Information Processing Systems, 2022.

WINOGRAD, Terry. Understanding Natural Language. Cognitive Psychology, v. 3, n. 1, p. 1-191, 1972.

WOLF, Thomas et al. Transformers: State-of-the-Art Natural Language Processing. In: Proceedings of EMNLP: System Demonstrations, 2020.

YANG, Zhilin et al. XLNet: Generalized Autoregressive Pretraining for Language Understanding. In: Advances in Neural Information Processing Systems, 2019.

YOUNG, Tom et al. Recent Trends in Deep Learning Based Natural Language Processing. IEEE Computational Intelligence Magazine, v. 13, n. 3, p. 55-75, 2018.

ZHANG, Yizhe et al. DIALOGPT: Large-Scale Generative Pre-training for Conversational Response Generation. In: Proceedings of ACL: System Demonstrations, 2020.

ZIPF, George Kingsley. Human Behavior and the Principle of Least Effort. Cambridge: Addison-Wesley Press, 1949.