Source code for The Neural Hawkes Process (NeurIPS 2017) runnable on GPU and CPU.
Please check out The Neural Hawkes Particle Smoothing for PyTorch Implementation (and more).
If you use this code as part of any published research, please acknowledge the following paper (it encourages researchers who publish their code!):
The Neural Hawkes Process: A Neurally Self-Modulating Multivariate Point Process
Hongyuan Mei and Jason Eisner
@inproceedings{mei2017neuralhawkes,
author = {Hongyuan Mei and Jason Eisner},
title = {The Neural {H}awkes Process: {A} Neurally Self-Modulating Multivariate Point Process},
booktitle = {Advances in Neural Information Processing Systems},
year = {2017},
month = dec,
address = {Long Beach},
url = {https://arxiv.org/abs/1612.09328}
}
Here are the instructions to use the code base
This code is written in python. To use it you will need:
- Anaconda - Anaconda includes all the Python-related dependencies
- Theano - Computational graphs are built on Theano
Download datasets to the 'data' folder
To train the model, try the command line below for detailed guide:
python train_models.py --help
To evaluate (dev or test) and save results, use the command line below for detailed guide:
python test_models_and_save.py --help
To generate sequences (with trained or randomly initialized models), try the command line:
python generate_sequences.py --help
To test statistical significance by boostrapping over dev/test set, try the command line:
python generate_sequences.py --help
This project is licensed under the MIT License - see the LICENSE file for details