Skip to content

StephenPauwels/edbn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bayesian Networks in Business Processes

This repository contains all implementation files and experiments conducted for the Extended Dynamic Bayesian Networks introduced in [1].

All code for detecting anomalies [3] and make Predictions [4, 5] in Business Process Logs can be found in this repository.

All experiments in the papers can be reproduced using the files in the Anomalies and Predictions directory in the project.

Project Structure

  • Anomalies: Contains all files used for the experiments found in [1] and [3]
  • Concept Drift: Contains the files used for the BPI Challenge 2018 [2]
  • Data: Data used for the experiments
  • Methods: Implementations of all methods used
    • Bohmer: Contains our own implementation of the Likelihood Graphs introduced by Bohmer et al in [6]
    • Camargo: Contains the slightly adapted implementation used in [8]
    • DiMauro: Implementation used in [9]
    • EDBN: Contains our implementation of our Extended Dynamic Bayesian Network model
    • Lin: Our implementation of the method described in [10]
    • Nolle: Contains the original implementations used by Nolle et al in [7], extra libraries needed
    • Tax: Adapted implementation used in [11]
    • Pasquadibisceglie: Adapted implementation used in [12]
    • Premiere: Adapted implementation used in [14]
    • SDL: Implementation of our Single Dense Layer architecture [5]
    • Taymouri: Adapted implementation used in [13]
  • Predictions: Contains all experiments using predictions [4,5]
  • Utils: Some extra implementations regarding datastructures, preprocessing and data generation

How To Use

Anomaly detection

  • Load data using the Logfile class
      data_object = Logfile(...)
  • Train the EDBN model
      model = EDBN.Train.train(data_object)
  • Check for anomalies
      EDBN.Anomalies.test(data_object, output_file, model, label_attribute, normal_val)

Predictive monitoring

  • Load data
      data_object = Data.get_data("Helpdesk")
  • Select preprocessing settings
      settings = Predictions.setting.STANDARD
  • Prepare loaded data with selected settings
      data_object.prepare(settings)
  • Get prediction method
      m = Methods.get_prediction_method("SDL")
  • Train the model
      model = m.train(data_object)
  • Test the model
      results = m.test(model, data_object)
  • Get the score obtained by the model
      accuracy = Predictions.metric.ACCURACY.calculate(results)

References

  1. Pauwels, Stephen, and Toon Calders. "An Anomaly Detection Technique for Business Processes based on Extended Dynamic Bayesian Networks." (2019)
  2. Pauwels, Stephen, and Toon Calders. "Detecting and Explaining Drifts in Yearly Grant Applications." BPI Challenge 2018 (2018)
  3. Pauwels, Stephen, and Toon Calders. "Detecting Anomalies in Hybrid Business Process Logs." Applied Computing Review, Volume 19 Issue 2 Page 18-30 (2019)
  4. Pauwels, Stephen, and Toon Calders. "Bayesian Network based Predictions of Business Processes." Accepted for BPM Forum 2020
  5. Pauwels, Stephen, and Toon Calders. "Incremental Predictive Process Monitoring: The Next Activity Case" Accepted for BPM 2021.
  6. Böhmer, Kristof, and Stefanie Rinderle-Ma. "Multi-perspective anomaly detection in business process execution events." OTM Confederated International Conferences" On the Move to Meaningful Internet Systems". Springer, Cham, 2016.
  7. Nolle, Timo, et al. "BINet: Multi-perspective Business Process Anomaly Classification." arXiv preprint arXiv:1902.03155 (2019).
  8. Camargo, M., Dumas, M., Gonz ́alez-Rojas, O.: Learning accurate lstm models ofbusiness processes. In: International Conference on Business Process Management.pp. 286–302. Springer (2019)
  9. Di Mauro, N., Appice, A., Basile, T.M.: Activity prediction of business processinstances with inception cnn models. In: International Conference of the ItalianAssociation for Artificial Intelligence. pp. 348–361. Springer (2019)
  10. Lin, L., Wen, L., Wang, J.: Mm-pred: a deep predictive model for multi-attributeevent sequence. In: Proceedings of the 2019 SIAM International Conference onData Mining. pp. 118–126. SIAM (2019)
  11. Tax, N., Verenich, I., La Rosa, M., Dumas, M.: Predictive business process mon-itoring with lstm neural networks. In: International Conference on Advanced In-formation Systems Engineering. pp. 477–492. Springer (2017)
  12. Pasquadibisceglie, V., Appice, A., Castellano, G., & Malerba, D. (2019, June). Using convolutional neural networks for predictive process analytics. In 2019 International Conference on Process Mining (ICPM) (pp. 129-136). IEEE.
  13. Taymouri, F., La Rosa, M., Erfani, S., Bozorgi, Z. D., & Verenich, I. (2020). Predictive Business Process Monitoring via Generative Adversarial Nets: The Case of Next Event Prediction. arXiv preprint arXiv:2003.11268.
  14. Pasquadibisceglie V., Appice A., Castellano G., Malerba D. (2020) Predictive Process Mining Meets Computer Vision. In: Fahland D., Ghidini C., Becker J., Dumas M. (eds) Business Process Management Forum. BPM 2020. Lecture Notes in Business Information Processing, vol 392. Springer, Cham.

About

Repository containing all implementations and experiments for the EDBN model.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages