Process prediction comes to bupaR
The bupaR-development team is thrilled to share the newest member on the bupaverse:
The goal of
processpredictR is to perform prediction tasks on processes using event logs and Transformer models.
The 5 process monitoring tasks are defined as follows:
- outcome: predict the case outcome, which can be the last activity, or a manually defined variable
- next activity: predict the next activity type
- remaining trace: predict the sequence of all next activity types
- next time: predict the start time of the next activity instance
- remaining time: predict the remaining time till the end of the case
Based on the work of Vaswani, A. et all (2017) and A. Bukhsh, Z. et al (2021) processpredictR provides tools to perform predictions on the above discussed process monitoring tasks.
The overall approach is shown in the figure below.
processpredictR provides different levels of customization:
create_model(), a standard off-the-shelf model can be created for each of the supported tasks, including standard features. See more.
- By setting the argument
custom = TRUEinside of
create_model()only the basis of a transformer architecture is defined. See more.
- An example of a custom model further modified by using
keraspackage. See more.
By default two
plot() methods for the predictions visualizations are provided. Here is an example of a confusion matrix for the classification tasks.
# make predictions on the test set predictions <- model %>% predict(test_data = split$test_df, output = "append") # print confusion matrix
confusion_matrix(predictions)# plot confusion matrix in a bupaR style plot(predictions) + theme(axis.text.x = element_text(angle = 90))
Alternatively, a scatterplot can be visualized in the same way for the regression tasks.
Going forward, we are excited to share that many more interesting new functionalities are coming to bupaR in 2023, including algorithms for process discovery, trace clustering, and social network analysis!
Information on processpredictR, as well as all other bupaverse packages can be found on our documentation website docs.bupar.net. We have extended, revised and reorganised all documentation along 6 topics, all the way from installation to prediction. Furthermore, important bug-fixes and performance improvements were made to edeaR.