Skip to content

Improved Classifier Training Methods for Predictive Process Monitoring

Notifications You must be signed in to change notification settings

mshoush/Predictive_Process_Monitoring_master_thesis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Improved methods for Predictive Process Monitoring:

This project is an extension to work done by irhete/predictive-monitoring-thesis as a master thesis at the University of Tartu, Estonia. In this thesis, we introduced three different methods to improve the currently existing techniques of outcome-oriented predictive process monitoring.

This repository and our contributions are organized as follows:

  • Contribution 1: Adding CatBoost method to outcome-oriented PPM techniques.
  • Contribution 2: Adding a new complex sequence encoding technique on the basis of discrete wavelet transform and neural networks.
  • Contribution 3: Adding Inter-case features to the experiments.

Dataset:

You need to download below datasets and modify the path in dataset_confs.py script.

Reproduce results:

  • To run this project, you need to install packages from requirements.txt file, and to do so run the below command:

                conda create --name env_name --file requirements.txt --yes
    
  • Above command will create a virtual environment, so you need to activate it afterwards using below command:

                conda activate env_name
    
  • To reproduce results for each contribution you need to go inside the corresponding folder, and then run the following commands:

    1. Hyperparameter optimization:

                           python experiments_optimize_params.py <data set> <bucketing_encoding> <classifier> <nr_iterations>
      
    2. Training and evaluating final models:

                           python experiments.py <data set> <bucketing_encoding> <classifier>
      
    3. Execution times of final models:

                           python experiments_performance.py <data set> <bucketing_encoding> <classifier> <nr_iterations>
      
  • For Example_CatBoost:

                cd ./CatBoost/
                python experiments_optimize_params.py production single_laststate catboost 1
                python experiments.py production single_laststate catboost 
                python experiments_performance.py production single_laststate catboost 1
    
  • For Example_Wavelet:

               cd ./Wavelet/
               python experiments_optimize_params.py production single_waveletLast catboost 1
               python experiments.py production single_waveletLast catboost 
               python experiments_performance.py production single_waveletLast catboost 1
    
  • For Example_Inter-case features:

                cd ./Inter-case_features/
                python experiments_optimize_params.py production single_laststate catboost 1
                python experiments.py production single_laststate catboost 
                python experiments_performance.py production single_laststate catboost 1
    

About

Improved Classifier Training Methods for Predictive Process Monitoring

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published