<!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>Interactively Exploring Logs and Mining Models with Clustering, Filtering, and Relabeling</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Xixi Lu</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dirk Fahland</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wil M.P. van der Aalst</string-name>
          <email>w.m.p.v.d.aalstg@tue.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Eindhoven University of Technology</institution>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Exploring Log for Complementing Process Discovery</institution>
        </aff>
      </contrib-group>
      <fpage>44</fpage>
      <lpage>49</lpage>
      <abstract>
        <p>Real-life event logs often contain many data quality issues, which obstruct existing discovery algorithms from discovering meaningful process models and process analysts from conducting further process analysis. In this paper, we present an integrated tool that provides support for dealing with three of these data issues: logs comprising recordings of multiple heterogeneous variants of a process; traces containing multitude of deviating events in an infrequent context; event labels being imprecise. The tool is called Log to Model Explorer and helps users in interactively and iteratively exploring and preprocessing a log by clustering, filtering and event relabeling, enabling them to discover more meaningful process models.</p>
      </abstract>
      <kwd-group>
        <kwd>Process Mining</kwd>
        <kwd>Log Exploration</kwd>
        <kwd>Log Preprocessing</kwd>
        <kwd>Trace Clustering</kwd>
        <kwd>Log Filtering</kwd>
        <kwd>Duplicated Tasks</kwd>
        <kwd>Event Label Refinement</kwd>
        <kwd>Process Discovery</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>This model has a large tau-loop with every activity in the loop can be skipped.
log (by choosing from various techniques), then discover a model and evaluate whether
the model is good or further/different preprocessing is required. User would have to try
dozens clustering plugins, filter the log in various ways and apply multitude discovery
algorithms, not to mention the parameters he/she need to set when trying them. This
makes exploring a log a rather laborious task, especially if the user does not know
where the issue lies and the methods he needs may be distributed over different tools.
Support for interactively exploring a log for discovering suitable models is missing.</p>
      <p>This paper describes the plugin Log to Model Explorer in the TraceMatching
package of the Process Mining framework ProM2. The plugin allows users explore different
views on a log by integrating the support for three main preprocssing functionalities:
clustering traces into variants, filtering infrequent behavior, and refining imprecise
labels. The tool immediately shows the result of each preprocessing step by for example
visualizing the model discovered. This allows user interactively and iteratively explore
the log and discover models of interest. It integrates our previous work on clustering,
filtering [2] and relabeling techniques [3] for control-flow behavior.</p>
      <p>The aim of this demo paper is to demonstrate the basic concepts of the Log to Model
Explorer and illustrate its general functionality and suitable use cases. We demonstrate
our ideas on a random sample of 1000 traces of the Road Traffic Fine (RTF) log [1].
A screencast which demonstrates the features of the plugin and how it can be used in
practice using the same log can be downloaded3. In Sect. 2, we first give an overview of
the tool and explain the three main functionalities: clustering, filtering and relabeling.
In the end, we discuss related tools and future work as we conclude.
2</p>
      <p>
        The Log to Model Explorer
Our tool integrates three pre-processing operations on the log (clustering, filtering and
relabeling) with immediate discovery of a model on (parts of) the pre-processed log.
Fig. 2 shows an overview of possible paths comprising these four steps. Given an input
log, the tool starts with clustering the traces based on their behavioral similarity (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ). By
selecting a cluster, the user is shown the corresponding sublog or the model discovered
on this sublog (
        <xref ref-type="bibr" rid="ref4 ref5">4</xref>
        ). Optionally, the user may apply a filter on this sublog to remove
infrequent events (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) and view the result of such filter (
        <xref ref-type="bibr" rid="ref4 ref5">4</xref>
        ). Next, for a cluster, the user
may choose to refine event labels (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) while exploring different representations of models
(
        <xref ref-type="bibr" rid="ref4 ref5">4</xref>
        ). After refining the labels, the user may decide to cluster the relabeled sublog again,
