• Nenhum resultado encontrado

4. Trabalhos correlatos

4.1. Nptool Um detector de SN

Nptool é um sistema construído por Voutilainen [Voutilainen1992] para extrair SNs de textos escritos na língua inglesa. O principal objetivo de seu trabalho foi auxiliar a tarefa de reconhecer palavras representativas de um texto, para a função de índice. A principal característica desse sistema é a atenção especial dada à descrição léxica e morfológica. A análise morfológica é baseada em uma descrição detalhada das categorias derivacionais e inflexionais das palavras.

O sistema utiliza um léxico com mais de 56.000 radicais de palavras. A arquitetura do Nptool é composta dos módulos apresentados na figura 4.1 e que serão descritos na seqüência.

Na etapa de pré-processamento o processador recebe o texto em ASCII (American Standard Code for Information Interchange), preferivelmente anotado em SGML,

reconhece os limites das sentenças, normaliza convenções tipográficas e verticaliza o texto.

Na análise morfológica, o analisador morfológico reconhece todas as inflexões e formas derivadas de cada palavra buscada no léxico. Um exemplo do resultado da análise morfológica é apresentado na figura 4.2.

Figura 4.1 - Arquitetura Nptool [Voutilainen1992]

Figura 4.2 - Exemplo de análise morfológica

O parsing da gramática de restrições, neste processo, consiste de duas fases: desambiguação morfológica e restrição sintática. A desambiguação morfológica possui a tarefa de descartar as leituras morfológicas onde o léxico apresentou mais de uma possibilidade para a palavra. Por exemplo, tendo o resultado, conforme figura 4.3, do analisador morfológico para a sentença “a single”, o léxico retorna três leituras

Pré-processamento \/

Análise Morfológica \/

Parsing da Gramática de restrições

\/ \/

Parsing SN-hostil Parsing SN-amigável

\/ \/

Extração do SN Extração do SN \/ \/

Intersecção dos conjuntos de SN

("<*the>"

("the" DET CENTRAL ART SG/PL (@>N))) ("<inlet>"

("inlet" N NOM SG)) ("<and>"

("and" CC (@CC))) ("<exhaust>"

("exhaust" <SVO> V SUBJUNCTIVE VFIN (@V)) ("exhaust" <SVO> V IMP VFIN (@V))

("exhaust" <SVO> V INF)

("exhaust" <SVO> V PRES -SG3 VFIN (@V)) ("exhaust" N NOM SG))

