<!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>Detecting Infrequent Behavior in Event Logs using Statistical Inference</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Lisa Petrak</string-name>
          <email>lisa.petrak@informatik.uni-augsburg.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Robert Lorenz</string-name>
          <email>robert.lorenz@informatik.uni-augsburg.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science University of Augsburg</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <fpage>33</fpage>
      <lpage>48</lpage>
      <abstract>
        <p>Process discovery is one of the key challenges in process mining. It aims at discovering process models from event logs recorded from process executions. One of the main problems with process discovery is that in real event logs often irrelevant or faulty infrequent behavior is present. Process models including such infrequent behavior are complex and hard to understand and hide the relevant main behavior of the underlying process. In this paper we describe a new general approach to filter dependencies between activities that are based on infrequent behavior in a given event log. Afterwards the data can be further analyzed with other methods and converted into a process model. The approach uses statistical methods based on hypothesis tests. Its main advantage is the obtained statistical foundation of the results including an upper bound for the risk of false classifications. We present an implementation and prove its general applicability for real life event logs.</p>
      </abstract>
      <kwd-group>
        <kwd>Process Mining</kwd>
        <kwd>Process Discovery</kwd>
        <kwd>Noise Filtering</kwd>
        <kwd>Detection of Infrequent Behavior</kwd>
        <kwd>Hypothesis Test</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Process discovery is one of the key challenges in process mining. It aims
