Braga, D. & Marques, M.A. 2007. "Desambiguacao de homógrafos para Sistemas de conversao Texto-Fala em Portugués", Diacritica, 21.1 (Série Ciéncias da Linguagem) Braga: CEHUM/Universidade do Minho, pp 25-50. Desambiguador de Homógrafos Heterófonos para Sistemas de Conversáo Texto-Fala em Portugués Daniela Braga e Maria Aldina Marques Microsoft Language Development Center (MLDC), Universidade do Minho i-dbraga@microsoft.com, mamarquesSilch.uminho.pt Abstract: In this paper, a tool for homograph disambiguation in Portuguese Text-to-Speech (TTS) is proposed. This tool works with a part-of-speech parser, used to disambiguate homographs that belong to different parts-of-speech, and a semantic analyzer, used to disambiguate homographs which belong to the same part-of-speech. This linguistically rule-based methodology will be soon adapted to Brazilian Portuguese, since it involves very little changes. In future work, it is our goal to apply it to other Iberian Languages, such as Galician, Catalan and Mirandese. The proposed algorithms are meant to solve a significant part of homograph ambiguity in European Portuguese (82 pairs of homographs so far). This system is ready to be integrated in a Letter-to-Sound converter. The algorithms were trained with three different corpora (CETEMPublico, COMPARA and EUROPARL-Opus) and tested with Natura-Diario do Minho corpus. The obtained experimental results gave rise to 96.9% of accuracy rate. This paper is structured as following: in section 1, an introduction and state-of-the-art is done; in section 2, the architecture of the homograph disambiguation system in articulation with a TTS system is described; in section 3, the methodology used in the construction of homograph disambiguation algorithms is explained; in section 4, test results are shown and discussed; in section 5, main conclusions and future work are presented. Palavras-Chave: Síntese de Voz, Conversäo Texto-Fala, Text-to-Speech, homógrafos heterófonos, desambiguacao, análise morfossintáctica, análise semäntica. 1. Caracterizagäo do Problema e Estado da Arte Tal está, morta, a pálida donzela, Secas do rosto as rosas e perdida A branca e viva cor, co a doce vida. (Camôes, Os Lusíadas, III, 134) Este breve excerto saído do trágico episódio do assassínio de Inés de Castro, lapidarmente imortalizado por Camôes, contém duas palavras, e , cuja decisäo de pronúncia depende do conhecimento morfossintáctico e semäntico respectivamente. Sem essa informacäo, nem o falante nem um sintetizador de fala poderá decidir se deve ler a palavra com vogal tónica aberta ou fechada. A ambiguidade dos homografos heterofonos, exemplificada em pares do tipo [e]1 e [E]; [o] e [0], ou [o] e [O], representa um problema de dificil resolucao nos sistemas de conversao Texto-Fala, sendo responsavel por uma consideravel taxa de erro. O que acontece e que a transcricao ortografica automatica, independentemente da abordagem que esteja a ser utilizada, produz erros, ja que gera apenas um output (um fone) para cada input (grafema ou conjunto de grafemas), embora, no caso dos homografos, devesse ser capaz de escolher entre dois outputs, consoante o contexto morfossintactico ou semantico do homografo em causa. O problema da desambiguacao de homografos e realmente complexo porque depende de informacao morfossintactica na maior parte dos casos. Nos pares [o]/ [0], a diferenca de timbre da vogal tonica correlaciona-se com o facto de as palavras pertencerem a classe gramatical de nome e verbo, respectivamente. Por vezes, a desambiguacao de homografos so pode ser feita com recurso a informacao semantica (entre palavras da mesma categoria gramatical como [e]/[E] ou [e]/ [E]), sendo esta considerada de mais alto nivel e de mais dificil implementacao computacional. No excerto seguinte (in Huang et al., 2001:724), saido de uma das obras mais reputadas da actualidade na area do processamento da fala, os autores mostram precisamente que a classificacao morfossintactica da palavra nem sempre e suficiente para determinar a leitura do homografo, mesmo para os proprios falantes: "Homograph variation can often be solved on POS2 (grammatical) category. Examples include object, minute, bow, bass, absent, etc. Unfortunately, correct determination of POS (whether by parsing system or statistical methods) is not always sufficient to resolve pronunciation alternatives. For example, simply knowing that the form bow is a noun does not allow us to distinguish the pronunciation appropriate for the instrument of archery from that for the front part of a boat. Even more subtle is the pronunciation of read in "If you read the book he'll be angry". Without contextual clues, even human readers cannot resolve the pronunciation of read from the given sentence alone." (Huang etal., 2001:724) Ora, enquanto este tipo de conhecimento linguistico vai sendo adquirido e interiorizado pelo ser humano de forma mais ou menos desorganizada desde a infancia, atraves de um processo psico-cognitivo muito complexo, o mesmo nao acontece com o computador, que necessita de uma metodologia de aprendizagem muito controlada e estruturada. A dificuldade inerente a este problema parece explicar a escassez de trabalhos publicados sobre o assunto. O trabalho de referenda sobre a questao da desambiguacao de homografos em sistemas de TTS e da autoria de David Yarowsky (1996), a partir do qual o autor estabelece uma tipologia de pares de homografos para o Ingles, enuncia as varias tecnicas tradicionalmente utilizadas para resolver a questao da desambiguacao de homografos 1 A transcricao fonetica usada neste trabalho segue o alfabeto SAMPA (Computer Readable Phonetic Alphabet) para Portugues (dispomvel em: http://www.phon.ucl.ac.uk/home/sampa/portug.htm), acrescido da extensao [1*] para representar a lateral velarizada em situacao implosiva presente na palavra . 2 POS (Part-of-Speech), tambem usado por Lyons (1977) equivale a "categoria gramatical" ou "categoria morfologica" da palavra ou ainda"partes do discurso", na Gramatica Tradicional. 2 (N-Gram taggers, classificadores Bayesianos e árvores de decisäo) e propöe um algoritmo hibrido, que combina o melhor dos trés paradigmas previamente descritos. Dos principals artigos publicados sobre a problemática da desambiguacäo de homógrafos no Portugués aplicada a sistemas TTS, destacam-se as propostas de Ribeiro et al. (2002, 2003) para o PE, Seara et al. (2001, 2002) e Barbosa et al. (2003) e Ferrari etal. (2003) para o PB. Os trabalhos de Ribeiro et al. (2002, 2003) näo se debrucam especificamente sobre o problema da desambiguacäo de homógrafos, mas antes sobre a influéncia da informacäo morfossintáctica no melhor desempenho dos sistemas de TTS e, particularmente na desambiguacäo de homógrafos heterófonos. No trabalho de 2002, Ribeiro et al. comparam dois analisadores morfológicos, um que segue uma abordagem probabilística e outro que segue uma abordagem híbrida (probabilística e por regras linguísticas). Os resultados parecem mostrar um melhor desempenho global da abordagem híbrida. Apresenta-se ainda uma tabela com uma tipologia de ambiguidades morfossintácticas que influenciam o módulo de análise fonética, ou seja, o conversor grafema-fonema. No entanto, nenhum caso classificado de ambiguidade é acompanhado de exemplos, pelo que näo se percebe quando se trata de ambiguidade morfossintáctica decorrente da homonímia, ou ambiguidade morfossintáctica decorrente da homografia heterófona. A actualizacäo do mesmo trabalho publicada em 2003 vem precisamente corroborar que a desambiguacäo morfossintáctica analisada é, essencialmente, a desambiguacäo de palavras homónimas, o que tem pouco impacto ao nível dos módulos de conversäo graféma-fone dos sistemas de TTS, visto näo ter consequéncias na articulacäo da palavra. Este trabalho mostra, no entanto, o impacto que a resolucäo de ambiguidade morfossintáctica pode ter ao nível do módulo de geracäo prosódica, ao ser capaz de distinguir palavras conteúdo e palavras funcäo, com impacto no foco da fräse, e ao possibilitar a delimitacäo dos grupos prosódicos. Ferrari et al. (2003) propöem uma metodologia linguística, assente na Gramática Cognitiva, para solucionar a questäo da variacäo fonética dos homógrafos heterófonos, com base na análise de corpora. A análise centra-se na identificacäo e programacäo das construcöes sintácticas vizinhas esperadas, partindo apenas da análise do contexto: "Since the nouns [sedi] and [sEdi ] can take part in noun phrases, prepositional phrases or verb phrases, the analysis focused on different types of constructional Schemas that are relevant for the distinction between them." (Ferrari et al., 2003) Esta abordagem permite efectuar desambiguacäo näo só morfossintáctica como semäntica. Contudo, revela-se pouco económica, dado necessitar de um estudo de ocorréncias contextuais análogo para cada par de homógrafos heterófonos, o que näo contribui para a desejável programacäo optimizada dos algoritmos que devem compor o módulo de conversäo grafema-fone. Nos trabalhos de Seara et al. (2001, 2002), desenvolve-se, através de uma abordagem linguística, um parser ou analisador morfossintáctico com vista a resolver a questäo da alternäncia vocálica existente em formas nominais e verbais. Trata-se de um trabalho muito interessante e importante para a resolucäo da ambiguidade presente em alguns tipos de homógrafos heterófonos, por um lado, e de resolucäo da alternäncia vocálica ao longo da flexäo verbal, como em [e]/[E]. No entanto, este trabalho näo abränge os casos em que a desambiguacäo de homógrafos heterófonos se estabelece semanticamente. No presente trabalho, fizemos uma re-estruturacäo da tipologia enunciada em Seara et al. (2001, 2002), adaptando-a apenas a casos de homografia 3 heteröfona e aumentando a cobertura dos pares de homögrafos, atraves da integracäo da anälise semäntica. 2. Arquitectura do Sistema O desambiguador de homografos heterofonos constitui uma componente do modulo de Analise e Transcricao Fonetica (vide Figura 1), articulando-se directamente com o Conversor Grafema-Fone . Esta componente insere-se na parte que se designa por front-end ou pre-processamento do texto e faz a conversao do texto em etiquetas foneticas, as quais sao seguidamente interpretadas pelo motor de sintese ou back-end. Uma base de dados de voz ou voice font, foneticamente etiquetada, fornece os sons da lingua, fones, difones ou outras unidades, que o motor de sintese transforma e faz corresponder as etiquetas foneticas, gerando assim voz sintetica. Texto 5 •Desambiguadorde homografos •Analisador morfolögico •Leitorde estrangeirismos •Conversor grafema-fone •Ma read or de tonicidade •Divisor silabico Anälise do texto \ _ Transcricäo Fonetica Base de dados de voz Front-end Geracäo Prosödica X J L Back-end J Voz sintetica •Detectorda estrutura do documento •Normalizadordo Texto •Modelos de entoaeäo, duracoese intensidade •Determinacäo do Foco •Gerac-äo dasemocSes Figura 1: Esquema da arquitectura de um sistema de conversao Texto-Fala. Porem, cada uma das componentes que fazem parte dos mödulos do sistema constitui uma ferramenta complexa, que funciona quer individualmente, quer articuladamente com os outros mödulos do sistema. Na Figura 2, que passaremos a descrever, pode ver-se a estrutura do Desambiguador de Homögrafos Heteröfonos. O Desambiguador pode ser encarado como uma parte do Analisador Morfolögico. Na verdade, o seu funcionamento estä dependente da anälise morfossintäctica, como ilustra a Figura 2, por ser necessärio indentificar as categorias gramaticais das palavras que ocorrem ä esquerda e ä direita do homögrafo em anälise. 3 Tambem designado por Conversor LTS (Letter-to-Sound) ou G2P (Grapheme-to-phone/me). 4 Texto Análise morfossintáctica Biblioteca homógrafos heterófonos D Algoritmos de desambiguacäo de homógrafos (Bibliotecas f combinatórias f 1 lexicais V I restritas J (Bibliotecas de / A wordnets l i C Transcrifäo fonética da vo; tónica do homógrafo gär^ Análise semántica Figura 2: Arquitectura do Desambiguador de Homógrafos Heterófonos. A partir da observacáo da Figura 2, pode ver-se que o input do sistema é o texto que é separado palavra a palavra. A seguir, um algoritmo de busca encarrega-se de verificar se existem homógrafos no texto de entrada e de identificar o seu tipo, através da consulta ä biblioteca de homógrafos heterófonos. Estáo até ao momento identificados 21 tipos de homógrafos, que säo apresentados no ponto 3, o que faz com que haja 21 outputs possíveis nesta fase do sistema. O passo seguinte consiste em fazer passar o homógrafo em questäo pelo algoritmo de desambiguacäo que lhe foi atribuído. Estes algoritmos consistem em árvores de decisáo que formulam várias perguntas relativas ao contexto morfossintáctico do homógrafo e que, com base nas respostas, permitem decidir a sua pronúncia, como será descrito no ponto 3. Para determinar a categoria gramatical das palavras vizinhas, o sistema consulta o Analisador Morfossintáctico, que é constituído por várias bibliotecas e por regras morfossintácticas que permitem gerar a classificacáo gramatical. Fazem parte do Analisador Morfológico as seguintes bibliotecas: 1. Biblioteca das classes fechadas, ou seja, as categorias gramaticais cujos itens lexicais existem em numero finito e que dificilmente admitem formacáo de novas palavras. Nestas bibliotecas náo se incluiram as palavras que apresentam homonímia gramatical, como por exemplo , , , , , , , , , , entre outras. Desta biblioteca foram consideradas as seguintes classes: a. preposicóes (PREP) b. advérbios (ADV) e advérbios de quantidade (ADV_Q) c. contraccóes de preposicäo com determinante/pronome (CONT) 5 d. conjuncöes subordinativas (C_S) e locucôes conjuncionais subordinativas (Loc_S) e. conjuncöes coordenativas (C_C) e locucôes conjuncionais coordenativas (Loc_C) f. determinantes artigos indefinidos (ART_IND) g. pronomes e determinantes demonstrativos (DEM) h. pronomes e determinantes possessivos (POSS) i. pronomes e determinantes indefinidos (IND) j. pronomes e determinantes interrogativos (INT) k. numerais (NUM) 1. pronomes pessoais sujeito (P_PES_SU) e pronomes pessoais objecto (P_PES_0_1)4, (P_PES_0_2)5, (P_PES_0_3)6 m. pronomes relativos (P_REL) n. interjeicôes (INTJ) 2. Biblioteca de afixos7, constituída pelas seguintes sub-classes: a. Sufixos Nominais (Des_N), Adjectivais (Des_Adj) e Adverbiais (Des_Adv) b. Sufixos verbais (Des_V) c. Prefixos Portugueses (Pref_PT) d. Radicais gregos e latinos (R_GL) 3. Bibliotecas de verbos irreguläres, contendo as formas dos principais verbos irreguläres. 4. Biblioteca de expressôes impessoais (Exp_Imp), contendo expressôes constituídas por verbo ser na 3a pessoa seguido de adjectivo (ex: <é importante>). Estas expressôes regem oracôes completivas integrantes ou infinitivas, permitindo assim prever a sua sintaxe. 5. Biblioteca de lemas8, constituída pelo dicionário Jspell9 para o Portugués, com cerca de 34000 palavras, anotado morfologicamente, que resultou do projecto 4 Pronomes pessoais objecto que näo sofram processos de assimilacäo resultantes da co-articulacäo com formas verbais (ex: , , , ...). 5 Pronomes pessoais objecto na terceira pessoa que softem assimilacäo no contacto com formas verbais com <-r>, <-s>, e <-z> em situacäo implosiva (ex: ). 6 Pronomes pessoais objecto na terceira pessoa que sofrem assimilacäo no contacto com formas verbais com nasal ou ditongo em situacäo implosiva (ex: compram-no). 7 Entendemos o conceito de afixo como constituinte morfolögico que se associa ao radical e tema, os constituintes bäsicos da palavra, segundo uma perspectiva inovadora da Teoria X-Barra aplicada ä Morfologia do Portugues por Alina Villalva: "No Portugues, os afixos disponiveis säo prefixos, quando ocorrem na periferia esquerda da forma de base (...), e sufixos, quando se encontram ä direita da forma de base." (inMateus, etal. 2003: 941). 8 Segundo Iriarte (2001: 30) "O lema (entrada ou vedeta) poderä ser qualquer palavra, conjunto de palavras, signo, letra, conjunto de letras ou signos que encabecam um artigo de dicionärio, enciclopedia, indice, ficha, etc., e que e objecto de definicäo, explicacäo, tratamento enciclopedico ou, no caso dos dicionarios bilingues, do qual se fornece um equivalente noutra lingua (...)". Neste sentido, o lema pode corresponder a uma palavra (ex: hierro), uma sigla (ex: DNI) ou um sintagma (ex: caminho de ferro) (Iriarte, 2001:300). Na nossa biblioteca corresponde apenas a palavras. 9 Sobre o Jspell: "O Jspell e um analisador morfolögico open source para sistemas baseados em UNIX, baseado no Ispell, que permite mediante diversos tipos de interface analisar morfologicamente ou corrigir 6 Natura, ainda em curso , levado a cabo por investigadores do pólo de Braga da Linguateca11, Jose Joäo Almeida, Alberto Simöes e Rui Vilela. Contam-se entre as principals fontes para a constituicäo das bibliotecas de classes fechadas e morfemas as obras de Cunha & Cintra (1992), Estrela et al. (2004) e Bergström et al. (1997). As bibliotecas de verbos irreguläres partiram da lista de verbos irreguläres disponivel no pacote Jspell, estando em processo de ampliacäo manual com apoio bibliográfico (Nogueira, 1994). A identificacäo do homógrafo faz-se através da consulta ä Biblioteca de homógrafos, que ainda está em fase de expansäo. Esta biblioteca contém 82 lemas com a informacäo do tipo de homógrafo a que pertencem, a que corresponde um algoritmo de decisäo. Se a palavra em questäo estiver na lista de homógrafos, é encaminhada para o seu respectivo algoritmo de decisäo. A análise morfossintáctica ocorre sempře que os homógrafos pertencam a classes gramaticais distintas. Neste caso, consultam-se as bibliotecas da Figura 2 que säo responsáveis pela análise morfossintáctica do texto. Mas sempre que os pares de homógrafos pertencam ä mesma categoria gramatical, a análise morfológica dá lugar a análise semäntica, operada pela consulta das bibliotecas de combinatórias lexicais restritas12 e as bibliotecas de Wordnets, cujo funcionamento será descrito no ponto 3. As bibliotecas de combinatórias lexicais restritas abrangem, segundo a designacáo de 13 Martě (2001), os frasemas completos (ou expressóes idiomáticas) (ex: "cor de burro quando foge".), os semi-frasemas (ou colocacöes)14 (ex: "pregar um susto") e os quase- a ortografia de um texto. Estä orientado para o processamento de textos/palavras da lingua portuguesa. (...) O Jspell estä disponivel para lingua portuguesa, inglesa, e latim, sob a licenca GNU GPL2.0s dicionärios näo pretendem cobrir "todo" o vocabulärio existente, apenas as formas mais frequentes. As palavras cuja terminologia e demasiado especifica e raras, näo säo incluidas no dicionärio. (...) O dicionärio para o Portugues (1995), morfologicamente anotado, foi construido a partir da extraccäo de palavras de material academico da Universidade do Minho, como teses de Doutoramento e Mestrado, corpora jornalistico Portugues de Portugal disponivel publicamente, listas de nomes püblicas, e diverso material livre de direitos de autor. Numa segunda fase, modificacöes individuals consoante o criterio dos autores, recurso ä consulta de prontuärios, dicionärios de definicöes, lista de frequencias, sugestöes de utilizadores, cruzamento e validacäo de palavras com a colaboracäo de entidades externas." (in: http://linguateca.di.uminho.pt/jspell/jsolhelp.pl) 10 Disponivel para download em: http://natura.di.uminho.pt/wiki/index.cgi7jspell. 11 Para mais informacäo sobre o pölo de Braga da Linguateca, consultar http://linguateca.di.uminho.pt/. 12 A combinatöria lexical restrita e uma unidade pluriverbal em que os seus elementos se combinam para produzir um determinado sentido e que, se forem truncadas ou um dos seus elementos substituidos, se torna agramatical. Iriarte, a propösito dos sintagmas"mudanca radical", "dar um passeio" e "leite gordo", explica: "E evidente que este tipo de combinacöes lexicais näo säo totalmente livres, como fica evidenciado pelos casos agramaticais que acompanham cada exemplo (*fazer um passeio, etc.). Estamos perante casos de combinatöria lexical restrita (as chamadas colocacöes) (...)"(Iriarte: 2001: 139). 13 Segundo Iriarte (2001: 174): "Uma expressäo idiomatica ou frasema completo AB ("ser o braco direito de") e uma combinacäo de dois ou mais lexemas A (braco)e B (direito), cujo significante e a sima regular dos significantes dos lexemas constituintes /A+B/ (braco+direito), mas cujo significado näo e a esperada uniäo regular de A e B (...), mas um significado diferente 'C ('[ser o] auxiliar principal' ou 'principal colaborador') que näo inclui nem 'A' nem 'B'.". 14 Ainda segundo o mesmo autor: "(...) uma colocacäo, ou semi-frasema, AB e uma combinacäo de dois ou mais lexemas A e B, cujo significante e a soma regular dos dois significantes dos lexemas constituintes /A + B/, e cujo significado 'X' inclui o significado do lexema A mais um significado 'C ('X'='A+C'), de tal maneira que o lexema B que exprime 'C näo e seleccionado livremente. Numa colocacäo, pensemos, por exemplo, em ödio mortal, um dos seus constituintes, A (ödio), e seleccionado pelo falante por causa do seu significado, que e conservado intacto; mas o segundo elemento constituinte 7 frasemas (ex: "boca do lobo"). Destas bibliotecas constam ainda os proverbios (ex: "Gato escaldado de agua fria tern medo"). Estas bibliotecas foram construidas, para cada par de homografo, a partir da analise de varios corpora electronicos, designadamente o corpus jornalistico do CETEM-Publico16, o COMPARA17 (corpus paralelo em Portugues e em Ingles constituido por textos literarios e suas traducoes) e o 18 EUROPARL - Opus (constituido por transcricoes dos debates do parlamento europeu; corpus alinhado para 12 lfnguas). As bibliotecas de Wordnets19, obtidas pelo mesmo processo que as anteriores, procuram reunir palavras semanticamente relacionadas previsiveis de co-ocorrerem com a palavra a que se ligam. A cada homografo com a mesma categoria gramatical sao-lhe associadas uma biblioteca de combinatorias lexicais restritas e uma Wordnet. 3. Algoritmos de Desambiguagäo de Homógrafos Heterófonos 3.1. Metodológia Este trabalho foi iniciado com uma recolha exaustiva de pares de homógrafos em todas as fontes bibliográficas encontradas, desde gramáticas prescritivas a prontuários, visto que o bom desempenho do nosso desambiguador depende da presenca do homógrafo em análise na nossa biblioteca de homógrafos. No entanto, neste tipo de bibliografia, os homógrafos säo tratados sempre da mesma forma e usando sempre os mesmos exemplos clássicos. A nossa lista foi assim sendo ampliada através de sucessivos testes ao conversor grafema-fone (Braga et al., 2006), ainda em desenvolvimento, que nos permitiram identificar os actuais 82 homógrafos que compóem a nossa lista até ä data de redaccäo do presente trabalho. A fase seguinte consistiu na organizacäo dos homógrafos por tipos, de acordo com a natureza da sua oposicäo e com a alternäncia fonética que continha. A cada tipo fez-se B (mortal), significa 'C ('intenso'), diferente de 'B' (que causa ou pode causar a morte). Fora da colocacao AB, B (mortal) nao seria usado para exprimir C ('intenso') (...)" (Iriarte, 2001: 176) 15 Os quase frasemas "sao frasemas em que, para alem de se conservarem os sentidos dos lexemas que os constituem, acrescenta-se um novo sentido que nao é dedutível da simples soma dos sentidos dos lexemas constituintes(...)• Sao exemplos de quase-frasemas, tecto falso (...), onde para alem dos sentidos 'tecto' e 'falso' temos também o sentido 'para isolar acústica e termicamente' (...)" (Iriarte, 2001: 181-182). 16 Disponivel em: http://www.linguateca.pt/. 17 Disponivel em: http://www.linguateca.pt/COMPARA/BuscaSimples.html 18 Disponivel em: http://logos.uio.no/cgi-bin/opus/opuscqp.pl?corpus=EUROPARL;lang=pt 19 O conceito de Wordnet surgiu da designa^ao de uma base de dados de palavras, construída para o Inglés sob direec, ao de George A. Miller, constituida por palavras (nomes, verbos, adjectivos, advérbios) agrupadas por rela^oes semánticas de base cognitiva, cada uma expressando um conceito. Cada palavra cria uma rede de outras palavras e conceitos, através da qual é possível navegar. Trata-se de um recurso muito útil para o processamento da linguagem natural. A Wordnet é open source e está disponivel em: http://wordnet.princeton.edu/.Está em curso o projecto de cria^ao de uma Wordnet para o Portugués , no Centra de Linguistica de Lisboa (http://www.clul.ul.pt/clg/projectos/WordNet.PT-I.html), mas com resultados ainda nao disponibilizados. 20 Segue-se a lišta obtida até á redac^ao deste trabalho, ordenada alfabeticamente: aborto, aceno, acerto, acordo, adorno, almo^o, apelo, aperto, apre^o, arrepelo, arrojo, arroto, besta, boto, cerca, choco, choro, colher, comedo, concerto, conserto, consolo, contorno, cor, coro, corte, desemprego, despojo, desses, deste, destes, destroy, emprego, encosto, erro, esfor^o, espeto, este, estorvo, folgo, fora, forma, gelo, golo, gosto, governo, interesse, interesses, jogo, leste, lobo, logro, medo, meta, modelo, molho, namoro, olho, pegada, peso, piloto, pregar, reformo, rego, remo, rogo, rola, rolo, seco, sede, selo, sobre, soco, sopro, suborno, termos, testo, toco, topo, torno, troco, trcxjo. 8 corresponder um algoritmo de decisáo. A nível da implementacáo, verificou-se que os algoritmos podiam ser agrupados em menos tipos, uma vez que o conjunto de perguntas era o mesmo, por exemplo, para homógrafos que pertencessem á mesma categoria gramatical, mudando apenas a saída fonética, tal como acontece com os algoritmos 1 e 2. Sáo também muito semelhantes os algoritmos cuja saída é verbo, sendo que a única alteracáo se verifica em pequenos detalhes, consoante o homógrafo é uma forma verbal na la ou na 3a pessoas do Presente do Indicativo (ex: e ). Seguidamente, procedeu-se á elaboracáo de regras sintácticas de desambiguacáo de homógrafos. Este processo foi acompanhado de buscas electrónicas em corpora, no sentido de validar e consolidar as nossas intuicóes linguísticas. Usaram-se o CETEM-Público (corpus jornalístico), o COMPARA (corpus literário) e do EUROPARL - Opus (corpus de debate parlamentar). Esta diversidade de corpora pareceu-nos importante para encontrar mais concordáncias em contexto e contextos mais diversificados decorrentes dos diferentes tipos de texto. Čada homógrafo foi inserido no sistema de busca disponibilizado. O sistema apresentou, em seguida, o numero e as ocorréncias da palavra em contexto, permitindo assim confirmar regras e verificar mais casos. Finalmente, os algoritmos foram implementados e o seu desempenho foi testado, como se descreverá no ponto 4. 3.2. Tipologia de homógrafos heterófonos Nas tabelas 1 e 2 que se seguem, apresentam-se as tipologias de homógrafos consideradas. Na tabela 1, estáo listados os homógrafos cuja desambiguacáo se estabelece pela identificacáo da categoria gramatical da palavra. Os tipos 1 e 2 sáo os que encerram maior numero de pares, uma vez que, em Portugués, a maior parte dos homógrafos ocorre em oposicóes de Nome masculino singular versus Verbo na primeira pessoa gramatical do Presente do Indicativo. Do total de 82 pares de homógrafos, 54 pertencem aos tipos 1 e 2, ou seja, 66% do total de homógrafos. Estes dois primeiros tipos apresentam algoritmos de desambiguacáo iguais, diferindo apenas na saída fonética. A oposicáo gramatical mais produtiva é, assim, a que opóe Nome a Verbo, presente também nos tipos 3, 4, 8, 12, 13 e 14, embora os dois últimos apresentem uma alternáncia tripartida, uma vez que o homógrafo pode desempenhar trés funcóes gramaticais. Do ponto de vista da alternáncia vocálica, as oposicóes mais produtivas sáo as que se estabelecem ao nível da vogal do radical, opondo sistematicamente as vogais orais semi-fechadas [e] e [o] as vogais orais semi-abertas [E] e [O], respectivamente. De salientar, é o facto de nos Nomes as vogais do radical sérem frequentemente semi-fechadas, ao passo que nas formas verbais elas se tornám invariavelmente semi-abertas. O tipo 13 é um caso particularmente complexo de desambiguacáo, porque necessita de análise semántica para a oposicáo [o] e [O], que se trata da mesma categoria gramatical, e de análise morfológica para distinguir estas palavras da correspondente forma flexionada do verbo na terceira pessoa do singular do Presente do Indicativo. Como se pode depreender da análise da Tabela 1, outras oposicóes gramaticais (tipos 5, 6, 9, 11) e vocálicas (tipo 12) sáo possíveis também. 9 É ainda de destacar o facto de os homógrafos de tipo 12 näo apresentarem alternäncia na vogal tónica, mas sim na vogal pré-tónica. A Tabela 2 exibe os pares de homógrafos cuja desambiguacäo se estabelece por critérios semänticos, recorrendo portanto a bibliotecas de combinatórias lexicais restritas e bibliotecas de Wordnets, que foram constituídas através da análise dos corpora supra mencionados. Tipo Categoria gramatical da oposiQäo Exemplo Alternäncia vocálica da oposiQäo 1 Nome (masc. sing.) /Verbo (la p.s. Pres. Ind.) O erro foi corrigido. Eu erro muito. [e] Nome / [E] Verbo Nome (masc. sing.) Tens um olho vermelho. [o] Nome/ [O] Verbo L /Verbo (la p.s. Pres. Ind.) Eu olho para ele muitas vezes. Nome (fem. sing.) /Verbo Vi uma rola branca. [o] Nome/ [O] Verbo (3a p.s. Pres. Ind.) A pedra rola. 4 Verbo/Nome Vou colher morangos. Falta-me uma colher. [e] Verbo / [E] Nome 5 Contraccäo/Verbo Quero um desses. Se tu me desses um beijo... [e] Contraccäo / [E] Verbo 6 Verbo/ Adverbio Antes ele fora medico. Lá fora está frio. [o] Verbo/ [O] Advérbio 7 Adj. ouNome/ Verbo(la p.s. Pres. Ind.) O päo está seco. Eu seco a roupa no estendal. [e] Adj., N/[E] Verbo 8 Adj. ou Nome/ Verbo(la p.s. Pres. Ind.) Tem o pé boto ? Eu boto sal nos bolos. [o] Adj., N/ [O] Verbo Q Demonstrativo/ Nome ou Este carro é meu. [e] Dem. / [E] Adj., N y Adj. Norte, sul, este, oeste. 10 Verbo /Adj. ou Nome Leste o anúncio? Fica virado a leste. [e] Verbo / [E] Adj., N 11 Preposicäo/Verbo Falou sobre a vida. Espero que näo sobre. [o] Prep./ [O] Verbo 12 Verbo ou Adj./ Nome Foi conversa pegada. Vi pegadas de dinossauros. [@] Verbo./ [E] Nome 13 Nome/Nome/Verbo Tira o bolo da forma. Essa forma é circular. [o] Nome/ [O] Nome/ [O] Verbo Ele forma os alunos. 14 Prep./ Nome/ Verbo Vi cerca de dois lobos. A cerca é de madeira. Ele cerca o castelo. [e] Prep./ [e] Nome/ [EJVerbo Tabela 1: Tipos de homógrafos pertencentes a classes morfossintácticas diferentes. A oposicäo gramatical é essencialmente estabelecida entre Nomes com significados diferentes (excepto no tipo 21, que opöe Verbo a Verbo), ao passo que a alternäncia vocálica ocorre sistematicamente entre as vogais orais semi-fechadas [e] e [o] e as vogais orais semi-abertas [E] e [O], respectivamente. Seja como for, a estratégia de análise semäntica foi também utilizada para auxiliar na desambiguacäo de homógrafos de tipo 6, 13 e 14, uma vez que a análise morfossintáctica se revelou insuficiente. A desambiguacäo semäntica é feita caso a caso, uma vez que a cada par de homógrafos corresponde um algoritmo de decisäo separado. tem mais significados, embora pouco usuais. /O/ é s.m. em Portugal, como regionalismo de Trás-os-Montes, significando "borracha"; é s.m. /o/, dando nome a um tipo de cetáceos da família dos delfinídeos". Em Bras./Gir. significa "coisa volumosa". Também como s.m. /o/ é um sacerdote do hinduísmo (in Dicionário da Academia das Ciéncias de Lisboa). 10 Tipo Categoria gramatical da oposicjio Exemplo Alternáncia vocálica da oposicjío 15 Nome/Nome A besta foi abatida. Manejava bem a besta. [e] Nome/ [E] Nome 16 Nome/Nome Tinha muita sede. A sede daONU... [e] Nome/ [E] Nome 17 Nome/Nome Tem medo de voar. Os medos sao um povo. [e] Nome/ [E] Nome 18 Nome/Nome/Verbo Há café na termos. É bom termos saúde. [e] Nome/ [E] Nome/ [EJVerbo 19 Nome/Nome O tecido perdeu a cor. Sei isso de cor e salteado. [o] Nome/ [O] Nome 20 Nome/Nome 0 lobo é um animal. Tem lesoes no lobo occipital. [o] Nome/ [O] Nome 21 Verbo/V erbo Vou pregar um prego. Vai pregar aos peixinhos. [@] Verbo/ [E] Verbo Tabela 2: Pares de homógrafos com a mesma classe morfossintáctica. 3.3. Algoritmos de desambiguacáo Algoritmos de desambiguacáo de homógrafos Figura 3: Funcionamento do Desambiguador de Homógrafos Heterófonos. Após a separacáo do texto em palavras estar efectuada, o desambiguador comeca por buscar candidatos a homógrafos por consulta á sua biblioteca de homógrafos. Se o sistema identificar uma dada palavra como homógrafo, procede á identificacáo do tipo a que pertence, para em seguida lhe associar um dado algoritmo que permitirá prever o output fonético (vide Figura 3). Na Tabela 3, apresentam-se os símbolos usados na representacáo gráfica dos algoritmos, bem como o seu significado. Por limitacóes de espaco, apresentamos apenas alguns algoritmos para ilustrar o funcionamento da nossa metodologia. Após a identificacáo do homógrafo com o seu tipo, o sistema submete-o a várias perguntas relativas as palavras que com ele co-ocorrem á esquerda e á direita. Seguimos duas estratégias no desenho dos nossos algoritmos. Nuns casos, no primeiro losango, surge uma bateria de perguntas com o objectivo de conduzir á saída mais provável após análise dos corpora. Se a resposta for negativa, entáo passa-se para o segundo losango, contendo as perguntas que conduziráo á saída estatisticamente menos 11 provável. Säo exemplos deste funcionamento, os algoritmos 1, 3, 14, 16 ou 21 (vide Figuras 4, 5, 8, 9, 10). Símbolo Signiflcado P-l, P-2, P-3 ultima, penúltima e antepenúltima palavras, respectivamente P+l, P+2, P+3 primeira, segunda e terceira palavras seguintes, respectivamente F-l, F-2, F-3 ultima, penúltima e antepenúltima frases, respectivamente F0 a propria frase F+l, F+2, F+3 primeira, segunda e terceira frases seguintes, respectivamente DEM pronome ou determinante demonstrative IND pronome ou determinante indefinido INT pronome ou determinante interrogativo POSS pronome ou determinante possessivo ARTJND artigo indefinido P_REL pronome relativo PREP preposicäo CONT contraccäo da preposicäo com determinante P_PES_S, P_PES_0 pronome pessoal sujeito, pronome pessoal objecto CONJ_S, CONJ_C conjuncäo subordinada, conjuncäo coordenada Loc_S, Loc_C locucôes conjuncionais subordinativa e coordenativa AD V, ADV_Q advérbio, advérbio de quantidade NUM numeral DIG dígito INTJ interjeicäo Des_V desinéncia ou sufixo verbal PART particípio Des_N desinéncia ou sufixo nominal Des_Adj desinéncia ou sufixo adjectival Des_Adv desinéncia ou sufixo adverbial Pref_PT prefixo portugués R_GL radical grego ou latino ends by que termine por P_M palavra ou expressäo comecada por maiúscula + seguido de , ou or condicäo alternativa and condicäo aditiva Tabela 3: Simbologia usada nos algoritmos. Em outros casos, há apenas uma batéria de perguntas com duas saídas, caso a resposta seja afirmativa ou negativa. A resposta positiva corresponde ä saída menos provável. Se a resposta for negativa, obtemos a saída mais provável. Säo exemplos deste funcionamento, os algoritmos de tipo 5 e 7 (vide Figuras 6 e 7). Muitos outros contextos estaráo em falta, certamente. No entanto, o desenho dos algoritmos baseou-se nos tipos de ocorréncias encontradas nos corpora disponíveis, assegurando pelo menos os contextos estatisticamente mais representativos. Apesar da eficácia dos algoritmos, ainda há casos de ambiguidade lexical que nem por análise semäntica säo facilmente resolúveis, como neste excerto em que ocorre um homógrafo de tipo 2: "Depois, se tal palavra tem algum sentido aplicada a um quebrantamento que näo důrou mais que uns instantes, e já naquele estado de meia vigília que vai preparando o despertar, considerou seriamente que näo estava bem manter-se numa tal indecisäo, acordo, näo acordo, acordo, näo acordo, sempře chega uma altura em que näo há outro remédio que arriscar." (COMPARA, PPJSA1 (116)). 12 Bibliotecas X é homógrafo de Tipo 1 Figura 4: Algoritmo de desambiguacäo de homógrafos de tipo 1 (ex: 'apelo'). Bibliotecas X é homógrafo de Tipo 3 J (P+l = "pelo") or(P-2, P-3, = ARTJND) or (P-2, P-3 = "o", "a", "os", "as") or (P-l = "que" "ele", "ela", "se", "näo", "já", or(P-l = C_C, C_S) or (P-l, P-2=IND, INT, DEM, POSS) or (P+l ="e rebola") or(P+l = adv, adj) or (P-l= nc, np) 'nunca") (VERBO \ (vogaltónica [O]) J (P-l = "tiro ä", "caga ä") or (P-l= "urna", "a" ) or (P-l, P-2 = CONT, PREP) or(P+l="brava") (NOME \__| (vogaltónica [o]) J~ Figura 5: Algoritmo de desambiguacäo de homógrafos de tipo 3 ('rola')- 13 Figura 6: Algoritmo de desambigua^äo de homógrafos de tipo 5 (ex.'deste'). Figura 7: Algoritmo de desambigua^äo de homógrafos de tipo 7 ('seco'). 14 Figura 8: Algoritmo de desambiguacäo de homógrafos de tipo 14 ('cerca'). Figura 9: Algoritmo de desambiguacäo de homógrafos de tipo 16 ('sede'). 15 Figura 10: Algoritmo de desambigua^äo de homógrafos de tipo 21 ('pregar'). 4. Testes e discussáo de resultados Ao nível da implementacáo, foi possível reduzir o numero de algoritmos, uma vez que a uma dada categoria gramatical corresponde um certo conjunto de perguntas. Na Figura 11, pode ver-se a interface do sistema. * Homografo v0.1 I e:\work\vb\hornografosyento2. tut Load Previous Neyt Select Sentence com gosto pelo trabalho dedicagao simpatia par 39691: , e ), porque näo ocorrem neste corpus. Por esta razäo, foram usados trés tipos de corpora durante a elaboracäo dos algoritmos, como foi exposto no ponto Este corpus encontra-se disponível para consulta em http://www.linguateca.pt/. Para mais informacöes sobre este projecto, consultar também: http://acdc.linguateca.pt/acesso/contabilizacao.html#minho. 17 3.1. De qualquer modo, e muito dificil encontrar värios tipos de texto num corpus. Em trabalhos futuros, testaremos os nossos algoritmos com corpus näo jornalistico. Os erros ocorrem na desambiguacäo de , , e . Todos os erros encontrados decorrem do aparecimento de contextos ou de combinacöes inesperados. Por exemplo, os erros na desambiguacäo de decorrem de registos de horas que näo tinham sido previstos (ex: "O fogo, que deflagrou cerca das 06h50 numa casa terrea...") ou outras co-ocorrencias (ex. "O Papa näo chegou a estar dez minutos na janela, cerca de metade do tempo das suas aparicöes dominicais."). Contextos deste tipo foram entretanto considerados. 5. Conclusöes Neste trabalho, desenvolveu-se um sistema de desambiguacäo de homögrafos heteröfonos, baseado em regras linguisticas. Esta tecnica provou ter um desempenho de 100% de acerto para 14 tipos de homögrafos. Este sistema permite dar resposta ao problema da leitura dos homögrafos na conversäo Texto-Fala do Portugues. O sistema e composto por 21 algoritmos que processam a desambiguacäo de 82 pares de homögrafos. A lista dos homögrafos recolhidos ate ao momento de redaccäo deste trabalho tambem e apresentada. O teste do sistema, efectuado com o corpus Natura-Diärio do Minho, revelou uma taxa de acerto de 96,9%. Os erros apresentados seräo tidos em consideracäo para futuros desenvolvimentos do sistema. Estä em curso um trabalho de recolha de homögrafos em Portugues do Brasil e em Galego, de forma a analisar a adaptabilidade dos nossos algoritmos a estas variedades linguisticas. Como trabalho futuro, seria interessante avaliar a performance do nosso sistema ao nfvel do analisador morfossintäctico e semäntico. Prevemos ainda fazer uma comparacäo da tecnica por nös utilizada com outras tecnicas de desambiguacäo de homögrafos, como os metodos probabilisticos, nomeadamente as redes neuronals ou os modelos escondidos de Markov (Hidden Markov Models). 6. Bibliografia Barbosa, F.; Ferrari, L.; Resende Jr., F. 2003. "A methodology to analize homographs for a Brazilian Portuguese TTS system". In PROPOR2003 - 6th Workshop on Computational Processing of the Portuguese Language. Heidelberg: Springer-Verlag. Bergström, M & Reis, N. 1997. Prontuärio ortogräfico e guia da lingua portuguesa. Lisboa: Editorial Noticias. Braga, D., Coelho, L.; Resende Jr., F. G. V. 2006. "A Rule-Based Grapheme-to-Phone Converter for TTS Systems in European Portuguese". In VI International Telecommunications Symposium (ITS2006). Fortaleza-CE, Brasil. Casteleiro, J. M. (coord.) 2001. Dicionärio da Lingua Portuguesa Contemporänea da Academia das Ciencias de Lisboa. 2 vols. Lisboa: Editorial Verbo. Cunha, C. & Cintra, L. 1992. Nova gramatica do portugues contemporäneo. Lisboa: Sä da Costa. Estrela, E.; Soares, M. A.; Leitäo, M. J. 2004. Saber escrever. Saber falar. Urn guia completo para usar correctamente a lingua portuguesa. Lisboa: D. Quixote. 18 Ferrari, L ; Barbosa, F. ; Resende Jr., F. G. V. 2003. "Construcöes gramaticais e sistemas de conversäo texto-fala: o caso dos homögrafos". In Proceedings of the International Conference on Cognitive Linguistics. Braga. Huang, X.; Acero, A. and Hon, H.W. 2001. Spoken Language Processing: A Guide to Theory, Algorithm and System Development. PTR, New Jersey: Prentice Hall. Iriarte Sanromän, Alvaro. 2001. A Unidade Lexicogräfica. Palavras, colocacöes, frasemas, pragmatemas. Centro de Estudos Humanisticos. Colecäo Poliedro. Universidade do Minho. Lyons, J. 1977. Semantics. 2 vols. Cambridge: Cambridge University Press. Nogueira, R. Sä. 1994. Dicionärio de Verbos Portugueses Conjugados. Lisboa: Clässica Editora. Ramos, Emanuel (org.), s/d. Os Lusiadas de Luis de Camöes. Porto: Porto Editora. Ribeiro, R. Oliveira, L .C; Trancoso, I. 2003 "Using Morphossyntactic Information in TTS Systems: Comparing Strategies for European Portuguese". In PROPOR200 3- 6th Workshop on Computational Processing of the Portuguese Language. Springer-Verlag, Heidelberg, pp. 143-150. Ribeiro, R.; Oliveira, L. C; Trancoso, I. 2002. "Morphossyntactic Disambiguation for TTS Systems". In Proc. of the 3rd Intl. Conf. on Language Resources and Evaluation. Volume V. pp. 1427-1431. ELRA. Seara, I.; Kafka, S. Klein, S.; Seara, R. 2001. "Consideracöes sobre os problemas de alternäncia vocälica das formas verbais do Portugues falado no Brasil para aplicacäo em um sistema de conversäo Texto-Fala". In SBrT 2001 - XIX Simpösio Brasileiro de Telecomunicacöes. Fortaleza, Brasil. Seara, I.; Kafka, S. Klein, S.; Seara, R. 2002. Alternäncia vocälica das formas verbais e nominais do Portugues Brasileiro para aplicacäo em conversäo Texto-Fala. In Revista da Sociedade Brasileira de Telecomunicacöes. vol. 17, n° 1, pp. 79-85. Villalva, A. 2003. "Formacäo de palavras: afixacäo", in Mateus, M. H. M. (coord.) Gramätica da Lingua Portuguesa. Lisboa: Caminho. Yarowsky, D. 1996. "Homograph disambiguation in Text-to-Speech Synthesis". In Progress in Speech Synthesis (Jan van Santen, Richard Sproat, Joseph Olive, and Julia Hirschberg, editors), pp. 159-174, New York: Springer. 19