Skip to main content

A statistical learning toolkit for high-dimensional Hawkes processes in Python

Project description

Sparklen black logo

Toolkit for Hawkes Processes in Python

Goal

The purpose of Sparklen package is to provide the Python community with a complete suite of cutting-edge tools specifically tailored for the study of exponential Hawkes processes, with a particular focus on high-dimensional framework. It notably features:

  • A efficient cluster-based simulation method for generating events.

  • A highly versatile and flexible framework for performing inference of multivariate Hawkes process.

  • Novel approaches to address the challenge of multiclass classification within the supervised learning framework.

Installation

This section describes how to install the necessary dependencies to set up the package.

1. Install SWIG

Sparklen uses a C++ core code for computationally intensive components, ensuring both efficiency and performance. The binding between C++ and Python is handled through SWIG wrapper code.

So first, you need to install SWIG. Below are the instructions for various platforms.

Anaconda/Miniconda

If you're using Anaconda or Miniconda, install SWIG from the conda-forge channel:

conda install -c conda-forge swig

Linux (Ubuntu/Debian)

On Ubuntu or Debian-based systems, you can install SWIG using apt:

sudo apt update
sudo apt install swig

macOS (Homebrew)

On macOS, you can install SWIG using Homebrew:

brew install swig

Windows

For Windows, follow these steps:

  1. Download the latest SWIG release from the SWIG website
  2. Add the SWIG folder to your system's PATH environment variable

If you are using Chocolatey you can also install SWIG by running:

choco install swig

2. Get the Source Code

Clone the repository to get the latest version of the source code:

git clone https://github.com/romain-e-lacoste/sparklen.git
cd sparklen

3. Install the Package

It's recommended to set up a dedicated Python environment (e.g., using venv or conda). Once your environment is ready, install the package by running:

pip install .

Citing this work

If you found this package useful, please consider citing it in your work:

@article{lacoste2025sparkle,
      title={Sparkle: A Statistical Learning Toolkit for High-Dimensional Hawkes Processes in Python}, 
      author={Lacoste, Romain E.},
      year={2025},
      eprint={2502.18979},
      archivePrefix={arXiv},
      primaryClass={stat.ME},
      url={https://arxiv.org/abs/2502.18979}, 
}

Acknowledgement

This work has been supported by the Chaire “Modélisation Mathématique et Biodiversité” of Veolia-École polytechnique-Museum national d’Histoire naturelle-Fondation X

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sparklen-1.0.0.tar.gz (173.4 kB view details)

Uploaded Source

Built Distribution

sparklen-1.0.0-cp311-cp311-win_amd64.whl (277.1 kB view details)

Uploaded CPython 3.11Windows x86-64

File details

Details for the file sparklen-1.0.0.tar.gz.

File metadata

  • Download URL: sparklen-1.0.0.tar.gz
  • Upload date:
  • Size: 173.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for sparklen-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a37b3fab01eba40c77377c364e7f1c8b819cf439ad03caf0179fc6449b482621
MD5 6618b283f21c13f044045304a56d1042
BLAKE2b-256 c442f559a2ea7bbedde9660896cb325dfb38889be5979de97245c4dd1fb17f5c

See more details on using hashes here.

File details

Details for the file sparklen-1.0.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: sparklen-1.0.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 277.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for sparklen-1.0.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 89bca7fda06d0757a2dcb48c5657be4f7eccbefe8b24190f16d5a5c1b0a13588
MD5 bfb7f52e2a60f818063f74e7fcbd5875
BLAKE2b-256 5fc4467c51f01a5d715592610aa6aca7f97ff1e106a5adee0a4f1b5687b47842

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page