Before executing the DPIM, please make sure the requirements are installed. If not, please install the requirements by running the following command:
python3 pip install -r requirements.txt
The DPIM offers two modes of execution:
-
Differential private In this mode, the DPIM is executed with differential privacy. The user can specify the epsilon (
$\epsilon$ ) value, as well as needed lower and upper bounds. The DPIM will then execute with the specified epsilon value and bounds. To avoid errors the lowest lower bound is the total number of activities$(\#unique\ activities)$ and the highest upper bound is the$(\#unique\ activities)^2 -1$ . -
Non-differential private In this mode, the DPIM is executed using
$\epsilon \rightarrow \infty$ . The lower and upper bounds are not needed as only those permutations are considered that occur in at least one trace.
Out of these two modi, the differential private mode is the default mode. To execute the DPIM in non-differential private mode, specify the --no-dp
flag.
To test the DPIM on a specific event log, you can run the following command:
python3 main.py <eventlog> --epsilon <epsilon> --lower <lower_bound> --upper <upper_bound>
where:
<eventlog>
is the path to the event log. This is a required argument.<epsilon>
is the epsilon value.<lower_bound>
is the lower bound.<upper_bound>
is the upper bound.
Or, for non-differential private mode, the user can run the following command:
python3 main.py <event_log> --no-dp
All synthetic event logs and the URLs to the BPI Challenges are in the event_logs directory.
Info: If no flag is given, or a specific flag is forgotten the DPIM asks the user to input the missing values.
The following arguments are available for the DPIM:
-
eventlog
The path to the event log. This is a required argument. -
-e, --epsilon
The$\epsilon$ value for differential privacy. The default value is 1.0. -
-l, --lower
The lower bound for the number of permutations. The default value is the$\#unique\ activities$ in the event log. -
-u, --upper
The upper bound for the number of permutations. The default value is the$(\#unique\ activities)^2 -1$ . -
-t --threshold
The threshold used by the Rejection sampler to accept the generated PST. The default is 0.95 -
--no-dp
The flag to run the DPIM in non-differential private mode,$\epsilon \rightarrow \infty$ .
To test the DPIM on the TF_5
event log with
python3 main.py event_logs\synthetic_EventLogs\TF_5.xes -e 1.0 -l 6 -u 35 -t 0.9
The following tables show the lower and upper bounds used for the BPI Challenge datasets (all links can be found at BPI) and the synthetic logs.
BPI Challanges | Synthetic Logs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@inproceedings{Schulze_2024,
author={Schulze, Max and Zisgen, Yorck and Kirschte, Moritz and Mohammadi, Esfandiar and Koschmider, Agnes},
title={Differentially Private Inductive Miner},
booktitle={2024 6th International Conference on Process Mining (ICPM)},
DOI={10.1109/icpm63005.2024.10680684},
publisher={IEEE},
year={2024},
pages={89–96} }