Águia, uma ferramenta de procura em árvores
Diana Santos
Projecto Floresta
sintá(c)tica
Última actualização: 12 de
Setembro de 2006
Neste documento descrevem-se as
especificações do sistema de procura das árvores
da Floresta Sintá(c)tica, a que chamámos Águia. O Águia pretende ser uma extensão à interface AC/DC de procura em
corpora anotados, que é baseada na unidade fundamental token/palavra,
com informação sintáctica produzida pelo PALAVRAS, o
parser desenvolvido por Eckhard Bick e usado no projeto VISL.
Como descrito na página da Floresta Sintá(c)tica, as árvores sintácticas são obtidas
a partir de um programa que transforma esse formato num formato de
árvores deitadas (identificando constituintes e especificando a
ligação (attachment), que não é
necessariamente resolvida numa gramática dependencial),
programa esse também desenvolvido no projecto VISL por Eckhard Bick, e
são depois revistas pela equipa linguística da Floresta.
O Águia pretende satisfazer dois objectivos
- permitir uma visualização / interrogação do
resultado da anotação e revisão da Floresta para todos os interessados
- ajudar a própria equipa da Floresta a
determinar e identificar problemas na anotação automática que
possam ser resolvidos sistematicamente (em futuras versões do
parser) sem necessidade de revisão e modificação manual repetitiva
O nosso trabalho consiste em traduzir o formato texto da floresta sintáctica
para uma forma que permita fácil manuseamento num sistema de
codificação de corpora (o IMS-CWB), e estabelecer um conjunto de
formas de interrogação satisfatórias para um utilizador que esteja interessado em informação sintá(c)tica e não nos pormenores internos da sua codificação.
Especificações abstractas da procura
O Águia, como sistema de procura em
árvores, deve permitir interrogar a Floresta (isto é,
um conjunto de árvores sintácticas) das seguintes formas:
- poder interrogar um corpus usando sintagmas como unidades, ou seja,
procura por sintagmas, em vez de, ou além de, palavras. Exemplos:
- sintagma nominal seguido de preposicional
- sintagma nominal contendo um sintagma preposicional como constituinte directo
- sintagma nominal contendo um sintagma preposicional como constituinte a qualquer nível
- poder fazer procuras por propriedades de sintagmas
- sintagma nominal masculino plural
- sintagma nominal cujo núcleo é um adjectivo
- sintagma nominal cujo lema do núcleo é 'cabeça'
- sintagma nominal cujo núcleo seja escudo
- sintagmas verbais descontínuos
- sintagmas preposicionais com estatuto de argumento
- poder procurar características de palavras restritas a contextos
sintagmáticos
- lema mais dentro de um PP
- adjectivo acabado em -ista dentro de um nome predicativo do sujeito
auxiliar ter dentro de uma oração infinitiva
- poder procurar casos de anotação por tipo de comentário do anotador
-
e combinação de todos estes casos.
Aquilo que já é possível fazer, e que corresponde, por enquanto, a um subconjunto dos casos referidos acima encontra-se documentado na própria página da interface.
Especificação técnica
Para criar este sistema podemos identificar várias fases distintas:
- A conversão para um formato abre e fecha constituintes
- A criação das assinaturas de cada nó
- A codificação no sistema IMS-CWB
- A definição dos tipos de procura e de macros para os efectuar
Transformação para um formato explícito em termos de constituintes
O primeiro passo é transformar um objecto da forma padrão da Floresta (árvores deitadas), exemplificado aqui para as duas primeiras árvores
<t>
SOURCE: CETEMPúblico n=1 sec=clt sem=92b
C1-1 Um revivalismo refrescante
A1
UTT:np
>N:art( M S) Um
H:n(M S) revivalismo
N<:adj(M S) refrescante
</t>
<p>
<s>
SOURCE: CETEMPúblico n=1 sec=clt sem=92b
C1-2 O 7 e Meio é um ex-libris da noite algarvia.
A1
STA:fcl
SUBJ:np
=>N:art(M S) O
=H:prop(M S) 7_e_Meio
P:v-fin(PR 3S IND) é
SC:np
=>N:art( M S) um
=H:n(M P) ex-libris
=N<:pp
==H:prp() de
==P<:np
===>N:art(<-sam> F S) a
===H:n(F S) noite
===N<:adj(F S) algarvia
.
para uma codificação explícita e não ambígua das fronteiras dos constituintes, incluindo a assinatura do constituinte e a sua função como etiquetas de cada constituinte, a que chamamos aqui o "formato Águia":
<ext n=1 sec=clt sem=92b>
<u C1-1>
<t>
<np0 ass='art n adj ' fun="UTT">
Um >N:art <arti>_M_S 1
revivalismo H:n M_S 1
refrescante N<:adj M_S 1
</np0>
</t>
</u>
<p>
<u C1-2>
<s>
<fcl0 ass='np1 v-fin np1 ' fun="STA">
<np1 ass='art prop ' fun="SUBJ">
O >N:art M_S 2
7_e_Meio H:prop M_S 2
</np1>
é P:v-fin PR_3S_IND 1
<np1 ass='art n pp2 ' fun="SC">
um >N:art <arti>_M_S 2
ex-libris H:n M_P 2
<pp2 ass='prp np3 ' fun="N<">
de H:prp <sam-> 3
<np3 ass='art n adj ' fun="P<">
a >N:art <-sam>_F_S 4
noite H:n F_S 4
algarvia N<:adj F_S 4
</np3>
</pp2>
</np1>
. pont 0 1
</fcl0>
</s>
</u>
De notar que cada constituinte está identificado por tipo e profundidade, e o seu âmbito está identificado por um "abre-constituinte" e um "fecha-constituinte". Por exemplo: <np1> e </np1>.
Codificação dos corpora
Os corpora CQP que criamos a partir do formato Águia te^m as seguintes campos (atributos posicionais): palavra, (lema), classificação (no formato função:forma) atributos morfologicos e profundidade.
Alem disso, temos centenas de atributos estruturais (conjugação do tipo de sintagma e do nivel): np de 0 a
Formulação dos tipos de perguntas em CQP
Escolhemos então o seguinte conjunto de macros para interrogar o corpus.
Assinatura de tipo de constituinte; função do tipo de constituinte...
Corpora subjacentes
Parece útil ter dois corpora:
- o primeiro milhão todo (a que chamámos a Floresta Virgem), de forma a ser possível observar casos problemáticos em quantidade e eventualmente criar regras sistemáticas.
- o subconjunto já revisto, para dar acesso o mais cedo possível ao produto do projecto, o Bosque
[ Página da floresta | Acesso à Floresta através do sistema Águia ]
Comentários, sugestões e perguntas sobre a Floresta Sintá(c)tica