写在前面:该篇算法是第一篇能够完整挖掘出所有高效用情节,理念上和HUI-Miner,EFIM等算法没有很大区别,但在实现上却更难一些。
Utility-Driven Mining of High Utility Episodes
样例
External Utility Table:
A Complex Event Sequence:
定义
大多基本定义可以参考 TKE,TUP 和 UP-Span 等算法,以下作一些补充及关键的定义。
-
最小发生(Minimal occurrence)给定情节 的两个时间间隔 。当有 时,我们称第二个时间间隔是第一个时间间隔的子集;当 不存在子集的情况时,我们称时间间隔 为最小发生 (Minimal occurrence),用 表示情节 的一个最小发生, 表示情节 在复杂事件序列 中的所有最小发生。
例如:
-
最大时间段(Maximum time duration)类似于早期算法中的滑动窗口,是需要用户指定的时间约束(MTD),规定情节 满足 ,且 恒满足该约定。
Ps. 这里需要指明的是,早些论文规定的是 ====,UMEpi算法这样设计的原因是为了提供一个更紧凑的边界,方便能够找出所有的高效用情节(HUEs)
-
某个同时事件集在时间点上的效用值(Utility of a simultaneous event set w.r.t. time point)对于同时事件集 在时间点 上的效用值定义为
例如:,
-
事件序列总效用值(Total utility of an event sequence)给定一个复杂事件序列 ,在时间点 上的所有事件总效用定义为 ,那么 的总效用值定义为
例如:,
-
高效用情节(High-utility episode)给定一个复杂事件序列 ,最大时间段 MTD 以及用户设置的阈值 minUtil,当 中的事件(集)满足 ,我们称该事件(集)为 HUE
Ps. 注意这里的定义和 TUP 有所不同,原因在于总效用定义上的不同
策略
Episode-Weighted Downward Closure Property
-
当对于一个情节 新增加的情节 的时间跨度与 一致,那么我们把这个操作称为 -Concatenation(并行连接),若新增加的情节 使得 时间跨度变长,那么我们把这个操作称为 -Concatenation(串行连接)
-
词典序列树(Lexicographic sequence tree)基于前缀树的根节点为空,且对于父节点(也叫前缀节点)的所有子节点都通过连接(串,并)形成,这些子节点之间是有序的
Ps. 和 EHIN 中的空间检索枚举树一致
-
情节权重效用值(Episode-Weighted Utilization)设情节 ,有 (满足 MTD),且 每一个事件集 都有唯一的时间点 与之对应,则
其中 是复杂事件序列中的同时事件集(与 无关)。但请注意,这里只是计算了 的一个最小发生,若有多个,则广义上的计算方式为 。在该算法中是不断通过连接事件来组合成情节,如何判断有用的情节(候选),剪去不需要的情节是该算法的一个重要步骤,判断规则和 HUE 一样()
例如:,,那么
Ps. 注意,论文中提到 EWU 只是局部上边界,故剪枝属性也只是局部,这解释了之前的算法为什么会结果产生不准确或不充分的原因
Pruning Strategy for Searching HUEs
-
剩余情节效用值(Remaining utility ofan episode)在筛选掉 unpromising episodes 后,情节 在时间点 的剩余情节效用值是发生在该情节之后的所有事件(集)效用值之和
-
优化后的情节权重效用值(Optimized Episode-Weighted Utilization)有
同理,
例如:设 ,则 显然优化后的 要比原来更紧凑,所以利用 可以在检索空间上更有效地剪枝
算法
该算法也是分两步走:1)扫描生成1阶HUEs;2)不断调用 HUE-Span 方法利用低阶组合生成高阶HUEs
The Span-SimultHUE procedure:
The Span-SerialHUE procedure:
总结
该文主要贡献在于 1)论证了低权重情节也有可能与高权重情节组合生成高权重情节,这是以前HUEM算法都没有考虑周全的地方;2)重新定义了更紧凑的 EWU,这使得在运算速度上大大提高了,因为情节具有时效性,不同时间点发生的情节意义不尽相同,所以它们能产生的组合数目是非常大的;3)与UP-Span等算法相比,没有采用预测机制来推断哪些情节是高效的, 存储了 情节 的所有子序列(也就是潜在可以组合的情节)