O que é derivação prefixal e por que ela te dá trabalho
A derivação prefixal é um processo morfológico em que se adiciona um prefixo a um radical ou base lexical para formar uma nova palavra. O prefixo se fixa à esquerda do morfema livre e altera o significado, mas quase nunca a classe gramatical. Quando você vê des- + fazer = desfazer, re- + fazer = refazer ou in- + feliz = infeliz, está olhando para derivação prefixal na prática.
O que é derivação prefixal no dia a dia do processamento de linguagem
No meu trabalho, eu preciso lidar com tokenização, normalização e extração de features em grandes corpora. A derivação prefixal é um dos problemas mais chatos porque os prefixos não são uniformes. Alguns mudam a vogal do radical, outros causam supletivismo, e há prefixos que nem sempre são produtivos. Por exemplo, eu tive que construir um filtro de palavras derivadas em português para um modelo de NLP. Os prefixos mais frequentes são re-, des-, in-/im-/i- (variação alomorfa dependendo do início do radical), sub-, sobre-/sob-, anti-, pré-, pós-, vice-. A regra básica é simples: identificar o prefixo, remover, e tentar recuperar a base. Mas a realidade é muito mais bagunçada.
Um problema que eu encontrei pessoalmente foi com o prefixo in-. Ele tem alomorfos: in- antes de consoante (in+certeza = incerteza), im- antes de bilabial (im+possível = impossível), i- antes de vogal (i+legível = ilegível). Se você fizer uma regra cega de remoção de "in-", vai criar bases falsas. A workaround que eu usei foi construir um dicionário de alomorfos e aplicar uma regex com alternância ordenada: primeiro tentar im-, depois i-, depois in-, e só então fallback para remoção direta com verificação de existência no vocabulário de base. Outro absurdo que eu vi acontecer repetidamente é com o prefixo - em chinês, que não tem nada a ver com português. Eu misturei dados bilíngues e a pipeline gerou milhares de derivados falsos. A solução foi adicionar uma validação ortográfica baseada em frequência de corpus, não apenas em regras morfológicas.
As armadilhas que ninguém conta
A derivação prefixal em português tem algumas nuances que iniciantes ignoram e que quebram pipelines se você não as considerar. 1. Prefixos não são sempre separáveis. Algumas formas prefixais se fossilizaram e não têm base recognizável. “Atrapalhar” parece ter “trapalhar”, mas essa palavra não existe como base independente no uso moderno. Tratar todas as ocorrências de prefixos como produtivas gera ruído massivo.
👉 Clique no botão abaixo para saber mais sobre o assunto!
2. A classe gramatical pode mudar. Diferentemente da derivação sufixal, que frequentemente altera a classe (substantivo adjetivo, verbo substantivo), a prefixal quase sempre preserva a classe. “Leal” (adj) “desleal” (adj). “Fazer” (verbo) “refazer” (verbo). Isso é importante porque em tarefas de tagging morfológico automático, confiar na preservação de classe evita erros de categorias. 3. A produtividade varia enormemente. Re- e des- são altamente produtivos. Anti- e pré- também. Mas “a- (como em “aquecer”) não é um prefixo produtivo no português contemporâneo — é um vestígio histórico. Tratar cada morfema como produtivopode inflar artificialmente o tamanho do seu vocabulário derivado.
4. A ortografia muda com a fusão fonológica. “In- + legal = ilegal” não é apenas uma justaposição. A nasalidade do prefixo se perde, e a vogal do radical pode sofrer alteração. Ferramentas ingênuas que apenas colam prefixos produzem formas grafadas incorretas.
Como eu implemento isso na prática
Se você precisa extrair derivados prefixais de um texto ou gerar candidates, o fluxo que eu uso é o seguinte: Primeiro, liste os prefixos produtivos do português com seus alomorfos. Depois, para cada palavra no corpus, tente casar com o final da palavra e remova o prefixo. Valide se a base resultante existe em um dicionário de frequências confiável (como o Corpus do Português ou a Wikipédia em português). Se a base não existir, descarte. Se existir, registre o par (prefixo + base, derivado).
O tempo que isso leva depende do tamanho do vocabulário de entrada. Num corpus de 100 mil vocábulos, o processo leva cerca de 3 a 5 minutos com uma implementação em Python otimizada, usando tries para busca de prefixos. Sem otimização, pode levar horas. Uma limitação séria: esse método falha completamente com palavras que já entram no corpus como base isolada mas que também aparecem com prefixo. Você acaba duplicando entries. A solução é manter um conjunto de controle de duplicates e consolidar pela forma mais frequente no corpus.
Se o seu objetivo é apenas identificar derivados prefixais para análise linguística descritiva, ferramentas como o Morphy (da PUC-RS) ou o Morfologia do NLTK com extensões para português podem cobrir 80% dos casos. Para produção em escala, vale a pena construir um pipeline próprio com validação por corpus, como eu fiz.