Programadores

Configurar o REMBRANDT

1. Hierarquia de variáveis de configuração

O REMBRANDT pode trabalhar sem a necessidade de especificar parâmetros de configuração, pois usa valores por omissão. No entanto, mais cedo ou mais tarde irá querer alterar um pouco o funcionamento do REMBRANDT, ou adaptá-lo às especificações de uma máquina. Isso pode ser feito da seguinte forma:

  1. Escrevendo um ficheiro de configuração rembrandt.properties e coloque-o na directoria corrente. O ficheiro de configuração deve ser XML válido, com uma etiqueta de raíz <configuration>, seguida de uma ou mais etiquetas <property>. A etiqueta <property> deve conter uma etiqueta <name> e uma etiqueta <value>, além de uma etiqueta opcional <description>.
  2. Especificando um ficheiro de configuração como argumento da linha de comandos (ou seja, java rembrandt.bin.Rembrandt --conf=conf-sample.xml.
  3. Definindo variáveis de ambiente Java (-D).

Os parâmetros serão lidos nessa ordem, substituindo os valores anteriores se forem especificados mais do que uma vez. Assim sendo, as variáveis de ambiente Java têm prioridade sobre as variáveis do ficheiro de configuração passado no argumento, e este tem prioridade sobre o ficheiro rembrandt.properties .

2. Entradas e saídas do REMBRANDT

Por omissão, o REMBRANDT usa o STDIN, o STDOUT e o STDERR na codificação definida pelo parâmetro Java file.encoding. Caso se pretenda usar ficheiros para carregar e/ou escrever dados, defina as variáveis rembrandt.${stream}.file (${stream} pode tomar os valores input, output e err), como ilustra o seguinte exemplo:

java -Drembrandt.input.file=file_input.txt -Drembrandt.output.file=file_output.txt rembrandt.bin.Rembrandt

O STDERR pode ser usado para gerar estatísticas adicionais. Por omissão, o STDERR está activo (para desactivar, use rembrandt.err.enabled=false) e gera informação no ficheiro rembrandt.err.logno mais detalhada das mutações que cada EM sofreu até o seu estado final. O err pode ser reconfigurado como no seguinte exemplo:

echo "Rembrandt" | java -Drembrandt.err.file=file3.err -Drembrandt.err.writer=rembrandt.io.HTMLDocumentWriter -Drembrandt.err.styletag=rembrandt.io.HTMLStyleTag rembrandt.bin.Rembrandt

O file3.err irá ser usado para escrever uma versão HTML do documento anotado. Note a presença do parâmetro rembrandt.err.writer; os parâmetros rembrandt.${stream}.reader e rembrandt.${stream}.writer definem o formato dos ficheiros de entrada e de saída do REMBRANDT, que podem ir desde simples texto (rembrandt.io.UnformattedReader e rembrandt.io.UnformattedWriter) até formatos que agregam vários documentos HTML, objectos serializados em XML, e o formato REMBRANDT. Os valores devem ser classes válidas que extendam rembrandt.io.Reader e rembrandt.io.Writer.

O estilo das etiquetas das EM, por sua vez, são configuradas pelo parâmetro rembrandt.output.styletag, que pode tomar o valor do nome de uma classe que extenda rembrandt.io.StyleTag (por omissão, usa-se o RembrandtStyleTag). Outras configurações do estilo inclui:

  • rembrandt.output.tagstyle.lang, para definir a língua das etiquetas e classificações
  • rembrandt.output.tagstyle.verbose, que define os elementos a colocar na etiqueta. Os valores são:
    • 0 - apenas a classificação
    • 1 - acima, mais um identificador, número de frase e de termo
    • 2 - acima, mais a referenciação pela Wikipédia / DBpedia
    • 3 - acima, mais historial de mutação da EM

3. Configuração do motor do REMBRANDT

O parâmetro rembrandt.core.doEntityRelation, que pode ser true ou false (por omissão, está desligado), define se, após o reconhecimento de EM, irá tentar repescar EM através da detecção de relações entre entidades.

  • Vantagens: Aumenta o número de EM classificadas.
  • Desvantagens:Não está optimizado, e pode demorar bastante tempo a processar em documentos longos.

O parâmetro rembrandt.core.doALT, que pode ser true ou false (por omissão, está ligado), define se o REMBRANDT pode gerar anotações alternativas para o mesmo excerto de texto.

  • Vantagens: Gera mais EM que representam melhor a expressão. Por exemplo, 'Universidade de Lisboa' fica anotada como 'Universidade de Lisboa' e 'Lisboa' ao mesmo tempo.
  • Desvantagens: A etiqueta usada, <ALT>, repete o texto para apresentar as alternativas, e como tal, dificulta o seu pós-processamento.

O parâmetro rembrandt.core.removeRemainingUnknownNE, que pode ser true ou false (por omissão, está ligado), decide o que fazer com as EM que, no final, não apresentem classificação semântica (ou seja, o seu significado é desconhecido). Por omissão, essas EM são eliminadas.

4. Configuração da SASKIA no acesso à base de dados

Para a ligação à base de dados, o módulo Saskia usa os seguintes parâmetros:

saskia.wikipedia.db.name - Especifica o nome da base de dados (por omissão, 'saskia').

saskia.wikipedia.db.url - Especifica o URL de ligação da base de dados, permitindo ligar a base de dados remotas. Por omissão, o valor é jdbc:mysql://127.0.0.1.

saskia.wikipedia.db.user - Especifica o utilizador da base de dados (por omissão, 'saskia').

saskia.wikipedia.db.password - Especifica a senha para acesso à base de dados (por omissão, 'saskia').

saskia.wikipedia.db.params - Especifica parâmetros adicionais para o conector. Por omissão, os parâmetros useUnicode=true&encodingCharset=UTF-8&autoReconnect=true forçam o MySQL connector/J a usar UTF-8 nas transacções com o MySQL.

saskia.wikipedia.table.${name} - Especifica o nome das tabelas $name (page, category, categorylinks, pagelinks e redirect).

Última alteração há 2 anos atrás.