and so on, iteratively. Fig. 3 shows the main GUI of the tool, highlighted with the
enumerated sections that correspond to the aforementioned steps. Both logs and models
at any stage can be exported for further analysis.
2 Availabel in the ProM nightly builds under: http://promtools.org
3 https://svn.win.tue.nl/repos/prom/Documentation/TraceMatching/2016demo.mp4 or watch
online at https://vimeo.com/176721009
      </p>
      <p>4. Discover</p>
      <p>Cluster 1</p>
      <p>Model 1</p>
      <p>Model n
4. Discover</p>
      <p>Model n
4. Discover
Event log
1. Cluster Cluster n 2. Filter Cluster n 3. Relabel Cluster n
(Repeat )
1. Cluster view</p>
      <p>3. Relabel view
2. Filter view</p>
      <p>
        Info view
4. Discover/Visualize view
Trace Clustering. Trace clustering is an essential step of log-preprocessing to identify
variants of the process in the log that are behaviorally similar [4]. A sublog of
behaviorally similar traces is more likely to yield a more coherent and structured model. We
use the clustering technique of [2] that measures behavior similarities of traces and
builds a hierarchy of clusters, which we visualize as a tree in the cluster view (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) as
shown in Fig. 3. The root node has a set of main clusters as its children. Each main
cluster can be further expanded to view its sub-clusters. The user may select any
(sub)cluster and explore the cluster further. When a user selects a cluster, the plugin invokes
the current visualizer, for example the Inductive Miner [5], which immediately shows
the model descovered that represents this part of the log. It is also possible to view
the selected cluster and its child-clusters together by checking the radio-button “Show
child-clusters”. For example, Fig. 4 shows that the user selected cluster 1982; the
righthand side of the screen shows at the top the model discovered for cluster 1982 and below
the models for the two children of cluster 1982, i.e., the sub-variants. When inspecting
the two sub-clusters, we see that the first one shows multiple executions “Payment”
(in a loop) whereas the second sub-cluster shows no “Payment” has been executed; the
model of the parent cluster 1982 combines both into a loop that can be skipped.
Context-Aware Event Filtering. Next, the user may decide to filter infrequent
behavior, sometimes interchangeably called deviations or noise, from the traces of a cluster
to reveal the main behavior of the cluster. This filtering technique is based on the
deviation/noise detection described in [2] which does not requiring any normative process
model. We consider an event e of activity A infrequent (uncommon, deviating) if e has a
context of preceding and succeeding events that is different from most other occurrences
Parent-cluster 1982
Sub-cluster 1
Sub-cluster 2
0. .  Payments
1. .  Payments
No Payment
of activity A. For example, assume a log with 99 traces habcdi and 1 trace habdbdei;
activity b has two contexts, between a and c, and between c and d; the latter one is
infrequent. In a similar way, the single occurrence of e can be classified as infrequent.
Our plugin provides a filter to remove all such infrequently classified events below a
user-chosen threshold. The filtered log only shows the frequent behavior. Selecting a
cluster (1993) in the RTF sample, we respectively obtain three models shown in Fig. 5
by filtering the cluster by 0%, 1% and 5%. Note that when setting the threshold to 5%,
the loop around “Payment” is removed, revealing that less than 5% of the cases have a
second “Payment”.
      </p>
      <p>Event Relabeling. In addition to clustering and filtering, we also provide support for
refining event labels. Relabeling events allows user explore different representations
of the same log, in particular when events of the same activity have clearly different
contexts that are equally frequent. For example, assume the traces 1 = habcdi and
2 = habcbdei are equally frequent. Rather than filtering out the second b in 2, the
user may want to view and analyze all behavior in the log. Giving the log as-is to a
discovery algorithm would introduce a loop for repeated execution of b, but also several
skip steps to allow d to occur after c (as in 1) and after b (as in 2), thus introducing
many more behaviors. Alternatively, our plugin detects that the second b in 2 has
a different context and allows to relabel it to b2 allowing to discover a more precise
model [3]. The user can influence the amount of relabeling by threshold parameters.
Together with a discovery algorithm that guarantees discovering a fitting model, the user</p>
      <p>The plugin automatically suggests imprecise labels for relabeling.</p>
      <p>The user may also select a set of labels for relabeling.</p>
      <p>Appeal to Judge</p>
      <p>Appeal to Prefecture
The two sliders for influencing the amount of
relabeling: to the left more relabeling; to the right
less relabeling.</p>
      <p>Payment</p>
      <p>Skip
Payment
may now explore different models for the (sub)log that are all fitting but have different
precision (generalization). Taking the RTF sample, the relabeling allowed us to find the
duplicated tasks (“Payment”, “Add pentaly” and “Send for Credit Collection”) and to
discover two alternative paths in the model as shown in Fig. 6: if offenders decide to
“Appeal to Judge”, then there is always a “Payment”; if offenders decide to “Appeal to
Prefecture”, then there are alternatives to skip “Payment”. User may export discovered
models, relabeled logs or original logs of cluster in ProM for further analysis.
Conclusion, Limitation and Future Work. In this paper, we presented the Log to
Model Explorer as an integrated tool for log preprocessing and discovering more
suitable models for a log. We showed that the tool supports three main functionalities: trace
clustering, infrequent event filtering, and event label refinement. Currently, commercial
tools such as Disco and Celonis4 have extensive support for filtering a log for obtaining
a variant but require the user to know which variant he/she want to have. Furthermore,
these tools also suffer from the imprecise label problems and often discover
spaghettilike process maps. Available academic tools focus on solving one particular data
quality issue; using them iteratively is tedious. A limitation of our tool is its performance
in handling large logs; the running time scales polynomial in number of events.
Currently, random sampling is used for improving the performance. As next step, we plan
to generalize the tool into a framework for exploring an event log, allowing different
clustering, filtering and log visualization techniques to be integrated.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. de Leoni,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Mannhardt</surname>
          </string-name>
          ,
          <string-name>
            <surname>F.</surname>
          </string-name>
          :
          <article-title>Road Traffic Fine Management Process</article-title>
          .
          <source>Technical report</source>
          , Eindhoven University of Technology (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Lu</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahland</surname>
            , D., van den Biggelaar,
            <given-names>F.J.H.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          :
          <article-title>Detecting deviating behaviors without models</article-title>
          .
          <source>In: BPM</source>
          <year>2015</year>
          , Workshops, Springer (
          <year>2015</year>
          )
          <article-title>(to appear)</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Lu</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahland</surname>
            , D., van den Biggelaar,
            <given-names>F.J.H.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          :
          <article-title>Handling duplicated tasks in process discovery by refining event labels</article-title>
          .
          <source>In: BPM 2016</source>
          , Springer (
          <year>2016</year>
          )
          <article-title>(to appear)</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Greco</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guzzo</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pontieri</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sacca`</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Discovering expressive process models by clustering log traces</article-title>
          .
          <source>IEEE Trans. Knowl. Data Eng</source>
          .
          <volume>18</volume>
          (
          <issue>8</issue>
          ) (
          <year>2006</year>
          )
          <fpage>1010</fpage>
          -
          <lpage>1027</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>4 Disco :https://fluxicon.com/disco/; and Celonis : http://www.celonis.de/</mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          5.
          <string-name>
            <surname>Leemans</surname>
            ,
            <given-names>S.J.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahland</surname>
            , D., van der Aalst,
            <given-names>W.M.P.</given-names>
          </string-name>
          :
          <article-title>Discovering Block-Structured Process Models from Event Logs - A Constructive Approach</article-title>
          .
          <source>In: Application and Theory of Petri Nets and Concurrency</source>
          . (
          <year>2013</year>
          )
          <fpage>311</fpage>
          -
          <lpage>329</lpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>