Skip to content

yanaiela/num_fh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Numeric Fused-Head

This is the code used in the paper:

"Where’s My Head? Definition, Dataset and Models for Numeric Fused-Heads Identification and Resolution" Yanai Elazar and Yoav Goldberg

to appear in TACL

preprint demo

Installation

Installing the num_fh package is simple as:

pip install num_fh

Prerequisites

  • at least python 3.6 (and specific libraries in the requirements.txt)

We strongly recommend that you use a new virtual environment to install num_fh

create a clean conda env

conda create -n nfh python==3.6 anaconda
source activate nfh

Cloning and Running the Library by Yourself

clone this repo:

git clone git@github.com:yanaiela/num_fh.git

installing python packages

pip install -r requirements.txt

Example Usage

import spacy
from num_fh import NFH
nlp = spacy.load('en_core_web_sm')
nfh = NFH(nlp)
nlp.add_pipe(nfh, first=False)

doc = nlp("I told you two, that only one of them is the one who will get 2 or 3 icecreams")
assert doc[16]._.is_nfh == True
assert doc[18]._.is_nfh == False
assert doc[3]._.is_deter_nfh == True
assert doc[16]._.is_deter_nfh == False
assert len(doc._.nfh) == 4

The paper (and therefore, also the code) deals with two sub-tasks of the FH solution:

  • Identification
  • Resolution

These are dealt with separately, and discussed in the paper in sections (3,4) and (5,6). These parts are also solved separately in the code, and contain further instructions for each one in dedicated README files: Identification and Resolution

Demo

To run the demo, run the following:

export FLASK_APP=num_fh/demo/server.py
flask run --port 5000 --host ""

Citing

If you find this work relevant to yours, please consider citing us:

@article{elazar_head,
author = {Elazar, Yanai and Goldberg, Yoav},
title = {Where’s My Head? Definition, Data Set, and Models for Numeric Fused-Head Identification and Resolution},
journal = {Transactions of the Association for Computational Linguistics},
volume = {7},
number = {},
pages = {519-535},
year = {2019},
doi = {10.1162/tacl\_a\_00280},
URL = {https://doi.org/10.1162/tacl_a_00280},
}

Contact

If you have any question, issue or suggestions, feel free to contact us with the emails listed in the paper.