|
Neste documento descrevem-se de forma muito resumida os programas utilizados na avaliação da pista do ReRelEM, integrada no Segundo HAREM.
Tendo como ponto de partida a CD do ReRelEM e uma participação, a sequência de invocações é feita de acordo com a ordem apresentada, sendo que a saída de cada programa é a entrada do seguinte.
A avaliação tem como ponto de partida a colecção dourada do ReRelEM (CD) e as participações no HAREM e é feita através da invocação sequencial de módulos, pela ordem aqui apresentada. Cada módulo tem como entrada um (ou mais) ficheiros de texto, que são processados de forma a produzir um resultado pronto a ser tratado pelo módulo seguinte.
Este ficheiro é o mesmo utilizado na avaliação do HAREM clássico.
Para indicar o nome de uma relação é
necessário iniciar a linha com "R:" seguida do nome
da relação. Se a relação tiver
inversa, a última deve ser colocada em frente, da
seguinte forma:
R:relacao;inversa
A primeira relação indicada deve ser a identidade ("ident") sendo a ordem das restantes relações irrelevante. Há no entanto que dizer que o nome das relações base do ReRelEM ("ident", "inclui", "incluido", "ocorre_em", "sede_de") se deve manter inalterado devido à forma como estão implementadas as regras de transitividade.
De forma a facilitar a identificação e leitura de relações entre diferentes facetas de EMs vagas foi criada uma nova notação para esses casos. A CD foi modificada de acordo com essa notação.
No entanto, como a nova notação não é completamente compatível com programas que já tinham sido desenvolvidos nem com as participações, foi criado um programa para transformar a nova notação (a que chamamos tipo 2) numa notação muito semelhante e compatível com a notação original, descrita nas directivas do ReRelEM (a que chamamos tipo 1).
A diferença na notação no tipo 2 encontra-se no preenchimento do campo TIPOREL:
No tipo 2, o atributo TIPOREL contém respectivamente: a faceta da própria EM (CATORIGEM) que entra na relação, o tipo da relação (TIPOREF), o ID da EM relacionada (COREL) e a faceta da EM relacionada (CATALVO). Esta notação é transformada no tipo 1 criando dois novos atributos (FAC_ORIGEM e FAC_ALVO).
A conversão é aplicada na CD e também nas participações. Quando se tratam de relações entre EMs vagas e existe a informação das facetas relaciondas, FAC_ORIGEM e FAC_ALVO são preenchidos com essas mesmas facetas. Quando essa informação não existe (EMs simples ou EMs na participação, onde essa informação não existe) os atributos são preenchidos com a categoria das EMs relacionadas.
Exemplo concreto:
Tipo1:
Tipo2:
A notação tipo 2 é apenas utilizada quando existem relações entre facetas de EMs vagas. Quando isso não acontece, deve continuar a utilizar-se o tipo 1, podendo nesse caso encontrar-se ambos no mesmo TIPOREL. Por exemplo:
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp
.;lib/jdom.jar pt.linguateca.harem.RerelemChangeNotationM2 <coleccao.xml> >
coleccao_convertida.xml
Nos quatro passos seguintes da avaliação ReRelEM são utilizados os programas de avaliação do HAREM clássico:
O módulo Expandidor tem como missão aplicar regras para a explicitação de relações.
Nessas regras a aplicar encontra-se o cálculo da inversa (de acordo com o que estiver definido no ficheiro harem.conf) e outras regras.
Procedimento:
Opções:
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp
.;lib/jdom.jar pt.linguateca.harem.RelationExpanderM2
-alinhamento ficheiro.alinhado.alts [-exptudo
<sim|nao>] >
ficheiro.alinhado.alts.expandido
Saída:
Alinhamentos com as relações expandidas.
Aplicado para restringir o conjunto de alinhamentos às respostas correctas do sistema. Alinhamentos espúrios, em falta ou com a categoria errada são eliminados. Nos restantes alinhamentos mantêm-se apenas as categorias comuns na EM do lado da CD e do participação.
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp .;lib/jdom.jar pt.linguateca.harem.AlignmentSelector -alinhamento ficheiro.alinhado.alts.expandido > ficheiro.alinhado.alts.expandido.seleccionado
Saída:
Alinhamentos correctos e com categorias iguais do lado da CD e participação.
Utilizado para normalizar os IDs das EMs nos alinhamentos de forma a possibilitar a comparação das relações do lado da CD com as relações do lado da participação. As entradas dos atributos COREL, TIPOREL, FAC_ORIGEM e FAC_ALVO são também normalizadas. Os IDs em COREL são adaptados aos novos IDs e as relações com pelo menos um ID ou conjunto ID+faceta inexistente são removidas.
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp
.;lib/jdom.jar pt.linguateca.harem.IDNormalizer
-alinhamento ficheiro.alinhado.alts.expandido.seleccionado >
ficheiro.alinhado.alts.expandido.seleccionado.normalizado
Saída:
Alinhamentos onde as EMs do lado participação têm o ID igual ao da EM do lado da CD com que estão alinhadas e os IDs no campo COREL seguem também essa normalização.
Este módulo tem como objectivo alterar a notação utilizada pelos módulos anteriores, transformando a notação de alinhamentos numa notação de triplas.
Uma tripla é constituída pelo ID da categoria origem (ou ID+faceta), o tipo da relação e o ID da categoria alvo (ou ID+faceta), por exemplo:
ABC LOCAL inclui XYZ LOCAL
Opções:
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp .;lib/jdom.jar pt.linguateca.harem.RelationExpanderM2 -alinhamento ficheiro.alinhado.alts.expandido.seleccionado.normalizado [-exptudo <sim|nao>] > ficheiro.alinhado.alts.expandido.seleccionado.normalizado.triplas
Saída:
Conjuntos de relações (representadas por triplas) do lado da CD e do lado da participação.
Semelhante aos filtros do HAREM clássico, mas para o tipo de relações. Aos conjuntos de relações do lado da CD e do lado da participação são removidas aquelas que cujo tipo não se encontra no conjunto de tipos pretendidos.
Opção:
O filtro é especificado através da opção -filtro seguida de uma lista de tipos de relação, separados por ";". Não especificando um filtro, nenhuma relação é removida.
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp .;lib/jdom.jar pt.linguateca.harem.RelationsFilter -alinhamento ficheiro.alinhado.alts.expandido.seleccionado.normalizado.triplas [-filtro tiporel1;tiporel2] > ficheiro.alinhado.alts.expandido.seleccionado.normalizado.triplas.filtrado
Saída:
Conjuntos de relações do lado da CD e do lado da participação, filtrados de acordo com o cenário
Avaliação das relações marcadas na participação, comparando com o que está marcado na CD. A saída desta etapa consiste numa lista de relações completamente correctas, com os argumentos certos e tipo errado (COREL correcto), espúrias e em falta. Em frente a cada relação é colocada a sua avaliação (Avaliação) e a sua pontuação de acordo com a fórmula de avaliação do ReRelEM. Uma relação pode ser classificada como Correcta, COREL Correcto, Espúria, Em Falta.
Comparação de relações:
Uma relação A relacao1 B é igual
a uma X relacao2 Y apenas se forem do mesmo tipo (relacao1
= relacao2) e se os seus argumentos forem iguais e estiverem
na mesma ordem (A=X e B=Y).
Cálculos adicionais:
Além da avaliação das relações são calculados, alguns valores para facilitar o cálculo das medidas finais na próxima fase. Para cada documento são marcados os seguintes valores:
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp
.;lib/jdom.jar pt.linguateca.harem.RelationsEvaluatorM2
-alinhamento ficheiro.alinhado.alts.expandido.seleccionado.normalizado.triplas.filtrado >
ficheiro.alinhado.alts.expandido.seleccionado.normalizado.triplas.filtrado.avaliado
Saída:
Conjuntos de relações avaliadas.
Resume os vários resultados que se podem retirar da avaliação das relações, separados em três partes:
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp
.;lib/jdom.jar pt.linguateca.harem.GlobalRelationsEvaluatorM2
-alinhamento
ficheiro.alinhado.alts.expandido.seleccionado.normalizado.triplas.filtrado.avaliado >
ficheiro.alinhado.alts.expandido.seleccionado.normalizado.triplas.filtrado.avaliado.resumo
Saída:
Resumo das várias medidas alcançadas pela participação.
Em tudo semelhante ao gerador de resultados para o HAREM clássico. Utiliza todos os ficheiros do tipo .resumo com terminação pretendida e que se encontrem dentro de determinada directoria e subdirectorias (ambos dados como argumento) para gerar uma tabela HTML com os vários sistemas e respectivas classificações do ReRelEM, ordenados pela melhor Medida-F.
Opções:
Invocação:
java -Dfile.encoding=ISO-8859-1 -cp .;lib/jdom.jar pt.linguateca.harem.GlobalRelationsReporter [-depurar] -filtro filtro -dir directorio_participacoes [-info lista_participantes.csv ] > resultados.html
Saída:
HTML com os sistemas e respectivas classificações representadas em todos os ficheiros na directoria directorio_participacoes terminados em filtro e ordenadas pela melhor Medida-F.
Programa que permite visualizar o grafo com as
relações nos vários documentos anotados de acordo com o ReRelEM.
O Visualizador tem como entrada (se nada for especificado) um ficheiro de alinhamentos, como a saída do organizador de ALTs ou do Expandidor.
É também possível ter uma entrada onde as relações estão representadas sob a notação de triplas (utilizando a opção -entrada triplas), como a saída do Véus ReRelEM.
No grafo apresentado a cor das ligações entre os nós corresponde a um tipo de relação. Legenda:
Opções
Invocação:
java -Dfile.encoding=ISO-8859-1 cp
.;lib/jdom.jar;lib/jgraph.jar
pt.linguateca.harem.ViewRelationsGraphs -alinhamento <ficheiro_alinhamentos>
-doc docid [-ver <cd|part>] [-entrada <triplas|alinhamentos>] [-nos <id|em|ambos>]
Informação adicional: Os grafos apresentados posicionam os nós numa grelha 6 por N. Para um melhor posicionamento é possível utilizar a biblioteca JGraphLayout Pro que não incluímos no conjunto dos programas porque requer uma licença específica (para fins comerciais - paga, ou acad´micos - gratuita).
Todos os módulos utilizados para esta avaliação foram implementados em Java, e é necessário ter instalada a versão 1.6 ou posterior do Java Runtime Environment (ou compatível).
Encontram-se aqui descritas as invocações dos programas em ambiente Windows. Em ambiente Unix é necessário alterar a separação dos arquivos no classpath (de ';' para ':'), por exemplo:
O pacote de programas para a avaliação do Segundo HAREM é disponibilizado pela Linguateca através de uma licença BSD.