título do trabalho completo: letra maiúscula

Propaganda
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
CONSTRUÇÃO DOS ALGORITMOS PARA A DEPREENSÃO DA GRAMÁTICA
AUTOMÁTICA DO PB
Vera VASILÉVSKI 1
RESUMO: Este artigo descreve a construção dos algoritmos para inserção das regras
gramaticais do sistema de verbos do português brasileiro em ambiente computacional –
tarefa que faz parte da depreensão da gramática automática do PB. Levantamento detalhado
das características dos paradigmas das formas verbais do português e das formas nominais
(infinitas) precedeu o trabalho. Então, construíram-se os algoritmos para as regras das
formas regulares, no que tange ao comportamento da vogal temática (presença, ausência e
alomorfes), às desinências modo-temporais (existência ou não e alomorfes) e, finalmente,
trabalhou-se com as desinências número-pessoais. A etapa atual do programa refere-se a
ajustes nos algoritmos que estão em funcionamento, à construção dos algoritmos para verbos
que têm formas irregulares e, ainda, foca a resolução de ambiguidades geradas por conflitos
entre regras, à medida que aumentam os algoritmos, os quais funcionam em conjunto.
PALAVRAS-CHAVE: Gramática automática; Morfologia verbal; Algoritmos.
ABSTRACT: This article describes the development of the algorithms for translating the
grammar rules of Brazilian Portuguese system of verbs into computational environment. Such
task is part of a project for producing an automatic grammar for this language. A detailed
survey of the characteristics of the Portuguese verb paradigms and nominal verb forms
(infinite) preceded the work. So, we built the algorithms for the regular verb forms rules
regarding thematic vowel (its presence, absence, and allomorphs), tense-mood suffixes
(existence or not, and their allomorphs), and, finally, we worked with person-number suffixes.
The current phase of the project refers to adjusting running algorithms, and to the
construction of algorithms for verbs which have irregular forms; also, it focuses on solving
ambiguities caused by conflicting rules, what may happen as the algorithms increase.
KEYWORDS: Automatic grammar; Verbal morphology; Algorithms.
1 Introdução
Relata-se uma fase de um projeto, cujo objetivo é desenvolver um recurso
computacional para automatizar o sistema de verbos do português escrito do Brasil, a partir de
suas regras morfológicas. Tal recurso é um analisador morfológico, que contém, em forma de
algoritmos, as regras gramaticais dos verbos do português. Dado o ineditismo desse projeto,
faz-se cabível descrever e discutir os procedimentos gramaticais e computacionais
empregados nessa tarefa.
O analisador morfológico de verbos mencionado é uma ferramenta desenvolvida como
parte do projeto Análise Morfológica Automática do Português (SCLIAR-CABRAL, 2009).
O maior objetivo desse projeto é depreender uma gramática automática do português
brasileiro, mediante análise do córpus pau003.cha, que, em seu todo, é constituído por 10688
enunciados. Parte-se dos verbos em situações de uso, encontradas em um enunciado, portanto.
1
Pós-doutoranda PNPD/CAPES/UFSC e professora visitante do Programa de Pós-graduação em Lingüística da
Universidade Federal de Santa Catarina, [email protected].
1
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
Desenvolve-se esse projeto em parceria com o projeto Childes (MACWHINNEY, 2012), em
cujo sítio o córpus de trabalho está disponível para baixa.
Para dar suporte às etapas de construção da gramática automática, criou-se um
programa que abriga várias ferramentas, as quais funcionam em conjunto e em interface com
outros aplicativos – chama-se Laça-palavras (VASILÉVSKI e ARAÚJO, 2010), e o
analisador morfológico enfocado aqui é uma de suas ferramentas, aquela que contém o
sistema gramatical de verbos do português em forma de algoritmos.
Etapas concluídas relativas à depreensão da morfologia dos paradigmas verbais
regulares foram documentadas, como regras iniciais do comportamento da vogal temática e
sufixos modo-temporais e número-pessoais (SCLIAR-CABRAL e VASILÉVSKI, 2011a), a
automatização da vogal temática e seus alomorfes (VASILÉVSKI, SCLIAR-CABRAL,
ARAÚJO, 2012), a automatização dos morfemas modo-temporais, os casos ambíguos dela
decorrentes e sua desambiguação (VASILÉVSKI e ARAÚJO, 2011), dentre outras questões
relacionadas ao projeto (SCLIAR-CABRAL e VASILÉVSKI, 2011b). Já, nesta ocasião,
expõe-se parte de uma fase precedente, porém, ainda não discutida: a construção dos
algoritmos do ponto de vista computacional; e, ainda, nos mesmos moldes, expõem-se os
resultados iniciais da sistematização eletrônica das primeiras formas verbais irregulares.
Este artigo organiza-se da maneira que segue. Resgatam-se brevemente alguns
aspectos técnicos e teóricos relativos ao programa Laça-palavras e ao analisador morfológico
em si, uma vez que muito já se discutiram esses assuntos em outros trabalhos, aqui citados.
Então, dedica-se um capítulo aos algoritmos do programa, no que concerne à conversão das
regras gramaticais dos verbos do português para o computador e à criação de funções para
resolver ambiguidades geradas pelo próprio sistema de verbos e também pelo ambiente
eletrônico. Após, apresentam-se as últimas considerações.
2 Aspectos Técnico-metodológicos
Como já se exploraram suficientemente as questões teóricas mais pertinentes ao
sistema de verbos do português, este artigo volta-se, sobretudo, à metodologia técnica, e
resgata apenas alguma teoria imediatamente relevante para a discussão. Não é intenção aqui
abordar a linguagem de programação utilizada, a maneira como se estruturaram as funções
internamente no programa e outras questões dessa ordem, pois isso foge ao âmbito da
lingüística. Todavia, antes de prosseguir, é importante lembrar questões teóricas que
nortearam a construção do programa, como o funcionamento flexional básico dos verbos em
português.
A fórmula geral da estrutura do vocábulo verbal português – na qual RAD indica
radical do verbo; VT, vogal temática; e SF, sufixos flexionais – é (CÂMARA JR., 1986):
TEMA (RAD+VT) + SF (SMT + SNP)
Levando-se em conta a alomorfia de cada um dos sufixos flexionais e a possibilidade
de um deles ou ambos serem zero (Ø), essa fórmula dá a regra geral da constituição
morfológica do verbo em português, além de indicar a ordem obrigatória dos morfemas
(CÂMARA JR., 1986). A exposição sistemática de todas as formas de um verbo, finitas e
infinitas (nominais), constitui a conjugação desse verbo (SAID ALI, 1964). O sistema de
conjugação de verbos do português é considerado, de certa forma, simples e previsível
(CÂMARA Jr., 1986), o que respalda a criação de uma ferramenta computacional baseada em
suas regras.
2
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
O tema do infinitivo é a forma básica do verbo regular. Assim, dado um verbo regular
em sua forma infinitiva, é possível conjugá-lo com facilidade, nas seis pessoas gramaticais, 2
sobretudo nos tempos do modo indicativo. Em contrapartida, tomar uma forma verbal
conjugada e dela extrair os morfemas que a compõem, a fim de desvendar tempo, modo,
pessoa e número em que está flexionada, não é tão fácil (VASILÉVSKI e ARAÚJO, 2011).
Em português, há três modos verbais finitos, com seus tempos simples: indicativo (seis
tempos), subjuntivo (três tempos) e imperativo (afirmativo e negativo), além do infinitivo
pessoal e das formas nominais infinitivo, gerúndio e particípio.
Apesar de as gramáticas dividirem os verbos em regulares e irregulares, ocorre que
todos os ditos verbos irregulares são perfeitamente regulares em vários tempos e pessoas
gramaticais. Não há verbo que seja irregular em todos os tempos e pessoas gramaticais, de
modo que o programa considera que o que há são formas irregulares (que se desviam do
paradigma regular) e formas regulares. A partir dessa decisão, o trabalho ficou mais coerente
com a realidade, bem como se facilitou a descodificação automática.
No córpus de trabalho, os verbos estão anotados – na linha do enunciado, no sistema
Clan (MACWHINNEY, 2012), disponibilizado pela Plataforma Childes e usado para ler o
córpus –, de modo a distinguir as formas verbais regulares (default), as formas verbais
irregulares e os verbos auxiliares, para possibilitar, no Laça-palavras (LP), a pesquisa (resgate
e filtragem de dados), a análise morfológica automática e, consequentemente, a criação da
linha %mor no arquivo original a ser lido pelo Clan, como será visto. No entanto, para fins de
clareza e limpeza do texto, esses símbolos, bem como outros símbolos do Clan, podem ser
omitidos na pesquisa feita pelo LP, a critério do usuário. Todos os verbos auxiliares possuem
formas irregulares, mas a decisão de assinalá-los separadamente se deve ao fato de preparar a
computação, posteriormente, das locuções verbais e dos tempos compostos (SCLIARCABRAL e VASILÉVSKI, 2011a).
Ainda, cabe relembrar a nomenclatura utilizada no analisador de verbos. Cada um dos
tempos verbais do português, em seus respectivos modos, recebeu um código único, que foi
inserido no programa (VASILÉVSKI, SCLIAR-CABRAL e ARAÚJO, 2012): PI – Presente
do Indicativo, PII – Pretérito Imperfeito do Indicativo, PPI – Pretérito Perfeito do Indicativo,
PMI – Pretérito Mais-que-perfeito do Indicativo, FPI – Futuro do Presente do Indicativo,
FPPI – Futuro do Pretérito do Indicativo, PS – Presente do Subjuntivo, PIS – Pretérito
Imperfeito do Subjuntivo, FS – Futuro do Subjuntivo, IMA – Imperativo Afirmativo, IMN –
Imperativo Negativo, INF – Infinitivo, GER – Gerúndio, PAR – Particípio. Da mesma forma,
as seis pessoas gramaticais são assim designadas: 1S, 2S, 3S, 1P, 2P e 3P.
Mais questões teóricas serão apresentadas, quando se fizerem pertinentes, durante esta
exposição.
2.1 O programa Laça-palavras
O funcionamento geral do programa Laça-palavras foi relatado anteriormente
(SCLIAR-CABRAL e VASILÉVSKI, 2011), bem como algumas de suas ferramentas
(VASILÉVSKI, 2010 e 2011) e resultados advindos de sua implementação parcial
(VASILÉVSKI, 2011b; COSTA e SCLIAR-CABRAL, 2011). O Laça-palavras surgiu da
necessidade de haver flexibilidade dos dados de trabalho maior do que a oferecida pelo
2
Morfologicamente, as pessoas gramaticais são seis, por se tratar de seis formas diferentes, e não de três formas,
cada uma com plural. Assim, a noção de pessoa gramatical não se realiza por meio de flexão, faz-se
lexicalmente, por vocábulos distintos (CÂMARA JR., 1986, p.84-85). A partir disso, sua designação aqui como
1.ª, 2.ª e 3.ª do singular e do plural se dá por questões práticas apenas.
3
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
programa Clan. O Laça-palavras volta-se para arquivos em português, trabalha em conjunto
com o Clan e também disponibiliza recursos próprios, os quais estão em constante
aprimoramento, para atender às demandas do projeto. Atualmente, o LP integra: o conversor
grafema-fonema Nhenhém (VASILÉVSKI, 2008), que funciona em conjunto com um
silabador fonológico e um silabador ortográfico (VASILÉVSKI, 2010, 2011a e 2012) – esses
programas foram atualizados em 2012, de modo que a eficiência de seus resultados aumentou
sensivelmente (VASILÉVSKI, 2012); um pesquisador para os arquivos do Clan (SCLIARCABRAL e VASILÉVSKI, 2011b), que busca palavras no córpus, o qual também já foi
aprimorado em 2012 (ver SCLIAR-CABRAL, 2012); e o analisador morfológico de verbos
mencionado, que está em construção, mas já funciona parcialmente, pois várias etapas de seu
desenvolvimento foram concluídas ou estão em aperfeiçoamento.
Além disso, essas ferramentas possibilitam: 1) pesquisa no córpus, com marcação das
linhas de seus enunciados com o tipo de discurso – de adulto para criança (ad-chi), de criança
para adulto (chi-ad) e de adulto para adulto (ad-ad) –, resgate de palavras específicas – ou
grupos de palavras – para trabalho com classes gramaticais, geração de relatório estatístico; 2)
criação no córpus de uma linha denominada %pho, mediante interface com o fonetizador
Nhenhém, para fazer a transcrição fonológica automática, com marcação das sílabas tônicas
de determinado enunciado do arquivo e ajuste da transcrição fonológica para fonética; 3)
criação de uma linha para tradução morfológica automática dos verbos, chamada %mor, cuja
ferramenta que a controla – o analisador morfológico – é abordada neste estudo (ver
SCLIAR-CABRAL, 2012).
Figura 1: Tela principal do Nhenhém 2012 e dos silabadores fonológico e ortográfico,
integrados ao Laça-palavras.
Fonte: VASILÉVSKI, 2012, p.85.
4
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
O LP hoje é o principal recurso usado pelos pesquisadores do Grupo Produtividade
Lingüística Emergente, e foi desenhado exclusivamente para uso pelo projeto, mas será
disponibilizado futuramente aos pesquisadores interessados.
2.2 O analisador morfológico
O programa construído para análise morfológica automática do português brasileiro,
assim como o Laça-palavras, é compatível com o formato do arquivo pau003.cha, ou seja, lê e
analisa os verbos dos arquivos do Clan. A primeira parte do trabalho foi descrever as regras
relativas à conjugação das formas regulares (comportamento da vogal temática, morfemas
modo-temporais e número-pessoais, incluindo-se o modo indicativo, subjuntivo e os
imperativos em todos seus tempos e pessoas) e transformá-las em algoritmo.
Ao identificar uma forma verbal, o analisador morfológico a compara com suas regras
internas, então, a analisa, ou seja, mostra seus elementos composicionais. Assim, a saída do
programa é a realização da fórmula geral da estrutura do vocábulo verbal português,
acrescendo-se a respectiva conjugação do verbo (C), representada por V1 (1ª.C), V2 (2ª.C) ou
V3 (3ª.C): TEMA&C&SMT&SNP, e a depreensão de sua forma infinitiva.
Figura 2: Tela principal do analisador morfológico integrado ao Laça-palavras.
A Figura 2 mostra a análise morfológica da linha 314 do córpus pau003.cha, em que o
participante INV profere a forma verbal irregular “disse”. À medida que o cursor desce pelos
enunciados, cada forma verbal encontrada é analisada automaticamente pelo programa. O
campo Análise mostra que a forma infinitiva correspondente a “disse” é “dizer”, então, ela é
da 2ª.C, coincide com o radical, pois a vogal temática desapareceu, não há embutido nela
sufixo modo-temporal (SMT = Ø), nem número-pessoal (SNP = Ø), não se trata de gerúndio
(GER) nem de particípio (PAR). Todas essas informações juntas contam que se trata de
1S/3S-PPI, no entanto, embora a forma “disse” seja a mesma para 1S e 3S, no enunciado 314
está expresso o pronome subjetivo “ele” antes do verbo, o que desambígua essa ocorrência.
5
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
As ambigüidades do sistema de verbos do português geram várias possibilidades
errôneas de análise. Por isso, a fim de limitar a saída do analisador à resposta correta,
desenvolveu-se o procedimento para criação de um léxico verbal automático para o córpus de
trabalho, que resolveu várias ambigüidades, e já foi descrito e discutido (VASILÉVSKI,
SCLIAR-CABRAL e ARAÚJO, 2012). O mesmo procedimento foi adotado para os verbos
com formas irregulares.
Não cabe aqui expor em detalhes o funcionamento do analisador, uma vez que isso já
foi feito (ver VASILÉVSKI, SCLIAR-CABRAL e ARAÚJO, 2012; VASILÉVSKI e
SCLIAR-CABRAL, 2011a e 2011b; VASILÉVSKI e ARAÚJO, 2011). No entanto, é válido
explanar sobre sua construção interna. O programa identifica os verbos mediante sua anotação
prévia, e então aplica os algoritmos das regras morfológicas.3,4 Por adentrar o campo da
inteligência artificial, boa parte da programação são encadeamentos de estruturas SE,
ENTÃO, SE NÃO, ou IF, THEN, ELSE:
public cVerbo(string paramVerbo)
Verbo = paramVerbo;
if (!((Verbo.EndsWith("@z:v")) || (Verbo.EndsWith("@z:vi"))))
Verbo = null;
public cVerbo(string paramVerbo, bool _irregular)
Verbo = paramVerbo;
if (!((Verbo.EndsWith("@z:v")) || (Verbo.EndsWith("@z:vi"))))
Verbo = null;
TempoIrregular = true;
Para os verbos com formas regulares (Irregular=false), 5 construíram-se os seguintes
conjuntos de regras gramaticais:
private string _vrb = "";
private string _RadVT = "";
private string _mt = "";
private string _pn = "";
private string _ger = "";
private string _part = "";
private string _inf = "";
private string _participios = "ado;edo;ido;ído";
private string _tempoEModo = "";
private string _pessoa = "";
private string _palavraAnt = "";
private const string v1 = "V1";
3
Alterações são feitas freqüentemente, para adaptar o Laça-palavras e suas ferramentas às mudanças que
ocorrem no Clan. Anteriormente, a marcação usada para os verbos era @v (formas regulares), @vi (formas
irregulares) e @va (verbos auxiliares), mas, em sua versão 2012, o Clan passou a aceitar a notação @z:v e
@z:vi. Além disso, em 2011, o coordenador do projeto Childes reestruturou os arquivos constantes na
plataforma, de modo que o arquivo pau003.cha agora é um conjunto de 35 arquivos menores (ver SCLIARCABRAL, 2012). Isso explica números de linha altos nos exemplos, pois foram coletados antes da divisão do
córpus. Essa reestruturação não afetou os trabalhos já realizados, dada a flexibilidade do Laça-palavras.
4
Nos fragmentos computacionais deste artigo, foram suprimidos alguns símbolos e linhas específicas da
linguagem de programação, a fim de facilitar a compreensão das regras.
5
Quando se diz verbos com formas regulares, abrangem-se todos os paradigmas verbais regulares, bem como a
parte regular dos paradigmas que contêm formas irregulares. Assim, as formas “estarei” e “iria” entram nas
regras das formas verbais regulares, pois, apesar dos verbos “estar” e “ir” terem várias formas irregulares em
alguns tempos, eles têm formas regulares em outros, como o futuro do presente e do pretérito e o pretérito
imperfeito. Essa decisão foi fundamental para aumentar a eficiência do analisador, pois se revelou coerente e
econômica. Em trabalho vindouro, detalhar-se-ão os procedimentos teóricos e técnicos que fundamentam essa
escolha.
6
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
private const string v2 = "V2";
private const string v3 = "V3";
private string _conjugacao = "";
private bool _tempoIrregular = false;
O programa testa todos esses conjuntos de regras, para cada entrada.
3 Algoritmos
Os algoritmos criados são, especialmente, de dois tipos: tradução das regras
gramaticais para a linguagem de programação escolhida; e desambiguação dessas regras em
vários aspectos, como desambiguação de forma verbal infinitiva e de pessoa gramatical.
3.1 Algoritmos para as regras gramaticais
O sistema de verbos do português do Brasil, apesar de ser, de certa forma, simples, em
comparação com o de outras línguas, como o inglês, tem seu nível de complexidade. Para se
desenvolver o analisador morfológico automático para verbos do português escrito, foi
necessário conhecer a fundo as regras gramaticais que regem o sistema escrito de verbos
dessa língua, o que se obteve na literatura pertinente ao tema (CÂMARA JR., 1986, 1976;
SAID ALI, 1964; SCLIAR-CABRAL, 2003). A partir disso, as regras gramaticais referentes
ao comportamento da vogal temática dos verbos regulares foram discutidas (VASILÉVSKI,
SCLIAR-CABRAL e ARAÚJO, 2012), bem como as regras relativas aos sufixos modotemporais também dos verbos regulares (VASILÉVSKI, e ARAÚJO, 2011), como
mencionado. As desinências número-pessoais ainda não se abordaram exaustivamente, mas
estudos preliminares – em desenvolvimento – indicam que elas não contribuem da forma
esperada para eliminar ambigüidades do sistema de verbos do português, sobretudo quanto
aos verbos que não têm formas irregulares.
Cabe então expor algumas das regras gramaticais dos verbos, em função de sua
tradução para o ambiente eletrônico. As regras que regem o presente do modo indicativo das
formas regulares da primeira conjugação são expressas como segue:
mtnp = "o;as;a;amos;ais;am".Split(';');
foreach (string s in mtnp)
if (Palavra.EndsWith(s))
res = true;
TempoEModo = "PI";
//Tema
Tema = Palavra.Substring(0, Palavra.Length - s.Length) + "a";
Verbo = Tema + "r";
Verbo = Verbo.Replace('á', 'a');
newVerbo = new cVerbo(Verbo);
newVerbo.Conjugacao = v1;
newVerbo.Tema = Tema;
newVerbo.TempoEModo = TempoEModo;
//Modo e tempo
newVerbo.MT = "Ø";
//Número e pessoa
if (s == "o")
newVerbo.PN = "o";
newVerbo.Tema = Tema.Substring(0, Tema.Length - 1) + "Ø";
newVerbo.Pessoa = "1S";
else if (s == "as")
newVerbo.PN = "s";
newVerbo.Pessoa = "2S";
7
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
else if (s == "a")
newVerbo.PN = "Ø";
newVerbo.Pessoa = "3S";
else if (s == "amos")
newVerbo.PN = "mos";
newVerbo.Pessoa = "1P";
else if (s == "ais")
newVerbo.PN = "is";
newVerbo.Pessoa = "2P";
else if (s == "am")
newVerbo.PN = "m";
newVerbo.Pessoa = "3P";
newVerbo.Verbo = Verbo;
LVerbo.Add(newVerbo);
Note-se que o programa separa o radical e o restante do vocábulo (a vogal temática e
os sufixos flexionais), e, então, separa o sufixo modo-temporal do sufixo número-pessoal.
Fica clara, por exemplo, a seguinte regra gramatical: não há SMT para o PI, essa desinência é
zero. Sabendo quais são os SNPs, o programa pode deduzir a vogal temática. Assim, os SNPs
são fundamentais na distinção desse tempo verbal, uma vez que não há SMT. A ambigüidade
nesse tempo é causada pelo desaparecimento da VT em 1S, o qual recebe tratamento especial,
como se verá.
Outro exemplo de internalização das regras gramaticais é dado pelo pretérito
imperfeito do modo subjuntivo para verbos da segunda conjugação:
mtnp = "esse;esses;éssemos;ésseis;essem".Split(';');
foreach (string s in mtnp)
if (Palavra.EndsWith(s))
res = true;
TempoEModo = "PIS";
//Tema
Tema = Palavra.Substring(0, Palavra.Length - s.Length) + "e";
Verbo = Tema + "r";
Verbo = Verbo.Replace('á', 'a');
newVerbo = new cVerbo(Verbo, true);
newVerbo.Conjugacao = v2;
newVerbo.Tema = Tema;
newVerbo.TempoEModo = TempoEModo;
//Número e pessoa | Modo e tempo
if (s == "esse")
newVerbo.MT = "sse";
newVerbo.PN = "Ø";
newVerbo.Pessoa = "1S/3S";
else if (s == "esses")
newVerbo.PN = "s";
newVerbo.MT = "sse";
newVerbo.Pessoa = "2S";
else if (s == "éssemos")
newVerbo.PN = "mos";
newVerbo.MT = "sse";
newVerbo.Pessoa = "1P";
else if (s == "ésseis")
newVerbo.PN = "is";
newVerbo.MT = "sse";
newVerbo.Pessoa = "2P";
else if (s == "essem")
newVerbo.PN = "m";
newVerbo.MT = "sse";
newVerbo.Pessoa = "3P";
newVerbo.Verbo = falsoInfinitivo(Verbo);
newVerbo.Tema += "Ø";
LVerbo.Add(newVerbo);
8
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
O procedimento utilizado é o mesmo do exemplo anterior, pois o sistema usa o mesmo
princípio para todas as regras gramaticais. Observe-se que o sistema relata a ambigüidade que
há entre 1S e 3S, pois não há SNP, uma vez que, para ambas, essa desinência é zero. Por outro
lado, o SMT para o PIS é “sse”, o que faz com esse tempo seja inconfundível, embora haja
conflito entre algumas pessoas gramaticais. Não obstante, o contexto, geralmente, trata de
desambiguar as pessoas, mediante expressão do pronome subjetivo.
Quanto aos verbos ditos irregulares, embora eles constituam uma pequena minoria em
relação a todos os verbos existentes na língua, a freqüência com que ocorrem é muito alta, o
que lhes dá importância significativa na língua. Os cinco verbos mais utilizados no português
atual, segundo pesquisa baseada em córpus, são, na seguinte ordem: “ir”, “ser”, “estar”, “ter”
e “ver” (WILKENS e VILLAVICENCIO, 2012). Todos esses verbos têm formas irregulares
em seus paradigmas.
Um dos problemas acarretados por tais irregularidades é a geração de infinitivos que
muito se distanciam das formas corretas. Esse assunto é foco atual do desenvolvimento do
analisador morfológico, e cabe apresentar como se está dando seu tratamento. Exemplos
desses falsos infinitivos são: tiver para “ter”; ester para “estar”; e vir para “ver”. Uma vez que
esses fatos foram constatados durante a sistematização de tais verbos, eles foram
imediatamente mapeados e tratados, da maneira como segue.
private string falsoInfinitivo(string _falso)
string ret = _falso;
if (_falso.EndsWith("tiver"))
ret = _falso.Replace("tiver", "ter");
if (ret.EndsWith("ester"))
ret = ret.Replace("ester", "estar");
if (_falso == "vir")
ret = _falso.Replace("vir", "ver");
if (_falso == "der")
ret = _falso.Replace("der", "dar");
return ret;
Isso também foi feito para as formas irregulares dos verbos “fazer”, “querer”, “dizer”,
“caber”, “saber”, “dar” e “haver” que acarretavam esse problema.
3.2 Algoritmos de apoio: resolução de ambiguidades
Os casos em que as regras são ambíguas se revelam na resposta do programa, como
visto. Isso era de se esperar, pois a reprodução pelo programa das ambigüidades do sistema de
verbos do português mostra que seus algoritmos correspondem a este sistema. Cabe
documentar aqui as ambigüidades do sistema de verbos do português relacionadas à vogal
temática e aos sufixos modo-temporais.
3.2.1 Desambiguação de conjugação por léxico verbal
Uma das questões que merecem destaque é o apagamento da vogal temática dos
verbos, que ocorre, por exemplo, na 1.ª pessoa do presente do indicativo, nas três conjugações
do português:
9
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
As we can see […] the TV of the three conjugations disappears before “o”,
which represents the 1S person-number Present Indicative suffix. At this
point, a problem emerges: if these forms have lost their TV, how is it
possible to rescue their Infinitive forms? The best way we found to rescue
the correct Infinitive form was building a program which compared each of
the alternatives with the forms registered in the verbal lexicon until one of
them matched the only possibility (VASILÉVSKI, SCLIAR-CABRAL e
ARAÚJO, 2012, p.17-18).6
Como esclarece a citação anterior, o efeito prático disso é que um verbo conjugado
nesse tempo e pessoa pode pertencer a qualquer uma das três conjugações do português, uma
vez que o que diferencia as conjugações é a vogal temática, e isso impede que o programa
gere a forma infinitiva correta desse verbo. Nesse sentido, a única maneira de resgatar a forma
infinitiva correta é comparando-se os três resultados possíveis com o léxico verbal da língua.
Assim, criou-se um léxico verbal automático, gerado a partir das ocorrências do córpus.
Trata-se de um arquivo que contém apenas as formas infinitivas dos verbos, e serve para
comparar os resultados possíveis com as formas constantes no léxico verbal. O algoritmo
responsável pela interação resultados-léxico verbal é estruturado da seguinte forma:
Figura 3: Dedução da forma verbal infinitiva, a partir da entrada “como”.7
Fonte: VASILÉVSKI, SCLIAR-CABRAL e ARAÚJO, 2012, p.21.
Internamente, o programa acessa o arquivo de léxico verbal da seguinte forma:
6
Como se pode notar [...], a VT das três conjugações desaparece antes de “o”, que representa o sufixo númeropessoal de 1S-PI. Nesse ponto, surge um problema: se essas formas perderam suas VTs, como é possível resgatar
suas formas verbais infinitivas? A melhor maneira encontrada, até agora, para resgatá-las foi construir um
programa que comparasse cada uma das alternativas com as formas registradas no léxico dos verbos da língua,
até encontrar aquela que corresponde à única possibilidade (tradução nossa).
7
Go to other EndsWith cases = Vai para outros casos TerminaCom; EndsWith = TerminaCom; Possible results
= Resultados possíveis; Add = Adiciona; Replace = Substitui; Lexical comparison = Comparação lexical;
Displays result = Mostra resultado (tradução nossa).
10
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
//checa cada palavra na linha selecionada
foreach (string s in plvs){
cVerbo cv = new cVerbo(s);
// se a palavra é um verbo, aplica regras morfológicas
if (!(cv.Verbo == null)){
...
//se Verbar retorna “true”, então, regras morfológicas aplicadas com sucesso
if (cv.verbar()){
//checa possíveis resultados, mostra o resultado correto
foreach (cVerbo fcv in cv.LVerbo){
//procura o verbo no léxico verbal automático
cVerbo VrbCprs = LxcCpr.Find(fcv.Verbo);
//mostra o verbo encontrado no léxico verbal
if(VrbCprs!=null) {
ListViewItem lvi = new ListViewItem();
lvi.Name = VrbCprs.Verbo;
lvi.Text = VrbCprs.Verbo;
lvi.SubItems.Add(VrbCprs.Tema);
lvi.SubItems.Add(VrbCprs.MT);
lvi.SubItems.Add(VrbCprs.PN);
lvi.SubItems.Add(VrbCprs.PART);
lvi.SubItems.Add(VrbCprs.GER);
lvi.SubItems.Add(VrbCprs.Tema + "&" +
VrbCprs.TempoEModo + "&" + VrbCprs.Pessoa);
lvVisMor.Items.Insert(contV, lvi);
break;
A respeito do léxico verbal automático, cabe esclarecer e reforçar, ainda, que:
We instructed the morphological analyzer to create a file which listed each
Infinitive generated from the verbs tokens of the corpus, so that they became
available for the user to choose. The program excludes the non-matching
ones and saves the file. In this way the verb lexicon of the corpus is created.
It is up to the user to create the lexicon gradually or all at once. When
analyzing a verb form, the program compares the responses generated with
the verb lexicon file content, and only shows the alternative that matches it.
[...] It is worth remembering that the regular verb lexicon contains only the
Infinitive forms of the verbs, nothing else. All morphological rules
concerning thematic vowels, tense-mood suffixes, and person-number
suffixes and their allomorphs are algorithms belonging to the morphological
analyzer (VASILÉVSKI, SCLIAR-CABRAL e ARAÚJO, 2012, p.18).8
Com isso, restaram para resolução raros casos em que há coincidência na forma dos
radicais, em que a diferença é dada apenas pela vogal temática das diferentes conjugações,
como “falar” e “falir”. Esses casos não ocorrem no córpus de trabalho, mas não devem ser
ignorados, uma vez que o programa deve analisar as entradas verbais de qualquer córpus.
Assim, é trabalho futuro encontrar, por meio de algoritmos, a solução para tais casos. Pode-se
8
O analisador morfológico foi instruído a criar um arquivo em que há uma lista de cada infinitivo gerado a partir
das entradas verbais do córpus, de modo que essa lista fica disponível para edição pelo usuário [que escolherá as
formas que existem em português]. O programa exclui os infinitivos não correspondentes e salva o arquivo.
Assim o léxico verbal do córpus é criado. É opção do usuário [editor] criar o léxico gradualmente ou todo de
uma vez. Ao analisar uma forma verbal, o programa compara as respostas geradas com o arquivo do léxico, e
mostra somente a alternativa que faz parte do português. Cabe lembrar que o arquivo do léxico automático
somente contém as formas infinitivas dos verbos, nada mais. [...] Todas as regras morfológicas relativas à vogal
temática, sufixos modo-temporais e sufixos número-pessoais e a seus alomorfes são algoritmos dentro do
analisador morfológico (tradução nossa).
11
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
adiantar que auxiliará a construção do algoritmo de desambiguação dessas formas, se for
levado em conta se esses verbos são totalmente regulares ou se têm formas irregulares. Por
exemplo, “falar” é totalmente regular, mas “falir” não. Essa distinção será produtiva na
programação.
3.2.2 Desambiguação de pessoa gramatical
As ambigüidades cuja resolução é complicada são justamente causadas pela ausência
de morfemas específicos que distingam formas verbais. Aliás, quando essas formas ocorrem
em um texto, nem sempre é claro para o leitor o tempo verbal em que elas estão. Assim, o
programa reproduz a ambigüidade do sistema de verbos no que se refere à ausência de sufixo
modo-temporal tanto para 1P-PI como para 1P-PPI, em que, por exemplo, para o verbo
“concordar”, somente há a forma “concordamos” em ambas as situações. Nesse caso, somente
o contexto poderá desambiguar a forma verbal.
Quando a ambigüidade ocorre com o modo imperativo, o contexto pode facilitar a
desambiguação ou encarregar-se dela. Cabe resumir aqui discussão anteriormente realizada
(esta seção baseia-se em VASILÉVSKI e ARAÚJO, 2011), referente a esse tema. As formas
imperativas afirmativas normalmente ocorrem no início do enunciado ou logo após um
vocativo, ao qual sucede uma vírgula, e ocorrem com a segunda pessoa do discurso, isto é,
segunda ou terceira pessoas gramaticais. Elas também ocorrem após “por favor” – que não
ocorre no córpus de trabalho – e após outras poucas expressões semelhantes. Os morfemas
modo-temporais do imperativo negativo coincidem com os do presente do subjuntivo, no
entanto, o imperativo negativo, além de estar no mesmo contexto do imperativo afirmativo,
sempre vem acompanhado do advérbio de negação “não”, de modo que se facilita a resolução
da ambigüidade pelo contexto.
A ambigüidade causada pelo uso das flexões de 3S e 3P para as formas “você” e
“vocês” é de resolução mais complicada em algumas situações, contudo, nesses casos, a
pessoa gramatical normalmente é expressa no enunciado, de maneira que novamente o
contexto facilita a desambiguação. Por exemplo, a forma verbal “mostra”, do enunciado da
linha 940 do córpus:
0940: *MOT: depois você mostra@v p(a)r(a) o papai .
gerava as duas saídas seguintes, das quais nenhuma era correta, pois o pronome subjetivo
expresso na sentença não deixa dúvida de que não se trata de imperativo, mas sim de 2S:
Quadro 1: Resposta inicial do programa à entrada “mostra”.
(RAD+VT)
mostr
a
mostr
a
SMT SNP Tema&C&TM&PN
Ø
Ø mostra&V1&PI&3S
Ø
Ø mostra&V1&IMA&2S
Fonte: Adaptado de VASILÉVSKI e ARAÚJO, 2011, p.115.
À forma verbal “mostra” não se agrega morfema modo-temporal nem número-pessoal
– ambos são zero. Como diferenciar tempo-modo e pessoa-número, então, se a forma verbal
não os expressa? Para resolver esse caso, criou-se uma rotina computacional que verifica o
enunciado, à procura das formas “você”, “vocês” e “a_gente”.
O pronome “você” ocorre 325 vezes no córpus, e a criança usa-o duas vezes. O
pronome “vocês” ocorre 14 vezes, e a criança não o usa. A forma composta “a gente”
somente é pronominal se as duas palavras que a compõem estiverem nessa seqüência e
12
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
precederem um verbo, ou precederem a partícula “se” ou um ou mais advérbios antes desse
verbo. Para evitar ambigüidade, no córpus, as duas palavras que a compõem aparecem ligadas
por “_”. No córpus, que foi coletado no início dos anos 1970, ela aparece 41 vezes, todas
nessa situação. Por exemplo:
1402 *INV: a_gente se diverte@v ,, né ?
O funcionamento dessa rotina computacional consta, em forma de fluxograma, na
Figura 4. Depois dessa complementação, a resposta do programa à situação do Quadro 1 é:
mostra&V1&PI&2S.
Figura 4: Fluxograma da função que verifica “você”, “vocês” e “a_gente” no enunciado.
Fonte: VASILÉVSKI e ARAÚJO, 2011, p.116.
Obter tal distinção nem sempre é fácil, apesar disso, a grande maioria dos casos fica
resolvida com a verificação do contexto do enunciado. Na rotina computacional demonstrada
no fluxograma anterior, foi implementada uma instrução para que seja ignorada a partícula
“se” anteposta a um verbo, de forma que o verbo “diverte” do enunciado da linha 1402, do
exemplo anterior, é corretamente analisado pelo programa: diverte&V3&PI&1P. A análise
completa do programa mostra que, nessa circunstância, SMT e SNP são Ø e que há alomorfia
da VT da 3.ªC, que passa de “i” (“divertir”) para “e” (“diverte”).
Certamente, há muitas outras ambigüidades, as quais são tratadas conforme aparecem,
ou são anotadas para tratamento posterior. Ainda, apesar de parecer simples desenvolver
13
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
soluções para elas, tais soluções, algumas vezes, implicam alterações nas regras gramaticais
internalizadas, isto é, na maneira de estruturá-las no programa. Mesmo assim, seu tratamento
tem obtido êxito, e cada ambigüidade eliminada aumenta a eficiência do analisador
morfológico automático de verbos do português.
4 Considerações finais
Esta exposição referenda que o processamento automático das unidades morfológicas
do PB dos enunciados do córpus coloca à disposição dos pesquisadores que trabalham com a
morfologia do português uma eficiente ferramenta para análises quantitativas e qualitativas.
No plano teórico, contribui em nível explicativo para melhor compreensão da construção das
gramáticas do PB, particularmente do sistema de verbos, e amplia o entendimento sobre o
papel do input na construção de tais gramáticas (SCLIAR-CABRAL, 2008), além de
demonstrar a intuição do adulto, ao utilizar um registro adequado ao nível da criança.
À medida que a programação avança, revelam-se mais questões a ser tratadas. Assim,
a resolução completa das ambigüidades depende de outros fatores, como o reconhecimento
das palavras de outras classes gramaticais que circundam o verbo – trabalho que já se iniciou
e tem sido realizado com sucesso. Além disso, é pretensão do projeto emparelhar morfologia
e fonologia, a fim de resolver, por exemplo, a ambigüidade causada pela harmonia vocálica,
que iguala substantivo e verbo conjugado em 1S-PI (“gosto” → /ˈgoS.tu/ e “gosto” →
/ˈgɔS.tu/). Essa etapa ainda não foi iniciada, mas estudos teóricos prévios a ela estão em
andamento. Como este artigo deixa claro, já estão disponíveis as ferramentas necessárias para
cumprir essa tarefa.
Referências
CÂMARA JR., J. M. Estrutura da língua portuguesa. 16.ed. Petrópolis, RJ: Vozes, 1986.
CÂMARA JR., J. M. História e estrutura da língua portuguesa. 2.ed. Rio de Janeiro: Padrão,
1976.
COSTA, R. F. S. e SCLIAR-CABRAL, L. Regularização do sistema verbal pela criança.
SIMPÓSIO INTERNACIONAL LINGUAGENS E CULTURAS: HOMENAGEM AOS 40
ANOS DOS PROGRAMAS DE PÓS-GRADUAÇÃO EM LINGÜÍSTICA, LITERATURA
E INGLÊS DA UFSC (SILC). Anais... Florianópolis, 2011. Disponível em:
<http://pos40anos.cce.ufsc.br/?page_id=958>. Acesso em: mar. 2012.
MACWHINNEY, B. Child Language Data Exchange System. 2003-2012. Disponível em:
<http://childes.psy.cmu.edu/>. Acesso em: ago. 2012.
SAID ALI, M. Gramática secundária e Gramática histórica da língua portuguesa. Brasília:
Editora da UnB, 1964.
SCLIAR-CABRAL, L. Depreensão de uma gramática automática do PB (Plataforma
Childes). X CÍRCULO DE ESTUDOS LINGUÍSTICOS DO SUL (CELSUL), Universidade
Estadual do Oeste do Paraná, Cascavel, 24 a 26 out. 2012. Anais... 2012.
SCLIAR-CABRAL, L. Análise morfológica automática do português. Florianópolis: CAPESUFSC, 2009.
SCLIAR-CABRAL, L. Codificação da morfologia do PB e análise da fala dirigida à criança.
Fórum Lingüístico, Florianópolis, v.5, n.2, p.69-82, 2008.
SCLIAR-CABRAL, L. Princípios do sistema alfabético do português do Brasil. São Paulo:
Contexto, 2003.
SCLIAR-CABRAL, L.; VASILÉVSKI, V. Análise automática da morfologia verbal do PB:
Plataforma CHILDES. Revista da ABRALIN, v.10 eletr. 1ª. parte, n. espec., p.431-444, 2011a.
14
Anais do X Encontro do CELSUL – Círculo de Estudos Linguísticos do Sul
UNIOESTE - Universidade Estadual do Oeste do Paraná
Cascavel-PR | 24 a 26 de outubro de 2012 | ISSN 2178-7751
SCLIAR-CABRAL, L.; VASILÉVSKI, V. Descrição do português com auxílio de programa
computacional de interface. II JORNADA DE DESCRIÇÃO DO PORTUGUÊS (JDP),
Cuiabá, Brasil, 2011. Anais... 2011b.
VASILÉVSKI, V. Descodificación automática de la lengua escrita de Brasil, basada en
reglas fonológicas. Saarbrücken, Alemanha: LAP LAMBERT Acad. Publ. GmbH & Co.KG,
2012.
VASILÉVSKI, V. O hífen na separação silábica automática. Revista do Simpósio de Estudos
Lingüísticos e Literários - SELL, Uberaba, v.1, n.3, p.657-676, 2011a.
VASILÉVSKI, V. Diferenças entre Input e Intake: evidências na aquisição de pronomes
interrogativos. SIMPÓSIO INTERNACIONAL LINGUAGENS E CULTURAS:
HOMENAGEM AOS 40 ANOS DOS PROGRAMAS DE PÓS-GRADUAÇÃO EM
LINGÜÍSTICA, LITERATURA E INGLÊS DA UFSC (SILC). Anais... Florianópolis, 2011b.
Disponível em: <http://pos40anos.cce.ufsc.br/?page_id=958>. Acesso em: mar. 2012.
VASILÉVSKI, V. Divisão silábica automática de texto escrito baseada em princípios
fonológicos. III ENCONTRO DE PÓS-GRADUAÇÃO EM LETRAS DA UFS (ENPOLE).
Anais..., São Cristóvão, Sergipe, 2010.
VASILÉVSKI, V. Construção de um programa computacional para suporte à pesquisa em
fonologia do português do Brasil. 2008. Tese (Doutorado em Lingüística) – Universidade
Federal de Santa Catarina, Florianópolis.
VASILÉVSKI, V.; ARAÚJO, M. J. Tratamento dos sufixos modo-temporais na depreensão
automática da morfologia dos verbos do português. Linguamática, v. 3, n. 2, p.107-118, dez.
2011.
VASILÉVSKI, V.; ARAÚJO, M. J. Laça-palavras: sistema eletrônico para descrição do
português brasileiro. LAPLE-UFSC: Florianópolis, 2010-2011. Disponível em:
<https://sites.google.com/site/sisnhenhem/>. Acesso em: ago. 2012.
VASILÉVSKI, V.; SCLIAR-CABRAL, L.; ARAÚJO, M. J. Automatic Analysis of
Portuguese Verb Morphology: solving ambiguities caused by thematic vowel allomorphs.
THE 10TH INTERNATIONAL CONFERENCE ON THE COMPUTATIONAL
PROCESSING OF PORTUGUESE (PROPOR), Coimbra, Portugal. Proceedings of… 2012,
p.12-23.
WILKENS, R. e VILLAVICENCIO, A. I say have you say tem: profiling verbs in children
data in English and Portuguese. EACL – WORKSHOP ON COMPUTATIONAL MODELS
OF LANGUAGE ACQUISITION AND LOSS. Association for Computational Linguistics.
Avinhão, França, 24 abr. 2012. Proceedings... 2012, p.38-42.
15
Download