<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Discovery of Causal Treatment Rules From Event Logs (Extended Abstract)</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Zahra Dasht Bozorgi</string-name>
          <email>zdashtbozorg@student.unimelb.edu.au</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Aleksei Kopõlov</string-name>
          <email>aleksei.kopolov@ut.ee</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marlon Dumas</string-name>
          <email>marlon.dumas@ut.ee</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marcello La Rosa</string-name>
          <email>marcello.larosa@unimelb.edu.au</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Artem Polyvyanyy</string-name>
          <email>artem.polyvyanyy@unimelb.edu.au</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Melbourne</institution>
          ,
          <addr-line>700 Swanston St, Carlton, VIC 3053</addr-line>
          ,
          <country country="AU">Australia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Tartu</institution>
          ,
          <addr-line>Narva mnt 18, 51009 Tartu</addr-line>
          ,
          <country country="EE">Estonia</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <fpage>108</fpage>
      <lpage>112</lpage>
      <abstract>
        <p>ProLift is a Web-based tool that uses causal machine learning, specifically uplift trees, to discover rules for optimizing business processes based on execution data (event logs). ProLift allows users to upload an event log, to specify case treatments and case outcomes, and to visualize treatment rules that increase the probability of positive case outcomes. The target audience of ProLift includes researchers and practitioners interested in leveraging causal machine learning for process improvement.</p>
      </abstract>
      <kwd-group>
        <kwd>Abstract)</kwd>
        <kwd>process mining</kwd>
        <kwd>causal machine learning</kwd>
        <kwd>rule discovery</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Causal Process Mining is an emerging sub-field at the intersection of process mining and
