Skip to main content

Python library to perform learning and suffix prediction with background knowledge under concept drifts.

Project description

NeSy4PPM documentation

NeSy4PPM is the first Python package designed for both single-attribute (e.g., activity) and multi-attribute (e.g., activity and resource) suffix prediction in predictive process monitoring. It implements a Neuro-Symbolic (NeSy) system that integrates neural models with various types of symbolic background knowledge (BK), enabling accurate and compliant predictions even under concept drift.

NeSy4PPM offers the following key features:

  1. Symbolic knowledge integration: supports declarative and procedural BK, including DECLARE, MP-DECLARE (multi-perspective DECLARE), ProbDECLARE (probabilistic DECLARE), and Petri nets.

  2. Flexible learning: provides multiple prefix encoding methods and supports LSTM (Long Short-Term Memory) and Transformer architectures.

  3. Drift-aware prediction: contextualizes neural predictions using BK in real-time, enhancing prediction accuracy and compliance in dynamic environments.

Installation

We recommend using a virtual environment to avoid conflicts between your local Python setup and required libraries. You can use Conda or venv:

  1. Clone/download the NeSy4PPM project.

  2. Activate your virtual environment.

  3. Install the dependencies listed in requirements.txt using:: pip install -r requirements.txt

Alternatively, you can install NeSy4PPM directly from PyPi.

For ProbDECLARE BK conformance checking, install the Lydia backend using Docker:

  1. Install Docker

  2. Pull the Lydia image:

    docker pull whitemech/lydia:latest
  3. Make the Docker image executable under the name lydia. On Linux and macOS machines, the following commands should work:

    echo '#!/usr/bin/env sh' > lydia
    echo 'docker run -v$(pwd):/home/default whitemech/lydia lydia "$@"' >> lydia
    sudo chmod u+x lydia
    sudo mv lydia /usr/local/bin/

More information can be found at Logaut repository.

Tutorials

Here, you will find tutorials explaining how to utilize the different functionalities of NeSy4PPM. All tutorials can be downloaded and run from our Github. The tutorials use the Helpdesk log as a running example.

Repository Structure

  • NeSy4PPM/learning: contains the implementation of event log encoding and Neural Networks model training.

  • NeSy4PPM/ProbDeclmonitor: contains the implementation of suffix prediction using a contextualized Neural predictions with BK.

  • tests/: provides evaluation scripts for assessing the NeSy4PPM prediction performance.

  • docs/tutorials/: contains step-by-step guides and examples to help users get started with NeSy4PPM.

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

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

Source Distribution

nesy4ppm-0.1.tar.gz (7.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nesy4ppm-0.1-py3-none-any.whl (99.5 kB view details)

Uploaded Python 3

File details

Details for the file nesy4ppm-0.1.tar.gz.

File metadata

  • Download URL: nesy4ppm-0.1.tar.gz
  • Upload date:
  • Size: 7.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for nesy4ppm-0.1.tar.gz
Algorithm Hash digest
SHA256 fafe7d87c65c16f8cb39d6a4ab99f647a3d0c344f20f68c7660e8c6bc2009339
MD5 d78aeaee9b27265855110c3c1d778bea
BLAKE2b-256 009bff936e5b6c334ff77280487f141cda25476c488646150c9eac58e166da9f

See more details on using hashes here.

File details

Details for the file nesy4ppm-0.1-py3-none-any.whl.

File metadata

  • Download URL: nesy4ppm-0.1-py3-none-any.whl
  • Upload date:
  • Size: 99.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for nesy4ppm-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 681601616fbc3096eeeda82d2b7ce130b40cbd63d117426677dc128fb7829075
MD5 e827c54ff1091e8b4080b17bef684940
BLAKE2b-256 2d48be18279fc45739319c9e3afb70c6165d06b7588c972ce309c5d6adf44585

See more details on using hashes here.

Supported by

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