Version 15 (modified by Ales Horak, 2 years ago) (diff)

edited by hales in

Automatic relation extraction

IA161 NLP in Practice Course, Course Guarantee: Aleš Horák

Prepared by: Adam Rambousek

State of the Art


  1. Lefever, Els, Marjan Van de Kauter, and Véronique Hoste. "Evaluation of Automatic Hypernym Extraction from Technical Corpora in English and Dutch." Proceedings of the 9th International Conference on Language Resources and Evaluation (LREC 2014). 2014.
  2. Wang, Tong, and Graeme Hirst. "Exploring patterns in dictionary definitions for synonym extraction." Natural Language Engineering 18.03 (2012): 313-342.
  3. Schropp, Gwendolijn, Els Lefever, and Véronique Hoste. "A Combined Pattern-based and Distributional Approach for Automatic Hypernym Detection in Dutch." RANLP. 2013.
  4. Grefenstette, Gregory. "INRIASAC: Simple Hypernym Extraction Methods." arXiv preprint arXiv:1502.01271 (2015).
  5. Shen, Yatian, and Xuan-Jing Huang. "Attention-based convolutional neural network for semantic relation extraction." Proceedings of COLING 2016, the 26th International Conference on Computational Linguistics: Technical Papers. 2016.
  6. Li, Qing, et al. "A comprehensive exploration of semantic relation extraction via pre-trained CNNs." Knowledge-Based Systems (2020): 105488.

Practical Session

Enhance hypernym detection to provide better results.

  • Download prepared scripts and data:
  • pip install majka
  • Unzip, cd ia161-hyper and run ./
  • The script reads file vstup.txt (each line is word|definition) and outputs hypernym for each word.
  • Default approach is naive: first noun in definition is hypernym
  • majka gives noun to some adjectives, deal with this to improve results
  • Update the find_hyper() function in to provide better results.
  • Upload updated script plus the output.
  • Gold standard to evaluate your result: gold.txt

Attachments (4)