Um algoritmo prosódico para Português do Brasil Vera Vasilévski1, Márcio José Araújo2 1 2 Lingüística, Universidade Federal de Santa Catarina (UFSC), Florianópolis – SC, Universidade Estadual de Ponta Grossa (UEPG), Ponta Grossa – PR, Brazil Engenharia Eletrônica, Universidade Tecnológica Federal do Paraná – Curitiba, PR – Brazil [email protected], [email protected] Abstract. We present an algorithm that pinpoints the position of the pitch accent of the words of a text, processes these data, and displays them as a statistical report. Such resource works from the grapheme to phoneme conversion, thus, reads written texts translated into Brazilian phonological patterns. We estimate that it can be useful in surveys on the Portuguese accent, since the writing system is decoded into phonemes in reading, preserving prosody. Resumo. Apresenta-se um algoritmo que identifica a posição do acento de intensidade de cada palavra de um texto, processa esses dados e os dispõe em relatório estatístico. Esse recurso trabalha a partir da conversão grafemafonema, assim, analisa textos escritos traduzidos para o padrão fonológico brasileiro. Estima-se que ele seja útil na investigação dos fatos do acento em português, uma vez que o sistema escrito é decodificado em fonemas na leitura, preservando-se a prosódia. 1. Introdução A escrita é uma invenção humana, um sistema criado para registrar a fala. Os sistemas alfabéticos, além de registrar os fonemas por meio de letras e combinações de letras, também podem registrar o acento das palavras. Assim, ao se criar um sistema escrito para uma língua, procura-se representar foneticamente os sons da fala. Numa ortografia fonética, a cada som corresponderia uma letra ou grupo de letras únicos e a cada letra ou grupo de letras, um som único. Ainda, pelo menos no caso das línguas indo-européias, seria assinalada de algum modo a sílaba tônica [Carvalho 2008]. No entanto, as letras do alfabeto não bastam para representar os fonemas. Assim, recorre-se a combinações, como acentos gráficos nas vogais e juntar duas letras para denotar um fonema (os dígrafos) [Said Ali 1964]. A escrita tem forma única, sem sotaque, e deve cobrir todas as variedades de sua modalidade falada. Então, o critério que a rege, o qual procura representar aproximadamente os fonemas pelas letras e divide suas seqüências, é o fonológico. Nesse sentido, o sistema alfabético do português brasileiro atinge em torno de 95% de transparência [Vasilévski 2008, 2012a], ou seja, a previsibilidade da escrita em relação à fala é extremamente alta. Já o sistema de acentuação é mais transparente ainda, chega a 99% de previsibilidade [Vasilévski 2008, 2012a]. A partir disso, considera-se que dados 44 Anais da III Jornada de Descrição do Português, páginas 44–51, Fortaleza, CE, Brasil, Outubro 21–23, 2013. c 2013 Sociedade Brasileira de Computação escritos, uma vez reproduzidas tais correspondências grafêmico-fonêmicas, permitem estudar vários aspectos da língua falada, como a prosódia, que é foco deste trabalho. Assim, apresenta-se um algoritmo que identifica a posição do acento de intensidade de cada palavra de um texto de entrada, processa essas informações e as dispõe em relatório estatístico. O algoritmo trabalha com a língua escrita, porém, o faz a partir de sua conversão em símbolos do alfabeto fonético internacional, ou seja, considera seus critérios fonológicos. A título de exemplo, traz-se uma amostra de seu uso: a análise prosódica de dois textos brasileiros. 2. A Prosódia ou o Acento do Português Brasileiro A prosódia – ou organização dos fatos do acento – compreende os fenômenos distintivos que caracterizam e opõem as unidades de expressão mais longas do que o fonema isolado (sílabas, seqüências de sílabas, grupos). É uma parte da fonética e estuda a tonicidade dos sons reunidos, ou seja, a pronúncia das palavras [Malmberg 1993]. Acentuação é o modo de fazer sobressair um som dentre muitos no vocábulo ou na frase. Na língua portuguesa, há os acentos de intensidade (tônico) e de altura (musical), e a duração ocorre com a intensidade. O acento tônico resulta da expiração mais forte ao pronunciar sílabas, enquanto o acento musical ocorre na interrogação, exclamação, na linguagem emocional [Said Ali 1964]. A tonicidade (o acento) resulta de uma força maior expiratória ou intensidade de emissão da vogal de uma sílaba em contraste com as demais vogais silábicas. Em português, ela pode incidir na última, penúltima, antepenúltima ou, mais raramente, na quarta última sílaba de um vocábulo fonológico [Câmara Jr. 1986]. O vocábulo fonológico é bem delimitado em português, e sua marca nítida é o acento [Câmara Jr. 1986]. A posição tônica dá, plenamente, os traços distintivos vocálicos, e, em português, o vocábulo fonológico depende da força de emissão de suas sílabas. Essa força é que se chama acento [Câmara Jr. 1997]. A posição do acento não depende da estrutura fonêmica do vocábulo. Não há em português terminações de fonemas que imponham dada acentuação, há sim maior freqüência para dada terminação. No entanto, há um tipo de acentuação que caracteriza a língua portuguesa: o paroxítono, que confere à língua ritmo grave. A sílaba é a unidade superior, na qual os fonemas (vogais e consoantes) se combinam para funcionar na enunciação [Câmara Jr. 1997], de forma que, somente a partir dela, é possível estudar-se a prosódia propriamente. O sistema de acentuação gráfica é referência importante para a leitura. Apesar de o sistema de acentuação vigente no português do Brasil parecer, para muitos, complicar a escrita, ele facilita a leitura e torna a escrita mais coerente e objetiva, pois o sistema verbal tem dois lados: codificação e descodificação; escrita e leitura. A grande maioria das palavras da língua portuguesa é acentuada – ou seja, tem sílaba tônica –, mas esse acento não é marcado graficamente. Em sua essência, o sistema de acentuação gráfica do português remonta à proposta de Gonçalves Vianna, de 1911, que se guia pelo princípio de acentuar graficamente o menor número de palavras possível. Para tanto, considera a quantidade 45 de palavras existentes com as três tonicidades: oxítona, paroxítona e proparoxítona, apesar de, fonologicamente, a sílaba tônica poder ser a quarta última, como visto. Assim, palavras cuja tonicidade é rara são acentuadas graficamente, e pequena parte das palavras cuja tonicidade é freqüente tem acento marcado. Por isso, todas as proparoxítonas são marcadas, já que são as mais raras, e poucas paroxítonas são acentuadas graficamente, por serem as mais comuns. Ainda, boa parte das oxítonas é marcada, por ocuparem o segundo lugar na freqüência da língua portuguesa. A terminação da palavra, em seu modo escrito, é o critério que define a acentuação gráfica, à exceção de raros hiatos tônicos e acentos diferenciais. A tonicidade não marcada na grafia depende exclusivamente da terminação do vocábulo. Letras que não têm correspondentes na pronúncia não recebem acento gráfico. No português escrito, as palavras terminam em letras que representam vogal oral e nasal, ditongo oral e nasal e na letra “n”, seguidos ou não de “s”; e em “m”; “n”; “r”; “x”; “l”; “z”; “ps”. Os vocábulos mais numerosos são os paroxítonos que terminam com as letras “e”, “o”, “a” (/i/, /u/ e /a/), que representam vogais orais, seguidas ou não de “s”, então, não se acentuam palavras desse tipo. O restante das paroxítonas recebe acento gráfico para guiar a leitura. As letras “i” e “u”, quando figuram em final de palavra, revelam que a palavra é oxítona, se não for, ela recebe acento gráfico. Essas regras, e algumas outras, que cobrem terminações raras, funcionam em perfeita harmonia, para reproduzir graficamente o sistema prosódico do português. 3. Algoritmo Prosódico 3.1. Arquitetura O algoritmo que denominamos prosódico é o mais recente recurso inserido no programa de conversão grafema-fonema Nhenhém® (2008-2011) [Vasilévski 2008, 2012b]. O algoritmo principal do programa traduz textos escritos em ortografia oficial do português do Brasil em caracteres fonológicos, os quais ficam disponíveis para ser usados em outras aplicações. Nesse sentido, outros recursos do Nhenhém são: um relatório estatístico fonológico [Vasilévski 2008, 2012a, 2012b] e dois silabadores (um fonológico e um ortográfico) [Vasilévski 2010, 2011, 2012a], com relatórios silábicofonológicos [Vasilévski, Scliar-Cabral, Araújo 2013]. Além disso, o algoritmo principal do Nhenhém foi aplicado em outro programa para auxiliar a terapia de fala [Blasi, Vasilévski, 2011], [Vasilévski, 2012b]; e está sendo aplicado em um analisador morfológico de verbos portugueses [Vasilévski, Scliar-Cabral, Araújo 2012]. Esses recursos passam por aprimoramento constante, de forma a aumentar sua eficiência. Todas as regras de acentuação (correspondência grafêmico-fonêmica), vistas na seção 2, foram inseridas no algoritmo principal do conversor Nhenhém. A reprodução adequada do sistema prosódico do português do Brasil em meio eletrônico somente foi possível após se concluírem alguns pré-requisitos, isto é, etapas anteriores de sistematização fonêmica, que eram dependentes entre si. Primeiramente, converteram-se os grafemas em símbolos fonêmicos, após, inseriram-se as regras de acentuação, mas não foi possível trabalhar propriamente com a prosódia, porque o sistema marcava a vogal tônica, e não a sílaba tônica. Assim, inseriu-se o sistema silábico, e então foi possível abordar o acento de intensidade. 46 As etapas de execução do algoritmo prosódico são as seguintes, a começar em ‘Marcação prosódica’: Figura 1. Fluxograma das etapas de execução do algoritmo prosódico Após o texto de entrada estar dividido em sílabas fonológicas e com a sílaba tônica marcada, iniciam-se a classificação e a contagem das marcações de tonicidade. A resposta do programa a um texto de entrada apresenta-se, por ora, em forma de relatório estatístico-silábico-prosódico. O trecho de código da Figura 2 é parte do método que gera tal procedimento. O método numTonica (linha 240) retorna a posição da sílaba mais intensa da palavra contida na variável “s”. Esse processo consiste em verificar a classificação da posição da sílaba tônica, partindo da sílaba mais à direita para a mais à esquerda. Desse modo, o retorno para o comando do exemplo a seguir será T3, pois a marcação de tonicidade está na terceira sílaba mais à esquerda. Exemplo: numTonica(/'sɔ.li.daS/) 3. 2. 1. Entre as linhas 243 e 267 (Fig. 2), está a estrutura de seleção que classifica a tonicidade da sílaba atual. As sílabas átonas serão classificadas como T0, e a sílaba tônica será classificada conforme sua posição na palavra (T4, T3, T2 ou T1), em que T1 é a última sílaba da palavra e T4, a quarta última. 47 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 ... foreach (string s in palavras){ //Atribuição da classificação da tonicidade silábica tonica = cs.numTonica(s);//Retorna T0, T1, T2, T3 ou T4 string[] silabas = s.Split('.'); i = silabas.Count(); foreach (string ss in silabas){ #region Adição da sílaba em sua classe de tonicidade if ((int)tonica == i){ switch (tonica) { case 1: T1.Add(ss.Replace("'", "")); break; case 2: T2.Add(ss.Replace("'", "")); break; case 3: T3.Add(ss.Replace("'", "")); break; case 4: T4.Add(ss.Replace("'", "")); break; } } else{ T0.Add(ss.Replace("'", "")); } tempSil.Add(ss.Replace("'", "")); i--; } } //Quantidade de sílabas presentes no texto de entrada Total = tempSil.Count; //Filtro das silabas por forma distinta tempSilDist.AddRange(tempSil.Distinct()); ... Figura 2. Trecho de código para classificação da sílaba mais intensa A geração dos dados que farão parte do relatório se dá por meio de uma estrutura de armazenamento baseada em um processo de alimentação de listas. O método de listas foi escolhido por sua facilidade de implementação, por ser um método de alocação dinâmica e por ter atributos de contagem facilmente acessíveis [Nagel et al. 2008]. Ao todo, o programa alimenta sete listas. Além de ser adicionada a sua respectiva lista conforme a classificação (T0, T1, T2, T3 ou T4), toda sílaba é também inserida em uma lista geral quantitativa das sílabas do texto de entrada (lista tempSil, linha 265). A partir dessa lista, cria-se uma lista qualitativa (lista tempSilDist, linha 272), que será utilizada como fonte de consulta para as listas de classificação de acento, ou seja, T0, T1, T2, T3 e T4, a fim de se verificarem as respectivas posições de tonicidade para cada uma das sílabas contidas na lista qualitativa. Essa lista contém um exemplar de cada sílaba do texto de entrada, sem repetições. O resultado desse procedimento é exibido no relatório estatístico-prosódico. 48 3.2. Relatório estatístico-prosódico Como teste, aplicou-se o relatório prosódico à música Construção, de Chico Buarque, para a qual se obteve o resultado exposto na Tabela 1. Tabela 1. Dados prosódicos da música Construção Sílaba Si [...] 'ko [...] 'naw Totais % Ocorrências 60 [...] 24 [...] 1 606 100 T0 60 [...] 0 [...] 0 402 66,34 T1 0 [...] 0 [...] 0 71 11,72 T2 0 [...] 24 [...] 0 93 15,35 T3 0 [...] 0 [...] 1 40 6,60 T4 0 [...] 0 [...] 0 0 0,00 % 9,901 [...] 3,960 [...] 0,165 Essa música é composta por 606 sílabas, das quais 402 são átonas e 204, tônicas. Não há nela palavras acentuadas na quarta última sílaba (T4), e 40 palavras são proparoxítonas (T3). Há 71 palavras cuja intensidade cai na última sílaba, ou seja, são oxítonas (T1) e, como era de se esperar, a maioria das sílabas de intensidade das palavras, 93, é paroxítona (T2). A sílaba mais comum na música é /si/ (graficamente “se”) que aparece 60 vezes (9,901%), em nenhuma situação ela é tônica. Já a sílaba /'ko/ (graficamente “co”), é a sílaba tônica mais freqüente, presente em 24 versos da música, sempre paroxítona e primeira sílaba da palavra “como”. Ao aplicar esse algoritmo a um texto técnico, da área da construção civil, que contém 617 sílabas, ou seja, 11 sílabas além da quantidade existente na canção, obtevese o seguinte resultado: Tabela 2. Dados prosódicos do texto técnico Sílaba a [...] 'saw [...] pu Totais % Ocorrências 30 [...] 13 [...] 1 617 100 T0 30 [...] 0 [...] 1 444 71,96 T1 0 [...] 13 [...] 0 56 9,08 T2 0 [...] 24 [...] 0 101 16,37 T3 0 [...] 0 [...] 0 14 2,27 T4 0 [...] 0 [...] 0 2 0,324 % 4,862 [...] 2,107 [...] 0,162 A comparação dos dados obtidos a partir desses dois discursos leva a algumas conclusões. Por exemplo, o ritmo grave do português é atenuado na canção, pelas 40 sílabas T3, pois tal excesso contribui para o estilo poético da música, enquanto, no texto técnico, em que não há essa preocupação, ocorrem apenas 14 sílabas T3. Isso provoca uma relevante diferença de desvio padrão (σ), pois, consideradas as sílabas presentes nos dois textos, tem-se: σmúsica = 6,66 e σtécnico = 3,45. Esses dados podem ser visualizados de outra forma, como no gráfico da Figura 3, que mostra a distribuição das sílabas tônicas dos dois textos. Percebe-se que eles, embora sejam de gêneros diferentes, não fogem ao padrão acentual do português, dado o fato de a maioria de suas palavras ser paroxítonas (T2). A elas seguem as oxítonas (T1), então, vêm as proparoxítonas (T3) – que são raras em português –, e há representantes 49 das palavras acentuadas na quarta última sílaba (T4 “técnica” → /ˈtɛ.kʲ.ni.ka/) – raríssimas em português –, classificação não considerada na escrita, cabe lembrar. Quantidade de sílabas 100 80 60 40 20 0 T1 T2 T3 T4 Classificação da tonicidade da sílaba Texto técnico - 173 sílabas tônicas Música - 204 sílabas tônicas Figura 3. Distribuição das sílabas tônicas dos dois textos Há muito mais a ser extraído dos dados apresentados, no entanto, o objetivo maior aqui não é analisá-los, e sim validar o algoritmo prosódico em questão. 4. Conclusão Considera-se comprovado o potencial do algoritmo apresentado para auxiliar a investigação da língua falada, a partir de dados primários escritos. A análise aprofundada dos dados do relatório mostrado parece promissora aos estudos da prosódia do português brasileiro, em vários gêneros textuais. Esta é a primeira versão do algoritmo, que está em aperfeiçoamento, para permitir a visualização, sob distintas perspectivas, do acento em português brasileiro. Uma das propostas lingüísticas a ser testadas em breve é a pauta acentual ou prosódica [Câmara Jr. 1997], delineada em termos de algarismos, a fim de identificar a palavra fonológica. Câmara Jr. designa 3 e 2 para acentos fortes, 1 para a sílaba pretônica e 0 para as átonas após o acento. Apesar de datar de meados do século passado, tal proposta ainda não foi propriamente abordada, dada a falta de recursos técnicos. Referências Blasi, H.; Vasilévski, V. (2011). “Programa piloto para transcrição fonética automática na clínica fonoaudiológica”, Documentos para el XVI Congresso Internacional de la ALFAL, Universidad de Alcalá, Alcalá de Henares/Madri. Buarque, C. (1971). Construção. http://letras.mus.br/chico-buarque/45124/ Câmara Jr. J. M. (1986). Estrutura da língua portuguesa. 16.a edição, Petrópolis, Ed. Vozes. 50 Câmara Jr., J. M. (1997). Problemas de Lingüística descritiva. 16.a edição, Petrópolis, Ed. Vozes. Carvalho, J. A. Por que se usa m antes de p e b? http://www.4uatrominutos.com.br/ 2013/01/por-que-se-usa-m-antes-de-p-e-b.html. Acesso em: 13 jul. 2013. Malmberg, B. (1993). “A fonética: teoria e aplicações”. In Caderno de estudos lingüísticos, páginas 7-24, n.25, v.1, jul./dez., Campinas. Nagel, C.; Evjen, B.; Glynn, J.; Skinner, S.; Watson, K. (2008) “Collections”. In Professional C# 2008, Chapter 10, páginas 250-261, Indianapolis, Wiley Publishing, Inc. Said Ali, M. (1964). Gramática secundária e Gramática histórica da língua portuguesa. 3.a edição. Brasília, Editora da UnB. Scliar-Cabral, L.; Vasilévski, V. (2011) “Descrição do português com auxílio de programa computacional de interface”. In Anais da II Jornada de Descrição do Português (JDP), Cuiabá, Brazil. Vasilévski, V. Scliar-Cabral, L. Araújo, M. J. (2013). “Phonologic and Syllabic Patterns of Brazilian Portuguese extracted from a g2p decoder-parser”. In International Journal of Advanced Computer Science (IJACSci), v. 3, n. 8, August. http://www.ijpg.org/index.php/IJACSci/article/view/469/0 Vasilévski, V. Scliar-Cabral, L. Araújo, M. J. (2012). “Automatic Analysis of Portuguese Verb Morphology: Solving Ambiguities Caused by Thematic Vowel Allomorphs”. In Caseli, A. et al (Orgs). Computational Processing of the Portuguese Language. Proceedings of the 10th International Conference, PROPOR, páginas 1223, Coimbra, Portugal. Vasilévski, V. (2012a). Descodificación automática de la lengua escrita de Brasil basada en reglas fonológicas. Saarbrücken, Editorial Académica Española. Vasilévski, V. (2012b). “Phonologic Patterns of Brazilian Portuguese: a grapheme to phoneme converter based study”, Proceedings of the EACL, Workshop on Computational Models of Language Acquisition and Loss. University of Avignon, France. Vasilévski, V. (2011). “O hífen na separação silábica automática”, In Revista do Simpósio de Estudos Lingüísticos e Literários – SELL, páginas 657-676, v.1, n.3. Vasilévski, V. (2010). “Divisão silábica automática de texto escrito baseada em princípios fonológicos”, In Anais do III Encontro de Pós-graduação em Letras da UFS (ENPOLE), São Cristóvão, Sergipe, Brasil. Vasilévski, V. (2008). Construção de um programa computacional para suporte à pesquisa em fonologia do português do Brasil. Tese (Doutorado em Lingüística), Universidade Federal de Santa Catarina, Florianópolis, Brasil. 51