Identificação de Tipos de Relações Temporais Event-Time em Português: Uma Abordagem Baseada em Regras com Classificação Associativa
Nesta dissertação, apresentamos um método computacional para identificar tipos de relações temporais entre eventos e expressões temporais em textos em português. Utilizando uma abordagem baseada em regras e conjuntos de features relevantes, desenvolvemos conjuntos de regras utilizando algoritmos de aprendizagem de regras, além de regras manuais específicas para o idioma. Os experimentos no corpus TimeBankPT1 demonstraram a eficácia do nosso método, superando o baseline2 em termos de acurácia e F1-score. Esta pesquisa apresenta aplicações práticas no campo do resumo de documentos, compreensão de histórias e análise de notícias. Por meio do uso de regras explicáveis, possibilita uma compreensão aprimorada do tempo em textos.
Apresentamos nosso Conjunto de Features organizadas por tipo de informações linguísticas.
Apresentamos nossos Conjuntos de Regras desenvolvidos para a tarefa de identificar tipos de relações temporais entre evento e expressão temporal em textos em português.
Cada regra possui o seguinte formato:
[código da regra, 'TIPO DA RELAÇÃO TEMPORAL', ordem, "expressão lógica que representa a regra", 'algoritmo de origem', acurácia, total de acertos, número de vezes que foi acionada]
A expressão lógica que representa a regra é composta por conjunções de condições. Cada condição é constituída por uma feature
de nosso conjunto de features, um operador
, que pode ser de igualdade ou desigualdade, e o valor
da feature.
Apresentamos os resultados finais dos experimentos realizados com os conjuntos de regras, utilizando dados de treinamento e teste. Analisamos duas abordagens diferentes para aplicação das regras: a primeira regra acionada e o sistema de votação. Além disso, fornecemos as significâncias estatísticas dos resultados.
Código Fonte
parse/ParseTimebankPT
: Código fonte das classes que tratam os dados do corpus e identificam tipos de relações temporais.
Exemplo de Uso das Classes
demonstracao_sistema
: Demonstração de uso das principais funções do código fonte.
Corpus
TimebankPT
: Esse corpus consiste em artigos de notícias anotados contendo referências temporais em lingua portuguesa1.
Copie todo código fonte para uma pasta local e instale os pré-requisitos abaixo em um ambiente onde o Jupyter Notebook
está instalado.
spacy
matplotlib
seaborn
pandas
numpy
scikit_learn
tabulate
treelib
Dentro da pasta local execute comando a seguir para instalar os pacotes requeridos.
$ pip install -r requirements.txt