Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explainability signal #9

Merged
merged 54 commits into from
May 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
e61a158
Initial commit explainer module
MarcusRostSAP Feb 21, 2024
3ace9db
Some experimentation
MarcusRostSAP Feb 27, 2024
7ae2895
Tried a new heurstic
MarcusRostSAP Feb 28, 2024
c0b4ccf
Some code clean up
MarcusRostSAP Mar 1, 2024
956fdc1
Slight change in logic
MarcusRostSAP Mar 1, 2024
31fab70
added activation feature
MarcusRostSAP Mar 7, 2024
5b1b525
Made some changes to the activation and logic
MarcusRostSAP Mar 14, 2024
d174146
Updated notebook
MarcusRostSAP Mar 14, 2024
17889ce
some small logic changes
MarcusRostSAP Mar 14, 2024
bf00dc2
Notebook compile
MarcusRostSAP Mar 14, 2024
a2b3016
added shapley_values
MarcusRostSAP Mar 18, 2024
bd61c2f
Progress on shapely for traces
MarcusRostSAP Mar 21, 2024
78ac617
Added comments
MarcusRostSAP Mar 22, 2024
55ac8e7
Linting issues
MarcusRostSAP Mar 22, 2024
05b67ce
Linting
MarcusRostSAP Mar 22, 2024
7818b3a
Linting
MarcusRostSAP Mar 22, 2024
384e06d
more linting
MarcusRostSAP Mar 22, 2024
baf65df
More linting
MarcusRostSAP Mar 22, 2024
0397671
Linting
MarcusRostSAP Mar 22, 2024
813097d
Linting
MarcusRostSAP Mar 25, 2024
f5ef8b7
linter
MarcusRostSAP Mar 25, 2024
e760cde
Linter
MarcusRostSAP Mar 25, 2024
3f11afd
Linting
MarcusRostSAP Mar 25, 2024
7e2c836
Added minimal solution feature
MarcusRostSAP Apr 3, 2024
acda6a4
Linting
MarcusRostSAP Apr 3, 2024
f3bd947
Linter
MarcusRostSAP Apr 3, 2024
6288107
Linter
MarcusRostSAP Apr 3, 2024
11df388
Updated explainer
MarcusRostSAP Apr 23, 2024
c1a8211
trail commit
MarcusRostSAP Apr 23, 2024
9b04b6a
Optimized the algorithm for counterfactual
MarcusRostSAP Apr 23, 2024
dfce47a
Updated tutorial
MarcusRostSAP Apr 23, 2024
84a832e
Fixed weird bug
MarcusRostSAP Apr 24, 2024
3b17ada
Ran notebook again
MarcusRostSAP Apr 24, 2024
25bad93
Some progress
MarcusRostSAP Apr 29, 2024
de9ff73
Added cache to API calls
MarcusRostSAP Apr 30, 2024
f67caf3
Changed location of tests
MarcusRostSAP Apr 30, 2024
edfc5d7
Linting
MarcusRostSAP Apr 30, 2024
18c9294
Lint
MarcusRostSAP Apr 30, 2024
13b1d17
Lint
MarcusRostSAP Apr 30, 2024
a7831c9
Lint
MarcusRostSAP Apr 30, 2024
f804d5b
Lint
MarcusRostSAP Apr 30, 2024
dd045d2
Lint
MarcusRostSAP Apr 30, 2024
79faa02
Linter
MarcusRostSAP Apr 30, 2024
aaf815e
Linteer
MarcusRostSAP Apr 30, 2024
4a3d97f
added init_.py file
MarcusRostSAP May 2, 2024
b17cdec
Updated tutorial
MarcusRostSAP May 2, 2024
00bc962
asd
MarcusRostSAP May 2, 2024
1b60d24
Updated readme
MarcusRostSAP May 2, 2024
97ee880
Lint
MarcusRostSAP May 2, 2024
129bd46
Reformat code
MarcusRostSAP May 6, 2024
564bbcb
Reformat
MarcusRostSAP May 6, 2024
7dede08
Linter
MarcusRostSAP May 6, 2024
3cd3e09
Changed test wording
MarcusRostSAP May 6, 2024
a3c07ee
Changed file locations
MarcusRostSAP May 6, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -135,3 +135,8 @@ dmypy.json
.idea/

.vscode/

# explainer Stuff
explainer/test.py
explainer/old_code.py
tutorial/conf.py
1 change: 1 addition & 0 deletions bpmnconstraints/script.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Entry point for bpmnsignal command. Verifies argument and runs parser."""

# pylint: disable=import-error
import argparse
import logging
Expand Down
1 change: 1 addition & 0 deletions bpmnconstraints/utils/plot.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
"""
Module for plotting functions.
"""

# pylint: disable=import-error

import matplotlib.pyplot as plt
Expand Down
15 changes: 15 additions & 0 deletions explainer/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Symbolic Explanations of Process Conformance Violations
This module is made by Marcus Rost, for his thesis subject, **Symbolic Explanations for Control-Flow Objects**.

The code should work properly, with some hard-coded parts that requires the data set for the signal code to function. This module is more seen as a proof of concept, where some core functions from explainability theory is utilized.

## Overview
The module mainly consists of 2 classes, ExplainerRegex and ExplainerSignal.

**ExplainerRegex** is meant to simulate a real event log and system, with traces and constraints, using regex patterns.

**ExplainerSignal** uses real event logs to calculate the explanations. This uses SAP Signavio's API to do so, but should in reality have it's own interpreter for the Signal queries, instead of having to make API calls.

Currently, the Signal code is sort of bad and specialized for the specific data set used. Hopefully, someone can see the value of what it done, and generalize it further.

There is also 2 Notebook's located in `explainer/tutorial`, but I recommend doing `bpmn2constraints/tutorial/tutorial.ipynb` first, to see how to do the configuration for the API works.
Empty file added explainer/__init__.py
Empty file.
Loading
Loading