machine learning that seeks to develop methods to discover and quantify causal-efect relations
by analyzing event logs. For decision making, recommendations based on causal relationships
generalize better than purely predictive models because predictions can be made from spurious
correlations that might not hold in future traces [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Therefore, we discover causal rules from
event logs that serve as recommendations to end users for optimizing the process outcome. For
example, in the context of a loan application process, loan managers can use these
recommendations to implement on-the-fly interventions aimed at maximizing the likelihood of a loan
applicant accepting an ofer for a loan.
      </p>
      <p>In this paper, we present ProLift, an open-source Web-based causal rule discovery tool that
helps decision makers to identify sub-groups of process cases that may benefit from a given
intervention (a.k.a. treatment). We describe the architecture of the tool, provide an example
scenario, and discuss the maturity and limitations of the tool.
nEvelop-O
CEUR</p>
    </sec>
    <sec id="sec-2">
      <title>2. Architecture</title>
      <p>
        ProLift is a Web application that implements the Causal Rule Discovery method proposed in
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. It takes an event log as input, preprocesses the log, extracts relevant features, trains a
causal model, and finally extracts rules. ProLift has four functional components: the Event
Log Pre-processing Component, the Feature Extraction Component, the Uplift Model Training
Component, and the Rule Extraction Component (fig. 1). We describe each component below.
      </p>
      <sec id="sec-2-1">
        <title>2.1. Event Log Pre-Processing</title>
        <p>The input to ProLift is an event log in which events have at least these three features: unique
case identifier, activity name, and activity end timestamp. ProLift parses the log, ensures the
requirements are fulfilled, and performs data cleaning steps, such as the removal of duplicate
events.</p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. Feature Extraction</title>
        <p>
          This component takes the pre-processed log and extracts feature vectors. The feature selection
takes into account the user’s preferences (i.e., which attributes to ignore in model training). For
event-level features, the tool uses the encoding methods commonly used in process mining (e.g.,
aggregation or last-state encoding) [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], and one-hot encoding for categorical features.
        </p>
      </sec>
      <sec id="sec-2-3">
        <title>2.3. Uplift Model Training</title>
        <p>
          This component uses feature vectors to build a causal model. Specifically, we use uplift trees as
our modeling algorithm because the conversion of trees to rules is straightforward, and also,
uplift trees were designed to deal with binary treatments and outcome settings, which is an
appropriate setting for optimizing process outcomes via a single treatment. In addition, uplift
trees can deal with biases present in observational data. We use the CausalML library [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ] to
build uplift trees.
        </p>
      </sec>
      <sec id="sec-2-4">
        <title>2.4. Rule Extraction</title>
        <p>In this component, we extract rules from the tree by tracing each path in the uplift tree from
root to leaf. Each split in the tree will narrow down the sup-group of cases. Each leaf of the tree
provides an uplift estimate, which we interpret as the probability of the treatment changing the
outcome.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Example</title>
      <p>As an example process, we consider a loan application process. A loan application process is
successful if the customer is happy with the loan ofer made to them and accepts it. There are
many treatments that one can apply to increase the rate of success in this process. For example,
one treatment is to increase the number of loan ofers if the customer is not happy with the
ifrst one. In this example, the number of ofers is a controllable attribute. Another possible
treatment is to decrease the monthly cost of the loan to make it more attractive to the customer
(e.g., by ofering a lower interest rate). In this case, the monthly cost is a controllable attribute.</p>
      <p>Project Configuration Page: Not all attributes in the event log are controllable by the
organization that runs the process. For instance, the customer determines the loan goal (e.g.,
home loan) and as such, this is an uncontrollable attribute for the organization. In ProLift, after
the user uploads an event log, they are taken to the project configuration page, where they can
specify the types of attributes. The following attribute types are supported: uncontrollable,
controllable, outcome, group identifier, ignore, and order by (e.g., event number).</p>
      <p>The user can also specify the data type for each attribute. The next step for the user is
to specify the outcome and treatment rules. The outcome rule is defined in the outcome
configuration section. For example, in our loan application example, we define the outcome as
positive if the column called Selected is equal to True. Similarly, in the treatment configuration
section, we define the treatment rule. For example, for the treatment related to sending multiple
ofers, the tool user can specify that the treatment is the occurrence of activity Send Ofer more
than once within a case.</p>
      <p>Model Configuration Page: Next, the user is presented with five sections on the model
configuration page (Fig. 3). In the Data Analytics section, two stacked bar charts are shown
(Fig. 4). These charts give an overview of the data with respect to the treatment and outcome
rules that have been specified in the project configuration page. The first graph illustrates the
stacked bar of the confusion matrix with respect to case length. In other words, the x-axis
indicates the size of an individual case in a given log while the y-axis is a confusion matrix that
depicts how many cases of the same length had a positive or negative outcome, how many had
a treatment present, and how many did not. The second graph illustrates a relation between
positive/negative outcomes and the number of interactions before the application of a treatment.
In other words, the x-axis indicates the number of actions/steps that have been taken before all
the treatment rules have been applied, and the y-axis indicates the outcome of a case. The Data
Balancing section allows end users to balance their data before model training. For instance,
they can specify what percentile of the data should be used for model training or what is the
maximum percentage diference in the confusion matrix values. The next tab is the Confusion
Matrix which displays the confusion matrix of the data used in model training according to
the specified balancing settings (Fig. 5). In the Model Settings section, the user can specify
the configuration of the causal model. After the model is built and the rules are extracted, the
rules will be displayed to the user in the Results section. The rules indicate sub-groups of cases
that will benefit from the specified treatment and sub-groups for which the treatment should
be avoided. Fig. 6 shows an example of the generated rules for sending multiple ofers as a
treatment.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Maturity</title>
      <p>
        We validated ProLift on a log of a loan origination process (BPI Challenge 2017). We compared
the discovered rules w.r.t. the findings of submissions to this challenge [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. We selected this
dataset because it is relatively large, there is a clear positive outcome (loan ofer accepted),
and several observed treatments. We also conducted tests on similar datasets, including a
purchase-to-pay log (BPI Challenge 2019). ProLift takes less than two minutes to handle these
logs. To further validate the tool, we plan to conduct case studies with domain experts.
      </p>
      <p>The source code of ProLift, together with installation instructions via a Docker container, are
available at: https://gitlab.com/aleksei.kopolov/action-recommendation. An online
demonstration version of ProLift is available at: https://prolift.cloud.ut.ee. A video demo of ProLift can be
found at https://youtu.be/rAfbx-nsR9I.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusion and Future Work</title>
      <p>
        ProLift discovers rules for increasing the success rate of a process, based on causal relationships
between treatments and case outcomes. The current version of ProLift supports only one causal
modeling technique, namely uplift trees [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. In the future, we will add support for other causal
models, including meta-learners. Another limitation is that ProLift currently only supports
recommendations for optimizing a binary process outcome. Another direction for future work
is to add support for numerical outcomes, such as case duration.
      </p>
      <p>Acknowledgments This research is supported by the Australian Research Council and the
European Research Council (PIX project).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Z. D.</given-names>
            <surname>Bozorgi</surname>
          </string-name>
          , I. Teinemaa,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Rosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Polyvyanyy</surname>
          </string-name>
          ,
          <article-title>Process mining meets causal machine learning: Discovering causal rules from event logs</article-title>
          ,
          <source>in: 2nd ICPM</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Z. D.</given-names>
            <surname>Bozorgi</surname>
          </string-name>
          , I. Teinemaa,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Rosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Polyvyanyy</surname>
          </string-name>
          ,
          <article-title>Prescriptive process monitoring for cost-aware cycle time reduction</article-title>
          ,
          <source>in: 3rd ICPM</source>
          ,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>H.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Harinen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.-Y.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Yung</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Zhao</surname>
          </string-name>
          ,
          <article-title>Causalml: Python package for causal machine learning</article-title>
          ,
          <year>2020</year>
          . arXiv:
          <year>2002</year>
          .11631.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>P.</given-names>
            <surname>Rzepakowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Jaroszewicz</surname>
          </string-name>
          ,
          <article-title>Decision trees for uplift modeling with single and multiple treatments, Knowl</article-title>
          . Inf. Syst. (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>