("<manifolds>"

morfológicas possíveis para a palavra “single”. Duas das análises referem-se a verbo (V) e a outra se refere a um adjetivo (A). O desambiguador possui um conjunto de regras, extraído da gramática inglesa, onde 99,7% de todas as ambigüidades são resolvidas. A ambigüidade da palavra “single” é resolvida com a seguinte regra: “Um determinante nunca está seguido de um verbo”. Assim, a palavra “a” está marcada como sendo determinante (DET). Então somente a palavra “single”, marcada como adjetivo (A), é que pode ficar; as demais, marcadas como verbo (V), são eliminadas.

("<a>"

("a" <Indef> DET CENTRAL ART SG (@>N))) ("<single>"

("single" <SVO> V IMP VFIN (@V)) ("single" <SVO> V INF)

("single" A ABS))

Figura 4.3 - Resultado do analisador morfológico

Depois da desambiguação morfológica as palavras são analisadas sintaticamente. Note-se que a ambigüidade sintática foi introduzida diretamente no léxico. Vejamos o exemplo, conforme figura 4.4, onde a palavra “inlet” é ambígua devido a uma leitura de pré-modificador (@>N) e uma leitura de nome principal (@NH).

("<inlet>"

("inlet" N (@>N @NH)))

Figura 4.4 - Ambigüidade sintática - exemplo 1

Todas as etiquetas que descrevem funções sintáticas são precedidas do símbolo @, conforme tabela 4.1. O sistema possui aproximadamente 120 regras sintáticas. Essas regras definem a gramática e especificam, por exemplo, a ordem dos determinantes e modificadores, ou que um verbo auxiliar é seguido por um verbo principal etc. Porém essas regras não são suficientes para resolver as ambigüidades nas funções sintáticas das palavras. Neste momento o sistema passa, então, para a fase de parsing (SN-hostil ou SN-amigável).

Etiquetas Significado

@V Verbos auxiliares e principais @>N ou

@<N

Determinantes e pré-modificadores de nome. O sinal “>” indica a direção na qual o principal foi encontrado. O principal é o nome seguinte com a etiqueta @NH

@CC e @CS Conjunções coordenadas e subordinadas, respectivamente

@NH Nome principal, especialmente nomes, pronomes, numerais e abreviações para a forma “ing”

@N< Sintagmas preposicionais

@AH Adjetivos e advérbios de vários tipos

Tabela 4.1 - Tabela de classificações sintáticas

Para o tratamento de ambigüidades sintáticas o sistema Nptool usa um parser que produz todas as possibilidades de sentenças que concordam com a gramática. Usaremos a sentença com duas opções (1 e 2) geradas pelo parser, conforme figura 4.5, para exemplificar o tratamento das ambigüidades sintáticas.

Opção 1:

the/@>N inlet/@>N and/@CC exhaust/@>N manifolds/@NH are/@V mounted/@V on/@AH opposite/@>N sides/@NH of/@N< the/@>N cylinder/@NH head/@V

Opção 2:

the/@>N inlet/@>N and/@CC exhaust/@>N manifolds/@NH are/@V mounted/@V on/@AH opposite/@>N sides/@NH of/@N< the/@>N cylinder/@>N head/@NH

Figura 4.5 - Ambigüidade sintática - exemplo 2

A ambigüidade léxica ou léxico-morfológica está descrita no léxico conforme a figura 4.6. Para poupar espaço e facilitar a descrição do exemplo, omitimos os códigos morfológicos nesta figura .

(“<cylinder>”

(“cylinder” (@>N @NH))) (“<head>”

(“head” (@>V @NH)))

Figura 4.6 - Ambigüidade sintática do léxico

Na fase de extração do SN, a diferença entre as duas opções, para a sentença da figura 4.5, está na avaliação de “cylinder head”: na opção 1 o sistema reportaria

“cylinder” como um SN, enquanto na opção 2 o sistema reportaria “cylinder head” como um SN.

Podem existir mais do que duas possibilidades de derivação para candidatos ao SN, porém o parser seleciona somente duas: a sentença que possui o menor número de palavras como parte de um SN, denominado SN-hostil (NP-hostile), como é o caso da opção 1 na figura 4.5, onde o @NH faz parte de um SN porém @V não; e a sentença que possui o maior número de palavras como parte de um SN, caso da opção 2 na figura 4.5, onde @>N e @NH, ambos, fazem parte do SN, por isso denominado SN-amigável (NP- friendly). Os SNs propostos são dados nas linhas indentadas, conforme figura 4.7, marcados com o símbolo “np:”. Estes são os SNs que possuem ocorrências no parsing SN-hostil e também no parsing SN-amigável.

O objetivo ao selecionar os SNs, a partir dessas análises contraditórias é que um candidato a SN produzido nos dois sistemas de parsing (SN-hostil e SN-amigável) é provavelmente um SN identificado como não ambíguo na fase de intersecção seguinte.

Sobre a sentença extraída do parsing SN-hostil The

np: inlet and exhaust manifold are mounted on

np: opposite side of the cylinder head, the

np: exhaust manifold ..

Sobre a sentença extraída do parsing SN-amigável the

np: inlet and exhaust manifold are mounted on

np: opposite side of the cylinder head , the

np: exhaust manifold ..

Figura 4.7 - Resultado do parsing SN-hostil e SN-amigável

Para poder determinar a forma do SN o sistema Nptool usa um programa denominado “gawk” que permite definir uma expressão regular para a forma do SN. Um exemplo da expressão regular definida no sistema é apresentado na figura 4.8.

Figura 4.8 - Expressão regular usada no Nptool

A comparação da saída dos dois parsing (SN-hostil e SN-amigável) é feita na fase de intersecção dos resultados. Os SNs propostos pelos parsing SN-hostil e SN-amigável são sujeitos a uma rotina onde todos os candidatos a SN com uma ocorrência idêntica na saída, SN-hostil e SN-amigável, são identificados com o símbolo “ok”, e os candidatos que permanecem com saídas distintas são denominados “incertos” e são marcados com o símbolo “?”. Os SNs extraídos, como resultado final do Nptool, para o exemplo da figura 4.7, são mostrados na figura 4.9.

Figura 4.9 - SNs extraídos

Documentos relacionados