CN104408290A - 基于包含与演绎分析的精确序列规则挖掘方法 - Google Patents
基于包含与演绎分析的精确序列规则挖掘方法 Download PDFInfo
- Publication number
- CN104408290A CN104408290A CN201410598480.6A CN201410598480A CN104408290A CN 104408290 A CN104408290 A CN 104408290A CN 201410598480 A CN201410598480 A CN 201410598480A CN 104408290 A CN104408290 A CN 104408290A
- Authority
- CN
- China
- Prior art keywords
- sequence
- rule
- frequent
- rules
- generation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于包含与演绎分析的精确序列规则挖掘方法,用于解决现有规则冗余的技术问题。技术方案是首先挖掘频繁闭情节及生成子,以保证序列规则在挖掘过程是无冗余的;然后,在构成序列规则的过程中,通过检查频繁闭情节集和生成子集,找到其最大重叠集元素以及其投影与被投影元素,过滤其投影与被投影元素产生的序列规则,即可达到冗余性检查的目的;最后,根据序列规则的定义,根据过滤后的频繁闭序列集和生成子集,生成精确序列规则。该方法在保证时刻复杂度和现有序列规则挖掘算法相当的前提下,消除了序列规则间的冗余,在保证序列规则代表信息完整性的前提下,保证了规则数量最少。
Description
技术领域
本发明涉及一种精确序列规则挖掘方法,特别是涉及一种基于包含与演绎分析的精确序列规则挖掘方法。
背景技术
文献“基于最小且非重叠发生的频繁闭情节挖掘,计算机研究与发展,2013,50(4),852-860”公开了一种基于频繁闭情节和生成子的无冗余序列规则挖掘方法。该方法选择频繁闭序列与生成子作为规则基。算法采用最小且非重叠发生的支持度定义和深度优先的搜索策略来发现频繁闭序列及其生成子,直接由频繁闭序列及其生成子产生序列规则。该算法的规则基——闭序列及其生成子已被证明可产生具有最小前件和最大后件的包含无冗余序列规则。但是该算法忽略了规则间的冗余关系,造成挖掘的序列规则存在冗余。同时,近年来序列规则挖掘方面开展的各类算法,虽然在数据组织、处理流程等方面各有不同,但主要分为三类,如表1所示。
产生序列规则全集的典型算法为TASA、WinMiner,该类算法以频繁序列为规则基,通过投影的方式产生序列规则全集。
产生最小前件序列规则全集的典型算法为GenMiner,其规则基为频繁序列与生成子。算法首先采用深度优先的搜索策略来创建存储所有序列的前缀搜索树PSL,然后通过遍历PSL得到包含所有序列模式生成子的超集,据此可以得到最小前件序列规则。
产生包含无冗余序列规则集的典型算法为Extractor。
表1典型序列规则挖掘算法分类比较
类别 | 规则基 | 产生规则 |
1 | 频繁序列 | 序列规则全集 |
2 | 频繁序列与生成子 | 最小前件序列规则全集 |
3 | 频繁闭序列与生成子 | 包含无冗余序列规则集 |
从上述序列规则挖掘算法的发展不难看出,规则的产生方式经历了频繁序列投影、频繁序列及其生成子投影、频繁闭序列及其生成子投影等阶段;算法的效率、精确程度、精简粒度都在逐步提高。但却忽略了多规则间的关联关系在挖掘过程中的作用,造成了规则冗余。
发明内容
为了克服现有挖掘方法存在规则冗余的不足,本发明提供一种基于包含与演绎分析的精确序列规则挖掘方法。该方法首先挖掘频繁闭情节及生成子,以保证序列规则在挖掘过程是无冗余的;然后,在构成序列规则的过程中,通过检查频繁闭情节集和生成子集,找到其最大重叠集元素以及其投影与被投影元素,过滤其投影与被投影元素产生的序列规则,即可达到冗余性检查的目的;最后,根据序列规则的定义,根据过滤后的频繁闭序列集和生成子集,生成精确序列规则。该方法在保证时刻复杂度和现有序列规则挖掘算法相当的前提下,消除序列规则间的冗余,在保证序列规则代表信息完整性的前提下,保证规则数量最少。
本发明解决其技术问题所采用的技术方案是:一种基于包含与演绎分析的精确序列规则挖掘方法,其特点是采用以下步骤:
步骤一、频繁闭序列及生成子挖掘:序列按照迭代生长的方式生长,即多序列是由1-序列生成。在挖掘频繁序列的过程中,首先在时间窗口内找到所有的1-频繁序列,再由1-频繁序列排列组成2-频繁序列,并挖掘这些候选2-频繁序列中的频繁序列,以此类推。按照频繁闭序列的定义,从频繁序列集中再次挖掘频繁闭序列。然后,根据生成子的定义,通过比较频繁序列与其前向扩展即父序列的支持度来检查此序列的前向扩展是否为生成子。故在得到频繁序列集后,针对尚未确定为生成子的频繁序列而言,只要通过比较此序列和它的其他真子序列的支持度就能确定此序列是否是生成子。
步骤二、冗余性检查:在生成规则的过程中,通过检查、过滤机制就能有效避免冗余演绎规则的产生。但即便如此,由于投影关系的传递性,进行演绎规则的过滤仍然是复杂的。为了提高演绎规则的过滤效率,只需要考虑闭序列和生成子的最大重叠项,对其进行演绎规则冗余检查。具体步骤如下:
(a)对于闭序列集和生成子集,遍历搜索找出这两个集合的相同序列集,且在相同序列集中找出最长的序列;
(b)找出最长相同序列在闭序列集合生成子集的投影和被投影序列;
(c)根据定理知规则间的冗余是由于存在生成子和闭序列的公共相同序列。故最长相同序列的一次投影和被投影过程中,最多只产生两个规则,其余规则均存在规则间的冗余性。冗余演绎规则的过滤过程,即对最长相同序列产生的规则进行过滤即可;
(d)产生无相同序列的生成子和闭序列集合;
步骤三、精确序列规则的产生:根据序列规则的定义,从频繁闭序列集和生成子集中产生序列规则。首先,对于给定的闭序列以及其生成子,求出生成子在闭序列上的投影;其次,对于给定的最小可信度,计算闭序列和生成子的支持度比值,若比值大于可信度阈值,则根据规则的定义,将此闭序列和生成子构成的序列规则加入到序列规则集合中。
本发明的有益效果是:该方法首先挖掘频繁闭情节及生成子,以保证序列规则在挖掘过程是无冗余的;然后,在构成序列规则的过程中,通过检查频繁闭情节集和生成子集,找到其最大重叠集元素以及其投影与被投影元素,过滤其投影与被投影元素产生的序列规则,即可达到冗余性检查的目的;最后,根据序列规则的定义,根据过滤后的频繁闭序列集和生成子集,生成精确序列规则。该方法在保证时刻复杂度和现有序列规则挖掘算法相当的前提下,消除了序列规则间的冗余,在保证序列规则代表信息完整性的前提下,保证了规则数量最少。
下面结合附图和具体实施方式对本发明作详细说明。
附图说明
图1是本发明基于包含与演绎分析的精确序列规则挖掘方法的流程图。
图2是本发明方法中冗余性检查的流程图。
具体实施方式
参照图1-2。本发明基于包含与演绎分析的精确序列规则挖掘方法具体步骤如下:
首先介绍该方法使用的基本定义如下:
事件,事件流:事件是给定事件类型集ε={E1,E2,…,En}中的事件E和事件发生时间t的二元组(E,t)。事件流是由若干ε中的事件按发生时间先后排列的序列,表示为ES=<(E1,t1),(E2,t2),…,(Es,ts)>。
序列:由若干事件组成的串,表示为α=<(E1,t1),(E2,t2),…,(Ek,tk)>,简记为α=<E1E2…Ek>。
串接,投影:给定序列α=<E1E2…Em>和β=<E′1E′2…E′k>,则<E1E2…EmE′1E′2…E′k>称为α和β的串接,记为concat(α,β)。设j是β在α中首次出现的结束位置,则从α中删除第1至第j个事件后剩余的序列称为β在α上的投影,记为project(α,β)。
发生:给定事件流ES和序列α=<E1E2…Ek>,若ES在时间区间[t1,tk]上按α的事件排列顺序出现了α所代表的所有事件,则称ES上发生了序列α,时间区间[t1,tk]称为α在ES上的一次发生。
支持度:情节α在事件序列ES上所有最小且非重叠发生组成的最大集合的基数称为α的支持度,记为α.sup。
频繁序列,频繁闭序列,序列生成子:给定支持度阈值min_sup,若序列α的支持度大于等于min_sup,则α是一个频繁序列。若序列α是频繁的,且α的支持度不等于α的任何一个真超序列的支持度,则α是一个频繁闭序列。设f是一个闭序列,若g的支持度等于f的支持度,且g不存在与其支持度相同的任何一个真子序列,则g称为闭序列f的一个序列生成子。
序列规则:一个序列规则γ是一个五元组(l,r,s,c,ω),分别表示规则的前件、后件、支持度、置信度和窗口宽度。序列规则集记为 其中l是频繁闭序列δ(l)的序列生成子,δ(l)是另一个频繁闭序列f的真子序列。
精确序列规则:给定序列规则γ(l,r,s,c,w),若不存在序列规则γ′(l,r,s,c,w),使得γ′.s=γ.s,则称γ是一个精确序列规则,否则是一个包含冗余序列规则。
从http://www.d.umn.edu/~tkwon/TMCdata/TMCarchive.html网站下载了美国交通管理中心TMC(Traffic Management Center)在双城地铁高速公路的道路传感器上收集到的真实数据。进行数据预处理后使其符合序列数据的一般格式,其中A-F分别表示不同的路况情况。设某段时间的路况为<(C,1),(C,2),(E,3),(D,4),(C,5),(A,6),(E,7),(E,8),(B,9),(C,10),(E,11),(C,12),(A,13),(B,14),(F,15)>,最小支持度min_sup为2,最小置信度min_conf为0。参照图1所示方法流程,挖掘精确序列规则。
1、挖掘频繁闭序列和生成子
首先是挖掘频繁闭序列。序列按照迭代生长的方式生长,即多序列是由1-序列生成。在挖掘频繁序列的过程中,首先在时间窗口内找到所有的1-频繁序列,再由1-频繁序列排列组成2-频繁序列,并挖掘这些候选2-频繁序列中的频繁序列,以此类推。挖掘到所有的频繁序列后,按照频繁闭序列的定义,从频繁序列集中再次挖掘频繁闭序列。
其次是从频繁序列集中挖掘生成子。项集生成子具有如下性质:“若一个项集是一个频繁闭项集的生成子,则该生成子的真子集也是这个频繁闭项集的生成子”,这个性质可以用来加快项集生成子的挖掘。但是,在事件数据流中,序列生成子不具有此性质,一些非生成子序列具有此性质,可以加快序列生成子的发生。则通过比较频繁序列与其父序列的支持度来检查此序列的前向扩展是否为生成子。所以,在得到频繁序列集后,针对尚未确定为生成子的频繁序列而言,只要通过比较此序列和它的其他真子序列的支持度就可以确定此序列是否是生成子。
表2
序列生成子 | 支持度 | 闭序列 | 支持度 |
<C> | 5 | <C> | 5 |
<CC> | 2 | <CCE> | 2 |
<E> | 4 | <CE> | 3 |
<A> | 2 | <CECAB> | 2 |
<EC> | 3 | <E> | 4 |
<EE> | 2 | <EC> | 3 |
<CE> | 3 | <ECE> | 2 |
<B> | 2 |
表2是从已知事件序列中挖掘到的所有频繁闭序列和生成子。
2、冗余性检查。
虽然根据定义暴力搜索闭序列集合生成子集,但是为了提高演绎规则的过滤效率,下面给出定理及证明,发现只需考虑闭序列和生成子的最大重叠项进行演绎规则冗余检查即可。
定理 生成子向频繁闭序列投影时,对互相重叠的生成子和闭序列,重叠集内部会存在互相包含关系,这些关系中,只需考虑最大的重叠项进行演绎规则冗余检查即可。
证明:设有生成子g0、g1、g2,g1、g2是重叠集中的元素,并且g0可以投影到g1,g1可以投影到g2。由于投影规则是可传递的,g0也可以投影到g2,记为g0-g1-g2。设有闭序列e,满足g2-e,则有g0-g1-g2-e。根据定理1,对于g0-g1-e而言,g0-e、g1-e两条规则蕴含g0-g1;对于g0-g2-e而言,g0-e、g2-e两条规则蕴含g0-g2;对于g1-g2-e而言,g1-e、g2-e两条规则蕴含g1-g2。可以看出,由g0-g1-e所产生的规则g0-e、g1-e完全包含在g1-g2-e、g0-g2-e所产生的规则中,而g2为重叠集中较大的元素。以此类推,可证明在进行演绎规则冗余检查时,只需要检查重叠集最大元素的投影和被投影情况即可。得证。
进行冗余性检查。首先是要找出频繁闭序列集和生成子集构成的重叠集里面的最大元素;其次是找出最大元素的所有投影和被投影元素;然后进行冗余序列规则的过滤过程,即最大重叠元素的一次投影和被投影过程中,最多只产生两个序列规则。过滤掉重叠元素的投影和被投影元素,剩下的频繁闭序列和生成子即可构成精确序列规则。结合给定的事件序列,按照图2的流程,可以找到频繁闭序列集和生成子集的重叠元素集合,即{<C>,<E>,<CE>},可知<CE>是重叠集中的最大元素。对于重叠集中的最大元素而言,作为生成子,<CE>在频繁闭序列<CECAB>上的投影为<CAB>;而作为频繁闭序列,<CE>被生成子<C>投影后的元素是<E>。故可产生三个序列规则{C,E,2,60%,7}和{CE,CAB,3,67%,7}。由于规则{C,ECAB,2,40%,7}的存在,所以,{CE,CAB,3,67%,7}是冗余规则,即此规则所代表的信息存在冗余。故只需要过滤<CE>的投影和被投影元素,得到无重叠集元素的频繁闭序列集和生成子集便可产生精确序列规则。
3、生成精确序列规则。
根据序列规则的定义,生成精确序列规则。其具体步骤如下:首先,从生成子集中找到对应的闭序列,对其进行投影,得到投影元素,其次,计算生成子和闭序列的支持度比值,判断其是否超过最小可信度,若超过,则将生成子作为规则前件,投影元素作为规则后件,构成序列规则。
例如,生成子<CC>在频繁闭序列<CCE>上的投影是<E>,接下来,计算闭序列和生成子的支持度比值为2/2*100=100%,即表示规则的置信度,超过了最小置信度阈值。故将生成子作为前件,投影元素作为后件,闭序列的支持度作为规则的支持度,规则的置信度为100%,有效窗口宽度是发生区间长度,故此生成子和闭序列生成的序列规则为{CC,E,2,100%,6}。
表3
前件 | 后件 | 支持度 | 置信度/% | 窗口宽度 |
<CC> | <E> | 2 | 100 | 5 |
<CC> | <AB> | 2 | 100 | 7 |
<A> | <B> | 2 | 100 | 3 |
<C> | <AB> | 2 | 40 | 7 |
<C> | <E> | 3 | 60 | 3 |
<C> | <ECAB> | 2 | 40 | 7 |
<CE> | <AB> | 2 | 67 | 6 |
<E> | <CAB> | 2 | 50 | 6 |
<E> | <C> | 3 | 75 | 3 |
<E> | <CE> | 2 | 50 | 5 |
<EC> | <E> | 2 | 67 | 5 |
表3是按照生成序列规则的算法流程,得到从已知事件序列中挖掘到的所有精确序列规则。
Claims (1)
1.一种基于包含与演绎分析的精确序列规则挖掘方法,其特征在于包括以下步骤:
步骤一、频繁闭序列及生成子挖掘:序列按照迭代生长的方式生长,即多序列是由1-序列生成;在挖掘频繁序列的过程中,首先在时间窗口内找到所有的1-频繁序列,再由1-频繁序列排列组成2-频繁序列,并挖掘这些候选2-频繁序列中的频繁序列,以此类推;按照频繁闭序列的定义,从频繁序列集中再次挖掘频繁闭序列;然后,根据生成子的定义,通过比较频繁序列与其前向扩展即父序列的支持度来检查此序列的前向扩展是否为生成子;故在得到频繁序列集后,针对尚未确定为生成子的频繁序列而言,只要通过比较此序列和它的其他真子序列的支持度就能确定此序列是否是生成子;
步骤二、冗余性检查:在生成规则的过程中,通过检查、过滤机制就能有效避免冗余演绎规则的产生;但即便如此,由于投影关系的传递性,进行演绎规则的过滤仍然是复杂的;为了提高演绎规则的过滤效率,只需要考虑闭序列和生成子的最大重叠项,对其进行演绎规则冗余检查;具体步骤如下:
(a)对于闭序列集和生成子集,遍历搜索找出这两个集合的相同序列集,且在相同序列集中找出最长的序列;
(b)找出最长相同序列在闭序列集合生成子集的投影和被投影序列;
(c)根据定理知规则间的冗余是由于存在生成子和闭序列的公共相同序列;故最长相同序列的一次投影和被投影过程中,最多只产生两个规则,其余规则均存在规则间的冗余性;冗余演绎规则的过滤过程,即对最长相同序列产生的规则进行过滤即可;
(d)产生无相同序列的生成子和闭序列集合;
步骤三、精确序列规则的产生:根据序列规则的定义,从频繁闭序列集和生成子集中产生序列规则;首先,对于给定的闭序列以及其生成子,求出生成子在闭序列上的投影;其次,对于给定的最小可信度,计算闭序列和生成子的支持度比值,若比值大于可信度阈值,则根据规则的定义,将此闭序列和生成子构成的序列规则加入到序列规则集合中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410598480.6A CN104408290A (zh) | 2014-10-30 | 2014-10-30 | 基于包含与演绎分析的精确序列规则挖掘方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410598480.6A CN104408290A (zh) | 2014-10-30 | 2014-10-30 | 基于包含与演绎分析的精确序列规则挖掘方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104408290A true CN104408290A (zh) | 2015-03-11 |
Family
ID=52645921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410598480.6A Pending CN104408290A (zh) | 2014-10-30 | 2014-10-30 | 基于包含与演绎分析的精确序列规则挖掘方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104408290A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106339609A (zh) * | 2016-09-19 | 2017-01-18 | 四川大学 | 自由间隔约束的最优对比序列模式启发式挖掘方法 |
CN112884614A (zh) * | 2019-11-29 | 2021-06-01 | 北京金山云网络技术有限公司 | 基于频繁序列的路线推荐方法、装置和电子设备 |
-
2014
- 2014-10-30 CN CN201410598480.6A patent/CN104408290A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106339609A (zh) * | 2016-09-19 | 2017-01-18 | 四川大学 | 自由间隔约束的最优对比序列模式启发式挖掘方法 |
CN112884614A (zh) * | 2019-11-29 | 2021-06-01 | 北京金山云网络技术有限公司 | 基于频繁序列的路线推荐方法、装置和电子设备 |
CN112884614B (zh) * | 2019-11-29 | 2024-05-14 | 北京金山云网络技术有限公司 | 基于频繁序列的路线推荐方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Niedermayer et al. | Probabilistic nearest neighbor queries on uncertain moving object trajectories | |
Achar et al. | Pattern-growth based frequent serial episode discovery | |
CN109902203A (zh) | 基于边的随机游走的网络表示学习方法和装置 | |
Li et al. | Discovering pollution sources and propagation patterns in urban area | |
CN102880684B (zh) | 基于日志记录挖掘与组合验证的工作流建模方法 | |
CN103489036B (zh) | 基于混合空间关联分析的应急预警网格划分系统及方法 | |
CN112669980B (zh) | 一种基于节点相似度的流行病传播网络重构方法和系统 | |
CN106294715A (zh) | 一种基于属性约简的关联规则挖掘方法及装置 | |
CN104408290A (zh) | 基于包含与演绎分析的精确序列规则挖掘方法 | |
CN104915928A (zh) | 一种基于本征正交分解的速度场坏矢量识别和修正方法 | |
CN103093625A (zh) | 一种基于可信度验证的城市道路交通状态实时估计方法 | |
CN106021642A (zh) | 一种基于可达标识的过程模型修复方法 | |
Seol et al. | Reduction of association rules for big data sets in socially-aware computing | |
You et al. | Multi-source data stream online frequent episode mining | |
CN104809185A (zh) | 面向不确定数据的闭项集挖掘方法 | |
CN104915683A (zh) | 基于递增投影规则的广义无冗余序列规则挖掘方法 | |
CN110807061A (zh) | 一种基于分层搜索不确定图的频繁子图的方法 | |
Xing et al. | Discovering traffic outlier causal relationship based on anomalous DAG | |
Bailey et al. | Efficient incremental mining of contrast patterns in changing data | |
CN104268270A (zh) | 基于MapReduce挖掘海量社交网络数据中三角形的方法 | |
Liu et al. | Modeling disease spread via transport-related infection by a delay differential equation | |
CN103699690A (zh) | 一种寻找流程模型中最小变化区域的精确方法 | |
CN105138445A (zh) | 基于概率行为关系挖掘业务流程中不可见任务的新方法 | |
CN109325092A (zh) | 融合短语信息的非参数并行化层次狄利克雷过程主题模型系统 | |
Ganesan | Infection spread in random geometric graphs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150311 |