Model overview
Getting started
- Download the GloVe vectors with
make glove
- Build the training data, train and evaluate the model with
make run
Training Data
The training data must be in the IOB format
i O
need O
a O
flight O
from O
memphis B-fromloc.city_name
to O
las B-toloc.city_name
vegas I-toloc.city_name
Usage
https://ofis.justanotherdemo.xyz/
Working demo:Start the server
python3 server.py
/parse
POST curl -X POST "http://localhost:5000/parse" -d "flight to new york from los angeles for next sunday"
Response
{
"type": "",
"departure": "LAX",
"destination": "NYC",
"departureDate": "2018-03-25",
"departureTime": "",
"returnDate": ""
}
Possible improvements
- Improve char embedding Model
- Split Dataset
- Generate more data
- Add lexicon of cities, dates and times
- Move from BIO labels to BIOES (Begin, Inside, Outside, End, Single)
- Replace multi-digit numbers same as single-digit ones
- Split word before and after digit (ex: $5, 5pm)
- Try glove with 50d
- Explore FastText model
- Reduce out-of-training words
Credits / Resources
https://arxiv.org/pdf/1511.08308.pdf
https://arxiv.org/pdf/1603.01354.pdf
https://guillaumegenthial.github.io/sequence-tagging-with-tensorflow.html