凡得热点

/

凡得智库

流程发现算法第5讲 | Inductive Miner-Infrequency

发布时间:2023-07-20

Inductive Miner-Infrequency(基于频次的归纳式挖掘)是在Inductive Miner的基础上进行改进的算法,由sander改进并完善,接下来,我们将详细地介绍这个算法。

1. 背景介绍

关于Infrequency的解释:在大多数现实生活中的事件日志中,一些轨迹很少被采用,或者轨迹的不同之处仅在于不经常发生的活动。

如果流程模型中包含不常见的行为,可能会牺牲简洁度(simplicity),如果模型中排除不常见的行为,可能会牺牲拟合度(fitness)。幸运的是,帕累托原则(the Pareto principle,也称为8020规则)通常适用于事件日志。通常,80%的观察到的行为可以用一个模型来解释,这个模型只占描述所有行为所需模型的20%80%模型展示了流程中的高速公路

为了获得80%的模型,传统的方法是在发现模型之前对日志进行全局过滤这种方法很难识别不频繁的行为,可能产生不理想的流程模型。

因此,一个能快速过滤不常见行为并发现合理的80%流程模型的流程发现算法Inductive Miner-Infrequent(IMi)应运而生。其主要思想是:IM的所有步骤中引入了不常见行为过滤器,以便对不频繁行为进行局部过滤

2.算法介绍

在应用IM算法时,事件日志中的轨迹和事件频率被IM忽略,但被IMi考虑在内,以区分频繁和不频繁的行为为此,IMi算法需要预先设定一个参数KK为用户设置的过滤阈值,用于区分频繁和不频繁的行为该方法首先不改变地应用IM算法的步骤。只有当IM算法操作失败时将返回一个花型模型时,才会应用过滤器。具体而言,IMi算法包括在以下三个步骤中应用过滤器:

(1)操作符上的过滤器和切割选择步骤;(2)基本案例上的过滤器(3)日志分割上的过滤器

2.1 操作符上的过滤器和切割选择步骤

(1) 启发式方法过滤

L1=[áa, b, c, a, b, eñ50, áa, b, f, eñ100, ád, e, fñ100, ád, f, eñ100,ád, e, d, fñ1]

说明:Heuristic Miner中使用方法类似,IMi对直接跟随图进行过滤,使其仅包含最频繁的边。与e的其他输出边相比,边(ed)相对不频繁所以边<e,d>被过滤掉。如果一个节点的输出边的频率小于该节点最强输出边的频率的k倍,则该节点的输出边太不频繁在切割×和循环之前,在IMi中过滤掉所有不常见的边被过滤掉

a 带有一条不频繁边的直接跟随图,黑色虚线为IM算法中顺序切分运算符的结果,但对(e,d)产生了错误切分

(2)  最终跟随关系图

L2=[áa, c, d, e, bñ, áa, b, a, e , d, cñ, áa, e, c, b, dñ, áa, d, b, c, eñ]

说明:如下图b所示,由于b的所有输出边都具有频次1,因此k的任何值都不能过滤边(ba)

b 直接跟随图

若采用图c的最终跟随图,则能有效地过滤掉边<b,a>

c  最终跟随图

类似于弱序关系,IMi使用最终跟随图,这是直接跟随关系的传递闭包:当且仅当a后面跟b在日志中的某处时,才存在边(ab)

在这个例子中,使用最终遵循的图允许IMi处理不频繁的行为。

活动的不频繁发生仍然会增加不频繁边缘的频率,但每个边缘最多增加1。最终跟随图放大了所有其他行为,因此使用最终跟随图切割检测提高了对不频繁行为的鲁棒性。

2.2 基本案例上的过滤器

(1) 单个活动

L1=[áeñ100, áañ100, áa,añ100, áa, a, añ100]

L2=[áeñ1, áañ100, áa,añ1, áa, a, añ1]

说明:如果分割的子L1L2重演一个流程模型,则存在如下问题:

L1中,所有的轨迹都很频繁,花型模型(flower model)显然是最好的选择。然而,在L2中,只有<a>是频繁的,a最能代表频繁的行为。选择任一选项都会影响质量维度:若选择一个花型模型,L2会牺牲精确度;若选择<a>,L1会牺牲拟合度

只有当日志中a的每个轨迹平均出现次数足够接近1(取决于相对阈值k)时,IMi才会发现a

(3) 空轨迹

L=[áa,b,dñ100, áa,c,dñ100, áa,dñ]

L1=[ áañ201]

L2=[áeñ1, ábñ100, ácñ100]

L3=[ádñ201]

对于L2: ×(e,...)

说明:事件日志L通过分割运算符得到三个子日志L1L2L3,子日志L2中存在一条空轨迹,其频次远远小于其他的轨迹的频次,如果不采用过滤,将会影响模型精度。

2.3 日志分割上的过滤器

对于每个操作符,我们描述了可以检测到的违规类型,以及如何通过IMi对其进行过滤,如示例所示。在这些例子中∑1={a}∑2={b}是所选择的切割,L1L2是要创建的子日志。

X: 违反×运算符的行为是在单个轨迹中存在来自多个子树的活动。例如,轨迹t1=áaaabaaaañ 包含来自∑1∑2的活动。∑1解释了大多数活动,是最频繁的。所有不来自∑1的活动都被认为是不频繁的,并被丢弃:áaaaaaaañ∈L1

: 违反运算符是指根据子树出现的无序事件。例如,在轨迹t2=áaaaabbbabñ中,最后一个a出现在b之后,这违反了→. 过滤不频繁的行为是一个优化问题:轨迹将以最少的事件删除方式进行拆分。在t2中,划分áaaaañ∈L1ábbbbñ∈L2丢弃的事件最少。

并行运算符允许其子树的任何行为序列。因此,没有违反的行为,并且在拆分日志时既不能检测到也不能过滤不频繁的行为。

?违反?运算符是当轨迹不是以循环体开始或结束时:例如?(ab)被所有不以a开头和结尾的轨迹所违反。对于轨迹的每个这样的无效开头或结尾,一个空轨迹添加L1以增加所得到的模型的拟合度。考虑轨迹t3=ábabñ,则[áeñ2, áañ1]⊆L1[ábñ2]⊆L2

3.总结

IMi通过引入了不常见行为过滤器,将轨迹和事件的频次考虑在内,区分频繁和不频繁的行为,在三个层面上应用了行为过滤器,相比于基础的Inductive Miner,更能精准地发现流程模型。