Skip to content

LSTM-TrajGAN: A Deep Learning Approach to Trajectory Privacy Protection

Notifications You must be signed in to change notification settings

NebulaF/LSTM-TrajGAN

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LSTM-TrajGAN

LSTM-TrajGAN: A Deep Learning Approach to Trajectory Privacy Protection

Paper

If you find our code useful for your research, please cite our paper:

Rao, J., Gao, S.*, Kang, Y. and Huang, Q. (2020). LSTM-TrajGAN: A Deep Learning Approach to Trajectory Privacy Protection. In the Proceedings of the 11th International Conference on Geographic Information Science (GIScience 2021), pp. 1-16.

Requirements

LSTM-TrajGAN uses the following packages with Python 3.6.3

  • numpy==1.18.4
  • pandas==1.1.5
  • tensorflow-gpu==1.13.1
  • Keras==2.2.4
  • geohash2==1.1
  • scikit-learn==0.23.2

Usage

Training

Train the LSTM-TrajGAN model using the preprocessed data.

python train.py 2000 256 100

Where 2000 is the total training epochs, 256 is the batch size, 100 is the parameter saving interval (i.e., save params every 100 epochs).

Prediction

Generate synthetic trajectory data based on the real test trajectory data and save them to results/syn_traj_test.csv.

python predict.py 1900

Where 1900 means we load the params file saved at the 1900th epoch to generate synthetic trajectory data.

Test

Evaluate the synthetic trajectory data on the Trajectory-User Linking task using MARC.

python TUL_test.py data/train_latlon.csv results/syn_traj_test.csv 100

Where data/train_latlon.csv is the training data, results/syn_traj_test.csv is the synthetic test data, 100 is the embedder size.

Dataset

The data we used in our paper originally come from the Foursquare NYC check-in dataset.

References

We mainly referred to these two works:

May Petry, L., Leite Da Silva, C., Esuli, A., Renso, C., and Bogorny, V. (2020). MARC: a robust method for multiple-aspect trajectory classification via space, time, and semantic embeddings. International Journal of Geographical Information Science, 34(7), 1428-1450. Github

Keras-GAN: Collection of Keras implementations of Generative Adversarial Networks (GANs). Github

About

LSTM-TrajGAN: A Deep Learning Approach to Trajectory Privacy Protection

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%