at discovering process models from event logs recorded from process
executions. One of the main problems with process discovery is that in
real event logs often irrelevant or faulty infrequent behavior is present
(e.g. noise or exceptional behavior) [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Process models including such
infrequent behavior are complex and hard to understand and hide the
relevant main behavior of the underlying process.
      </p>
      <p>
        There are several process discovery algorithms which are able to
handle infrequent behavior [
        <xref ref-type="bibr" rid="ref15 ref16 ref4 ref6 ref7 ref8">7,8,4,15,16,6</xref>
        ] and commercial process mining
tools (e.g. Disco [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and others) allow to filter infrequent behavior in
order to reduce the complexity of resulting models. These techniques are
based on heuristics using thresholds and do not serve as general
filtering techniques, since they are combined with the considered discovering
method and resulting process model. Moreover, some of these algorithms
are just using frequencies or are resulting in models not being sound or
executable. In [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] a general filtering technique exploiting observed
conditional probabilities between sequences of activities is proposed in order
to filter traces with infrequent occurrences of activities. It is used as a
preprocessing step before applying an arbitrary discovery technique. The
authors show that the proposed method improves the precision of
discovery results. However, the thresholds used for filtering have to be found
experimentally and there is no statistical foundation. Other relevant
approaches need additional information [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] or cannot detect all types of
infrequent behavior [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>We describe a new general approach to filter dependencies between
activities that are based on infrequent behavior in a given event log.
Afterwards the data can be further analyzed and converted into a process
model with other methods. The approach uses statistical methods based
on hypothesis tests. Its main advantage is the obtained statistical
foundation of the results. In particular, the meaning of the upper bound
chosen by the user to classify infrequent behavior is clear, and there is
an upper bound for the risk of false classifications.</p>
      <p>We exemplarily apply hypothesis tests to filter infrequent observations
of directly following events, present an implementation and prove its
general applicability for real life event logs. The user sets the following
parameters controlling the filtering:
– p0: 1 −p0 serves as upper bound for the probability of the occurrence
of directly following events being classified as infrequent.
– α: serves as upper bound for the error probability of falsely
classifying the occurrence of directly following events as infrequent.
The result of the filtering is a correlation matrix and a causal footprint
omitting observations of directly following events detected as infrequent.
These models can be used for further analysis and discovery techniques.
The proposed technique can also be used to filter w.r.t. other properties
or parts of logs, which can be infrequent, e.g. single occurrences of events
in traces, concurrent occurrences of events or complete traces.
In the following chapter, all basic notations concerning logs are explained
first, then Sect. 3 introduces basic statistical terms as well as definition
and general use of hypothesis tests. In Sect. 4 the procedure for detecting
infrequent behavior is presented in detail. In Sect. 5 a short comparison to
other filtering methods which are also based on fractions of observations
of direct following events is given. In Sect. 6 our implementation of the
procedure is described and the evaluations of the program are briefly
outlined. Sect. 7 gives an outlook on further work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Background</title>
      <p>
        We denote the natural numbers by N and N0 := N ∪ {0}. Let T be a set,
then m : T → N0 is a multiset over T . For a ∈ T we denote by m(a)
the number of occurences of a in m. We write a ∈ m if a is contained
in m, i.e. a ∈ m :⇔ m(a) &gt; 0. A finite multiset m over A with elements
a1, . . . , an is also written in the form [a1m(a1), . . . , anm(an)].
Definition 1 (Event, Trace, Event log [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]). Let T be a set of
activities.
– An event is the occurence of an activity a ∈ T .
– A trace σ = ht1, . . . , tni ∈ T ∗ is a sequence of events.
      </p>
      <p>• An activity a ∈ T is contained in σ if it occurs in σ at any time
(a ∈ σ :⇔ σ = ht1, . . . , tni ∧ ∃i ∈ {1, . . . , n} : ti = a).
• Let σ = ht1, . . . , tni ∈ T ∗ be a trace with n ≥ 1. We define
first(σ) := t1 and last(σ) := tn.</p>
      <p>– An event log L : T ∗ → N0 over T is a multiset of traces.
The preprocessing method will be demonstrated with the example log
L = [ha, b, ci100 207, ha, b, di100 013, hb, a, ci98 020, hb, a, di1 002,
hb, a, d, ci15 584]. We use the following ordering relations.</p>
      <p>
        Definition 2 (Ordering relations [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]). Let L be an event log over
T . We introduce the following binary causal relations on T :
– a &gt;L b if and only if a trace σ = ht1, . . . , tni ∈ L and a number
i ∈ {1, . . . , n − 1} exist, with ti = a and ti+1 = b
– a →L b if and only if a &gt;L b and b ≯L a
– a #L b if and only if a ≯L b and b ≯L a
– a kL b if and only if a &gt;L b and b &gt;L a.
      </p>
      <p>For the example log introduced above, this definition results in the
following ordering relations:
– &gt;L= {(a, b), (a, c), (a, d), (b, a), (b, c), (b, d), (d, c)}
– →L= {(a, c), (a, d), (b, c), (b, d), (d, c)}
– #L = {(a, a), (b, b), (c, c), (d, d)}
– kL= {(a, b), (b, a)}.</p>
      <p>For detecting infrequent behavior, we will use hypothesis tests that
analyze how often some event is directly followed by another event in the
traces in a given event log. For this purpose, the information on
successive events is summarized in the so-called correlation matrix. This
matrix is then used for several hypothesis tests to identify which
predecessor/successor pairs of events occur so rare in the traces that they are
not considered as main process behavior.</p>
      <p>Definition 3 (Correlation matrix). Let L be an event log over T .
Further, TStart := T ∪{Start} and TEnd := T ∪{End} with Start, End ∈/
T . The correlation matrix for event log L is a square matrix CL :=
N|0TStart| × N0
|TEnd| with CL := (CiL,j )i∈TStart,j∈TEnd , where</p>
      <p>|(i, j)|&gt;L if i, j ∈ T
CiL,j = Pσ∈L,first(σ)=j L(σ) if i = Start, j ∈ T , σ 6= λ
Pσ∈L,last(σ)=i L(σ) if i ∈ T , j = End, σ 6= λ
L(λ) if i = Start, j = End.</p>
      <p>Here λ denotes the empty trace and for i, j ∈ T the value |(i, j)|&gt;L is the
number of times i is directly followed by j in all traces contained in L.
The correlation matrix belonging to our example event log L =
[ha, b, ci100 207, ha, b, di100 013, hb, a, ci98 020, hb, a, di1 002, hb, a, d, ci15 584]
looks as follows:
Start
a
b
c
d
In our preprocessing method we have to identify the binary causal
relations between all occurring activities. In summarized form, the relations
of a process are represented in a footprint.</p>
      <p>Definition 4 (Footprint). Let R := {→L, ←L, kL, #L}, L an event
log and T the set of activities occurring in L.</p>
      <p>The footprint of event log L is a square matrix F L := R|T | × R|T | with
F L := (FiL,j )i,j∈T , where FiL,j is the relation R ∈ R for which iRj holds.
The relation ←L is intuitively defined as a ←L b :⇔ b →L a. Using the
ordering relations already determined, we obtain the following footprint
for our example log:</p>
      <p>a b c d
a # k → →
b k # → →
c ← ← # ←
d ← ← → #
The result of our preprocessing method is later represented as the
updated footprint ignoring the infrequent behavior.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Hypothesis tests</title>
      <p>
        As mentioned before, we want to use hypothesis tests to decide which
pairs of events directly following each other should be considered as
infrequent behavior for a given event log. This section first describes some
basic statistical terms according to Hornsteiner in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and afterwards the
definition and use of hypothesis tests according to Fischer et al. in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
Basic statistical terms A population is the set of all objects to which
a statistical analysis refers. A sample is a (random) subset of the
population. It has size n when consisting of n elements. Since often not all
objects of the population are known for the analysis of data or a
collection of all data would be too time-consuming, a sample must be used
which reflects the population as accurately as possible. This is the only
way to make reliable statements about the population using statistical
methods. As a general rule, the larger the sample, the more likely it is
to obtain a good result.
In our case, we want to make statements about the direct succession of
events in sequential executions of a given process. In a hypothesis test,
which examines the succession of the events a and b, the set of all pairs
of events (x, y), such that
– x is directly followed by y in a sequential execution of the process
and
– x equals a and/or y equals b (otherwise (x, y) contains no information
about the direct succession of a and b),
is regarded as population. Since this information about the process is
unknown, the subset of those pairs (x, y) such that x is directly followed
by y in a trace recorded in the event log of the process serves as sample.
A variable Z is called discrete random variable if its value is random and
in a countable result set. In our hypothesis tests we use discrete
random variables that specify the number of pairs (a, b) in the sample. The
different values of a random variable, together with their probabilities,
describe the so-called distribution of this random variable. The
probability P (Z = z) of z being the value of Z is the probability mass function.
The probability P (Z ≤ z) that the value of Z will not be higher than a
certain value z is the distribution function.
      </p>
      <p>A probability distribution frequently occurring with discrete random
variables is the so-called binomial distribution. This occurs, for
example, when there is a set of objects from which several objects are drawn
one after the other (each one is put back before drawing the next one)
and checked for a certain property. One object is randomly selected at
a time and the number of objects drawn so far is increased by 1. If the
drawn object has the desired property, the number of drawn objects with
this property is also increased by 1. The drawn object is then put back to
the set of the other objects. Now another object can be drawn from the
original set. This process is repeated until the desired number of drawn
objects is reached. In the hypothesis tests performed by us, all pairs
(x, y) of directly succeeding events with predecessor x = a or successor
y = b are considered (“drawn”). The desired property is fulfilled exactly
by the pairs equal to (a, b).</p>
      <p>The probability mass function of a binomially distributed random
variable is
bn;θ(z) =
( n
z · θz · (1 − θ)n−z for z ∈ {0, 1, . . . , n}
0
else.</p>
      <p>In this context, θ specifies the ratio of objects with the desired
property to the total, n the number of drawn objects and z the number of
drawn objects with the desired property. The distribution function of a
binomially distributed random variable is calculated as the sum over the
individual probabilities and is denoted by B.</p>
      <p>Hypothesis tests in general Hypothesis tests can be used to check
whether a certain assumption is actually valid with a sufficiently high
probability. A hypothesis here is a statement about a certain property of
objects of the population. First of all, such an assumption, the so-called
hypothesis, has to be made, which will then be tested. In addition, data is
needed to check whether the hypothesis should be accepted or declined.
For this purpose, a sufficiently large and representative sample of fitting
data must be available in order to be able to conclude on the population
from this sample. Since we get the information for our sample from a
given event log, we need a reasonably large event log to get enough data
for our hypothesis tests.</p>
      <p>In our preprocessing method we will use one-sided binomial tests. For
this kind of test two hypotheses are formulated regarding an unknown
parameter p ∈ [0; 1] compared to a known parameter p0 ∈ [0; 1]. Using
data from a sample, a hypothesis test is used to decide whether the
(unknown) value of p ∈ [0; 1] lies in [0; p0] or ]p0; 1], i.e. whether the null
hypothesis H0 : p ≤ p0 or the alternative hypothesis H1 : p &gt; p0 is true.
However, this decision cannot be made for sure with a hypothesis test,
so there is always a certain probability that the wrong decision will be
made. The probability of this error can be estimated, making it possible
to make very reliable statements about which of the two alternatives
holds.</p>
      <p>In our framework, the value p0 is chosen by the user. 1 − p0 determines
how often two events a and b must occur in sequence compared to all
considered predecessor/successor pairs to be considered main behavior
of the process. The unknown parameter p is the probability that a pair
(x, y) of directly succeeding events with predecessor x = a or successor
y = b does not equal (a, b). If p ≤ p0 (null hypothesis), the probability
p is small enough to assume that a directly followed by b occurs often
enough to be considered main behavior of the process.</p>
      <p>The execution of a one-sided binomial test is based on a sample of size
n with a result z = (z1, . . . , zn) that shows how many of the objects
contained in the sample have a given property, i.e. in our case zi = 1 if
the i-th of the considered pairs equals the pair (a, b), for which a decision
is to be made whether it is infrequent behavior, and zi = 0 otherwise.
As test statistic the random variable Tn : {0, 1}n → {0, . . . , n} denotes
the number of matches in the sample.</p>
      <p>As a naive decision rule, we could assume the null hypothesis for a result
Tn(z) ≤ np0 and the alternative hypothesis for a result Tn(z) &gt; np0.
However, to protect the null hypothesis from being rejected due to an
error, the acceptance range of the null hypothesis is slightly increased.
For this purpose a critical number k ∈ N with np0 &lt; k ≤ n is chosen. This
critical number is used to change the decision rule so that for Tn(z) &lt; k
the null hypothesis is now assumed and for Tn(z) ≥ k the alternative
hypothesis. Depending on the choice of the value for k, the decision
based on it is correct with varying degrees of probability.</p>
      <p>Different types of errors can occur when accepting one of the
hypotheses. A type 1 error occurs when the null hypothesis is rejected and the
alternative is accepted even though the null hypothesis is correct, i.e.
falsely classifying a pair of events as infrequent in our case. A type 2
error occurs when the null hypothesis is accepted even though the
alternative hypothesis is correct, i.e. falsely classifying a pair of events as
main behavior.</p>
      <p>Since the null hypothesis should, if possible, only be rejected if it actually
does not apply, the probability of a type 1 error should therefore be kept
as low as possible. With the function g(p, n, k) := Pn
l=k nl pl(1 − p)n−1
the probability of the type 1 error can be specified for p ≤ p0. To keep
the probability of this error as low as possible, the function g must be
minimized. Overall, the probability of a type 1 error for the described
parameters is at most g(p0, n, k) = Pln=k nl pl0(1 − p0)n−1. A low value
for this error bound ensures that an incorrect rejection of the null
hypothesis occurs only very rarely. Therefore, a so-called significance level
α ∈ ]0; 1[ is often given, which defines an upper bound for the type 1
error and thus limits the probability of the null hypothesis being rejected
by mistake. So g(p0, n, k) ≤ α should then apply. Using this given α
and the known size of the sample n, an optimal value for k can then
be determined. For k the smallest possible value kα with np0 &lt; kα ≤ n
is used, for which g(p0, n, kα) ≤ α applies. Since a calculation of this
value for k is quite time-consuming, usually only an approximation is
used. If for σn := pnp0(1 − p0) the condition σn &gt; 3 applies, the value
kα can be approximated by kα = dnp0 + σn · u1−αe where u1−α is the
(1 − α)-quantile1 of the standard normal distribution. The calculation of
u1−α is also time-consuming, but can be quickly determined by looking
up already calculated value tables. If the condition is not met, a suitable
value for k must be found using the binomial distribution. For this
purpose, the formula Pkj</p>
      <p>i=0 bn;p0 (i) is used to calculate values for different
kj (j = 0, 1, . . . ). For k the value for the lowest j is then used, for which
the sum is greater than or equal to 1 − α.</p>
      <p>Hypothesis tests in our approach For the application of our
preprocessing procedure the user can choose the values for p0 and α and thereby
influence the results of the hypothesis tests. The choice of p0 determines
how often certain events must occur in sequence to be considered main
behavior of the process. This allows the user to decide how often
particular behavior must occur so that it is part of the main behavior of the
process.</p>
      <p>The main advantage of our new preprocessing approach using statistical
methods is the obtained statistical foundation of the results including an
upper bound for the risk of false classification of events directly following
each other (whether they should be considered as main or infrequent
behavior of the process) and flexible adaptability of the used probability
for the classification.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Method for detecting infrequent behavior</title>
      <p>The following section describes the method we have developed for
detecting infrequent behavior. First, the data contained in the given event
log L is summarized in the corresponding correlation matrix. Afterwards
hypothesis tests are performed with it in order to detect infrequent
behavior. Each hypothesis test examines the direct succession of a
particular pair of events in the event log. The result of each hypothesis
1 For q ∈]0; 1[, the value of z for which P (Z ≤ z) = q holds is called q-quantile.
test indicates whether the corresponding pair should be considered
infrequent behavior. After all infrequent occurring pairs of activities have
been found, we create a footprint that describes the relations between
activities of the process recorded in the log, that can be used for further
analysis. When creating this footprint, we ignore all pairs of activities
that occur infrequently according to the hypothesis tests.</p>
      <p>Data preparation In the first step the given event log is converted to
the correlation matrix as shown in Sect. 2.</p>
      <p>Performing the hypothesis tests To determine which of the
dependencies between events contained in the log should be ignored, hypothesis
tests are now performed on the correlation matrix of direct successors
created in the first step. For each pair of activities from the set of all
activities occurring in the correlation matrix (including the fictive
activities “Start” and “End”), it is determined whether the direct succession
of the two events should be considered infrequent behavior or not w.r.t.
the value p0 set by the user. Thus, a one-sided binomial test is
performed for each pair of activities (a, b) with CaL,b &gt; 0, since it is precisely
when it occurs “too rarely” in the available data that it is considered
infrequent behavior. For pairs of activities (a, b) with CaL,b = 0, no
hypothesis test has to be performed, since b never occurs directly after a in
L, so it is already known that there is no dependency. Our approach is
based on counting the number of occurrences of a pair of direct neighbors
(a, b) within the traces of the event log L (frequency of ab, |(a, b)|&gt;L ).
We identify such an occurrence as infrequent behavior if the number of
occurrences is “low” compared to the number of all pairs (x, y) with
predecessor x = a or follower y = b. For the decision, we use one-sided
hypothesis tests based on the binomial distribution for each pair (a, b).
Any direct succession of two events in a trace of event log L is considered
to be an observation of the operation, which results shall be examined
using the hypothesis tests. A directly succeeding pair with predecessor a
or successor b fulfills the property “direct succession of a and b” exactly
when it is the pair (a, b). The number of pairs fulfilling this property is
the frequency of the subtrace ha, bi, which is registered in the correlation
matrix as the value of CaL,b. The total number of pairs with
predecessor a or successor b is the number of considered objects (denoted by n
in Sect. 3) and is obtained by summing up the corresponding row and
column of the correlation matrix.</p>
      <p>The user can specify the value pinfrequent, which defines the minimum
probability of an event pair with predecessor a or successor b occurring in
a trace being (a, b) so that this pair of events is not considered infrequent
behavior. For this purpose the user defines the value p0 for the hypothesis
tests as p0 := 1 − pinfrequent (thus, p0 is the maximum probability of
an event pair with predecessor a or successor b occurring in a trace not
being (a, b)). The choice of p0 may depend on the considered event log.
A higher value of p0 leads to the classification of fewer pairs of events as
infrequent behavior.</p>
      <p>The choice of p0 depends on the available information about the process
recorded in the log. If, for example, many different events can occur next
after the event a, each of these events will occur relatively rarely as a
successor to a. Conversely, the same applies to many different possible
events as predecessors of an event b. Therefore, if it is known that a
process contains many such variations, the value for p0 should be set
higher than usual. This information can be obtained by looking at the
correlation matrix.</p>
      <p>Choosing a value for α depends on how sure you want to be that pairs
of activities are not incorrectly classified as infrequent behavior. If you
want to avoid such an error, you should set α as low as possible.</p>
      <p>We formulate the following two hypotheses:
– Null hypothesis H0 : p ≤ p0: The occurrence of a directly followed
by b should be considered as main behavior.
– Alternative hypothesis H1 : p &gt; p0: The occurrence of a directly
followed by b should not be considered as main behavior, but as
infrequent behavior.</p>
      <p>In this context p is the probability that a pair of direct successors (a, y)
or (x, b) is not (a, b). The aim is to restrict the risk of falsely inferring
that H1 is true when indeed H0 is (error type 1), by fixing an upper
bound α. That means, we determine the smallest value k, such that</p>
      <p>p(|(a, b)|&gt;L ≥ k | p ≤ p0) ≤ α,
and decide for H1 if the frequency of (a, b) is greater or equal to k.2
If a trace contains a subtrace ha, bi which is classified as infrequent
behavior, we discard only that part of the trace for further analysis of
the process. This means that the other relationships between events in
the trace are still being taken into account when creating the footprint,
representing the main relations.</p>
      <p>For our sample log L, we perform the hypothesis tests with different
values for p0 (p0 = 0.95 / p0 = 0.9) and α (α = 0.05 / α = 0.1). For
the tests we need the sets T := {a, b, c, d}, TStart := T ∪ {Start} and
TEnd := T ∪ {End}.</p>
      <p>For p0 = 0.95 and α = 0.05 we have the null hypothesis H0 : p ≤ 0.95
and alternative hypothesis H1 : p &gt; 0.95. For each pair of activities we
have to perform a separate hypothesis test.</p>
      <p>For instance, the following results are obtained for the pair (a, c):
– n = (Pj∈TEnd CaL,j ) + (Pi∈TStart\{a} CiL,c) = 314 826 + 115 791 =
430 617
– σn = pnp0(1 − p0) = √430 617 · 0.95 · 0.05 ≈ √20 454.31 ≈ 143.02
– Since σn &gt; 3, we can use the approximation, i.e. k0.05 = dnp0 + σn ·
u1−αe ≈ d430 617 · 0.95 + 143.02 · 1.64e = 409 321.</p>
      <p>Because n − CaL,c = 430 617 − 98 020 = 332 597 &lt; 409 321 = k, we assume
the null hypothesis to be correct and c directly following a in a trace is
not considered infrequent behavior.</p>
      <p>As the next pair of activities we consider (a, d):
2 In this setting, we control the false classification of “infrequent behavior” by α. It is
also possible to exchange H0 and H1: then the false classification of “main behavior”
is controlled by α.
– n = (Pj∈TEnd CaL,j ) + (Pi∈TStart\{a} CiL,d) = 314 826 + 100 013 =
414 839
– σn = pnp0(1 − p0) = √414 839 · 0.95 · 0.05 ≈ √19 704.85 ≈ 140.37</p>
      <p>Because n − CaL,d = 414 839 − 16 586 = 398 253 ≥ 394 328 = k, we
assume the alternative hypothesis to be correct and d directly following
a is considered to be infrequent behavior.</p>
      <p>The other hypothesis tests show that only the pair of direct successors
(a, d) should be considered infrequent behavior. All other pairs occur
often enough to be classified as main behavior of the observed process.
In the same way we can calculate the hypothesis tests for other values
of p0 and α. Using p0 = 0.9 and α = 0.05, the pair (d, c) is identified as
infrequent behavior as well as (a, d). For p0 = 0.9 and α = 0.1 the pairs
(d, c) and (a, d) are categorized as infrequent behavior. With p0 = 0.95
and α = 0.1, we again find (d, c) and (a, d) as infrequent behavior.</p>
      <p>We can see that a lower value of p0 can cause more dependencies to
be classified as infrequent behavior, since event pairs must follow each
other more often in a relative perspective in order to be considered main
behavior. In addition, a higher value for α can also result in more pairs
being classified as infrequent behavior, since the threshold for incorrect
classification as infrequent behavior is higher.</p>
      <p>Generating the footprint Next, the footprint (Def. see Sect. 2) is created
for the given event log ignoring all pairs of events detected as being
infrequent in the last step. That is, first the relation &gt;L is created as specified
in the definition. Then all pairs (a, b) which are considered infrequent
behavior according to the corresponding hypothesis test are removed from
this relation. Finally, the modified relation &gt;L is used to determine the
other relations, which are then summarized in the footprint. The
obtained footprint represents the relations between all occurring activities
of the process that should be used for further analysis.</p>
      <p>The following table shows the footprint of our original event log L.</p>
      <p>a b c d
a # k → →
b k # → →
c ← ← # ←
d ← ← → #
After modifying the footprint using the results of the hypothesis tests,
the footprints below are obtained for the different parameter values.</p>
      <p>a b c d
a # k → #
b k # → →
c ← ← # ←
d # ← → #</p>
      <p>a b c d
a # k → #
b k # → →
c ← ← # #
d # ← # #
As you can see, the direct dependency between pairs of events interpreted
as infrequent behavior disappears. All other relations remain as in the
original footprint because they were identified by the hypothesis tests as
main behavior.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Related work</title>
      <p>There are other filtering methods which are also based on fractions of
observations of direct following events.</p>
      <p>
        The Inductive Miner - infrequent (IMi) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] filters edges from the
directlyfollows graph that are infrequent compared to the most frequent outgoing
edge of the corresponding node w.r.t. to a factor k specified by the user.
In contrast to the values p0 and α chosen by the user in our method, there
is no precise interpretation of k, since its effect depends on the frequency
of the most frequent edge. Moreover, IMi only considers the successors,
not the predecessors of the events. We consider all predecessors and
successors at the same time and the results therefore also depend on the
predecessors of the events. For example, IMi never recognizes an edge as
being insignificant if it is the only outgoing edge of a node.
In [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] also only successors of events are considered. While the method
in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] is tuned to causal dependencies between directly following events,
our approach can easily be transfered to filter other causal relationsships
between events like concurrency or loops using other parts of the given
log as sample.
      </p>
    </sec>
    <sec id="sec-6">
      <title>6 Implementation and evaluation</title>
      <p>
        Implementation We implemented our approach as a command line
application h0filterlog using Java [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] (where a first version of the tool
can be downloaded). When the program is started, an overview of the
available options (see Fig. 1) is displayed first. The user can enter the log
for analysis via the command line or let it be read in from an xes-file.
When the log is entered on the command line, each trace must be given
together with the number of occurrences. Entering our example log via
command line therefore looks like Fig. 2. When importing from a file,
the user specifies which file to use. The values p0 and α to be used for
hypothesis tests are set to p0 = 0.95 and α = 0.05 by default, but can
be adjusted by the user on the command line. The possible values for
α are of the form n · 0.01 for n ∈ {1, . . . , 20}. To edit the values, the
corresponding menu option must be selected and then the new value for
the parameter must be entered.
      </p>
      <p>When analyzing an event log, the tool first prints the footprint built from
the input log to the command line (see Fig. 3). Then the correlation
matrix is displayed (see Fig. 4) and the hypothesis tests are performed.
After all tests have been performed, all pairs of events that were detected
as infrequent behavior are shown (see Fig. 5 for results of analyzing our
example log with p0 = 0.95 and α = 0.05) and the footprint is printed
again, this time ignoring the infrequent behavior (see Fig. 6).
Evaluation We tested the implementation with different event logs. To
find out its limitations, we also considered some larger logs. The event
logs we used for the analysis were provided as xes-files.</p>
      <p>
        We analyzed some event logs that contain up to about 13 000 traces or
up to about 400 different activities. Characteristics and results for the
log with the most traces and the log with the most different activities
are shown in the following table.
We analyzed the log from [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], which is a real-life event log of a loan
application process. When processing this event log, which was the largest
of the tested logs in terms of the number of traces, the program took
the longest to import the data. The calculation of the hypothesis tests
as well as of the footprints was performed faster and the entire analysis
of the log took only a few seconds.
      </p>
      <p>
        Fig. 6: Footprint of event log after removing infreqent behavior.
The event log with the most activities we analyzed was [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. With such
logs containing many different activities, the calculation took a little bit
longer (but still less than one minute), whereas most of the time was
needed to calculate the footprints.
      </p>
      <p>Overall, as we improve our program based on these results, we will try to
make the import of logs and the calculation of footprints more efficient.
The program uses approximate calculations to compute the hypothesis
tests (see Sect. 3). In some cases this approximation cannot be used,
which means that the calculation of the hypothesis tests then takes a
little longer. We will also try to improve this slightly more time-consuming
calculation in the future.
7</p>
    </sec>
    <sec id="sec-7">
      <title>Conclusion</title>
      <p>The presented method can be considered as proof of concept for using
hypothesis test in the context of filtering dependencies between activities
in event logs and has still possible gaps and inaccuracies concerning
practical applicability:
– The resulting correlation matrix may not be sound in the sense that
the corresponding direct follows graph may contain events which are
not on a path from start to end. We plan to add the possibility to
detect and omit such events.
– The proposed hypothesis tests for direct following events are used
to decide whether observations of causal dependent and concurrent
events are infrequent. The population underlying the hypothesis test
for direct following events a and b also takes events, which are
concurrent to a and/or b, into account (since concurrency is detected after
filtering). We plan to develop separate hypothesis tests for deciding
whether observations of concurrent events are infrequent, which are
applied before considering causal dependency of events.
– The same value p0 is used for each pair of events, independent from
the number of possible predecessors resp. successors (neighbors) of
the events from such a pair. Since the number of neighbors of two
events a and b influences the probability p that a and b are neighbors,
we plan to examine the calculation and use of individual values p0 for
each pair of events depending on the number of possible neighbors
of the events.
– For each choice of p0 (and α) a separate calculation has to be
performed. For each pair of events a lower bound k for the frequency of
their direct succession is computed from p0. If the frequency is below
k, the direct succession is classified as infrequent. It would be more
efficient to calculate (the other way round) for each pair of events a
lower bound for p0 from the frequency of their direct succession: If
p0 is above the lower bound, then the direct succession is classified
as infrequent, otherwise as main behavior.
– There are several other properties or parts of logs, which can be
infrequent, e.g. events in traces or complete traces. We plan to develop
hypothesis tests also for such aspects.
– Currently, cycles are not yet recognized as such by our method and
the footprint therefore shows, for example, a parallelism between two
events that are in a short cycle of length 2. In order to avoid this
and other errors that occur in the context of cycles in the future, we
are planning to improve our method so that cycles are detected.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>R.</given-names>
            <surname>Conforti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Rosa</surname>
          </string-name>
          , and
          <string-name>
            <surname>A. H. M.</surname>
          </string-name>
          <article-title>t</article-title>
          . Hofstede.
          <article-title>Filtering out infrequent behavior from business process event logs</article-title>
          .
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          ,
          <volume>29</volume>
          (
          <issue>2</issue>
          ):
          <fpage>300</fpage>
          -
          <lpage>314</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>G.</given-names>
            <surname>Fischer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lehner</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Puchert</surname>
          </string-name>
          . Einfu¨hrung in die Stochastik. Springer,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>C.</surname>
          </string-name>
          <article-title>Gu¨nther and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Rozinat</surname>
          </string-name>
          .
          <article-title>Disco: discover your processes</article-title>
          .
          <source>In Proceedings of the Demonstration Track of the 10th International Conference on Business Process Management (BPM</source>
          <year>2012</year>
          ),
          <source>CEUR Workshop Proceedings</source>
          , pages
          <fpage>40</fpage>
          -
          <lpage>44</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Gu</surname>
          </string-name>
          <article-title>¨nther and</article-title>
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          .
          <article-title>Fuzzy mining - adaptive process simplification based on multi-perspective metrics</article-title>
          .
          <source>In Business Process Management</source>
          , pages
          <fpage>328</fpage>
          -
          <lpage>343</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>G.</given-names>
            <surname>Hornsteiner</surname>
          </string-name>
          . Daten und Statistik.
          <article-title>Eine praktische Einfu¨hrung fu¨r den Bachelor in Psychologie und Sozialwissenschaften</article-title>
          . Berlin/Heidelberg,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>S. J.</given-names>
            <surname>Leemans</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Fahland</surname>
          </string-name>
          , and W. M. van der Aalst.
          <article-title>Discovering block-structured process models from event logs containing infrequent behaviour</article-title>
          .
          <source>In International conference on business process management</source>
          , pages
          <fpage>66</fpage>
          -
          <lpage>78</lpage>
          . Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>S. J. J.</given-names>
            <surname>Leemans</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Fahland</surname>
          </string-name>
          , and
          <string-name>
            <surname>W. M. P. van der Aalst.</surname>
          </string-name>
          <article-title>Discovering block-structured process models from event logs containing infrequent behaviour</article-title>
          .
          <source>In Business Process Management Workshops - BPM 2013 International Workshops</source>
          , Beijing, China,
          <year>August 26</year>
          ,
          <year>2013</year>
          ,
          <string-name>
            <given-names>Revised</given-names>
            <surname>Papers</surname>
          </string-name>
          , volume
          <volume>171</volume>
          <source>of Lecture Notes in Business Information Processing</source>
          , pages
          <fpage>66</fpage>
          -
          <lpage>78</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>S. J. J.</given-names>
            <surname>Leemans</surname>
          </string-name>
          , E. Poppe, and
          <string-name>
            <given-names>M. T.</given-names>
            <surname>Wynn</surname>
          </string-name>
          .
          <article-title>Directly follows-based process mining: Exploration and a case study</article-title>
          .
          <source>In 2019 International Conference on Process Mining (ICPM)</source>
          , pages
          <fpage>25</fpage>
          -
          <lpage>32</lpage>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>L.</given-names>
            <surname>Petrak</surname>
          </string-name>
          . Tool h0filterlog. https://www.uni-augsburg. de/de/fakultaet/fai/informatik/prof/educo-inf/forschung/ process-mining/#preprocessing.
          <source>(accessed: 21.03</source>
          .
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>M. F. Sani</surname>
            ,
            <given-names>S. J. van Zelst</given-names>
          </string-name>
          , and
          <string-name>
            <given-names>W. M. P. van der</given-names>
            <surname>Aalst</surname>
          </string-name>
          .
          <article-title>Improving process discovery results by filtering outliers using conditional behavioural probabilities</article-title>
          .
          <source>In Business Process Management Workshops</source>
          , pages
          <fpage>216</fpage>
          -
          <lpage>229</lpage>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>W. M. van der Aalst</surname>
            and
            <given-names>B. F. van Dongen. Discovering</given-names>
          </string-name>
          <article-title>Petri nets from event logs</article-title>
          .
          <source>In Transactions on Petri Nets and Other Models of Concurrency VII</source>
          , pages
          <fpage>372</fpage>
          -
          <lpage>422</lpage>
          . Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>B. F. van Dongen. BPI Challenge</surname>
          </string-name>
          <year>2012</year>
          . https://doi.org/10.4121/ uuid:
          <fpage>3926db30</fpage>
          -f712
          <string-name>
            <surname>-</surname>
          </string-name>
          4394
          <string-name>
            <surname>-</surname>
          </string-name>
          aebc-75976070e91f,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>B. F. van Dongen. BPI</surname>
          </string-name>
          <article-title>Challenge 2015 Municipality 2</article-title>
          . https://doi.org/10.4121/uuid:
          <fpage>63a8435a</fpage>
          -077d
          <string-name>
            <surname>-</surname>
          </string-name>
          4ece
          <string-name>
            <surname>-</surname>
          </string-name>
          97cd
          <source>-2c76d394d99c</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. J.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Song</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          <string-name>
            <surname>Zhu</surname>
            , and
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Pei</surname>
          </string-name>
          .
          <article-title>Cleaning structured event logs: A graph repair approach</article-title>
          .
          <source>In 2015 IEEE 31st International Conference on Data Engineering</source>
          , pages
          <fpage>30</fpage>
          -
          <lpage>41</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>A.</given-names>
            <surname>Weijters</surname>
          </string-name>
          , W. Aalst, van der,
          <article-title>and</article-title>
          <string-name>
            <surname>A</surname>
          </string-name>
          . Alves De Medeiros.
          <article-title>Process mining with the HeuristicsMiner algorithm</article-title>
          .
          <source>BETA publicatie : working papers. Technische Universiteit Eindhoven</source>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>A. J. M. M. Weijters</surname>
            and
            <given-names>J. T. S.</given-names>
          </string-name>
          <string-name>
            <surname>Ribeiro</surname>
          </string-name>
          .
          <article-title>Flexible heuristics miner (FHM)</article-title>
          .
          <source>In 2011 IEEE Symposium on Computational Intelligence and Data Mining (CIDM)</source>
          , pages
          <fpage>310</fpage>
          -
          <lpage>317</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>