This is a PyTorch implementation of GNTPP in the paper GNTPP: `Exploring Generative Neural Temporal Point Process' (TMLR).
- torch>=1.7.0
- ticks
- xarray
- torchdiffeq
Dependency can be installed using the following command:
conda env create --file env_gntpp.yaml
conda activate GNTPP_env
Run the following commands to train the model.
# Training the Model
python tpp_train.py --dataset_dir ./data/{dataset}/ --hist_enc {encoder} --prob_dec {decoder}
{dataset} can be replaced by [mooc, retweet, stackoverflow, yelp, synthetic_n5_c0.2]
.
{encoder} can be replaced by [LSTM, Attention]
.
{decoder} can be replaced by [CNF, Diffusion, GAN, ScoreMatch, VAE, LogNorm, Gompt, Gaussian, Weibull, FNN, THP, SAHP]
.
(NOTE: The provided THP and SAHP use different type-modeling methods (type-wise intensity modelling), while others model all the types in a single sequence. So the final metric evaluation will be in a different protocol.)
Some of the datasets are larger than allowed, so we provided all these datasets file at Google Drive.
If you want to use your own dataset, please prepare it in a Dict
, where the keys include timestamps
, types
, lengths
, intervals
, t_max
and event_type_num
. (Refer to Line.88 in ./datasets/tpp_loader.py
).
If you want to build up your own model, please refer to ./test.py
, to see how the different modules in our paper constitute the TPP models.
For learned model, Trainer.plot_similarity
method could provide the relations among events learned by the model. A similarity matrix will be generated, which looks like the following:
If the repository is helpful to your research, please cite the following:
@article{
lin2022GNTPP,
title={Exploring Generative Neural Temporal Point Process},
author={Haitao Lin and Lirong Wu and Guojiang Zhao and Pai Liu and Stan Z. Li},
journal={Transactions on Machine Learning Research},
year={2022},
url={https://openreview.net/forum?id=NPfS5N3jbL},
note={}
}
or
@misc{lin2022GNTPP,
doi = {10.48550/ARXIV.2208.01874},
url = {https://arxiv.org/abs/2208.01874},
author={Haitao Lin and Lirong Wu and Guojiang Zhao and Pai Liu and Stan Z. Li},
keywords = {Machine Learning (cs.LG), FOS: Computer and information sciences, FOS: Computer and information sciences},
title = {Exploring Generative Neural Temporal Point Process},
publisher = {arXiv},
year = {2022},
copyright = {Creative Commons Attribution 4.0 International}
}