发明名称 一种带时间约束的信号序列频繁情节挖掘方法
摘要 本发明公开一种带时间约束的信号序列频繁情节挖掘方法,其实现的步骤是:由信号数据生成信号序列,读取用户设定的最小支持度和最大时间间隔阈值,生成1‑频繁情节集,使用1‑频繁情节集合和K‑频繁情节集合生成K+1‑频繁候选情节集合,通过构建情节树,从候选情节集合中筛选出满足时间约束的频繁情节。反复实行上述由低阶情节生成高阶候选情节、筛选得到频繁情节的步骤,完成了对信号序列的所有的频繁情节的挖掘。在挖掘频繁情节过程中加入情节时间跨度约束,使得本发明挖掘得到的频繁情节具有较高的实际参考价值和应用性。
申请公布号 CN106055672A 申请公布日期 2016.10.26
申请号 CN201610392424.6 申请日期 2016.06.03
申请人 西安电子科技大学 发明人 李健;李辉;崔江涛
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 田文英;王品华
主权项 一种带时间约束的信号序列频繁情节挖掘方法,包含以下步骤:(1)数据预处理:(1a)将电子数据采集设备采集的信号数据中的每一个信号类型,按照自然数递增的顺序进行编码,生成信号序列;(1b)读取用户设定的最小支持度,最大时间间隔阈值;(2)初始化:将迭代次数J初始化为1,将信号数量K初始化为1;(3)生成1‑频繁情节集合:(3a)将任意成员均为含有1个信号的频繁情节的1‑频繁情节集合设置为空集;(3b)遍历信号序列中的数据,统计各信号类型出现的次数;(3c)以信号序列中的任意一个的信号类型为键、信号类型的出现次数为值,构建键值对集合;(3d)遍历键值对集合,将出现次数大于或等于用户设定的最小支持度的键值对,加入到1‑频繁情节集合中;(4)判断K‑频繁情节集合是否为空集,若是,则执行步骤(10);否则,执行步骤(5);(5)生成K+1‑候选情节集合:(5a)将任意成员都是含有K+1个信号的候选情节的K+1‑候选情节集合设置为空集,将K‑频繁情节集合的索引i设置为0;(5b)将K‑频繁情节集合的索引i加1,将1‑频繁情节集合的索引j设置为0;(5c)判断K‑频繁情节集合的索引i是否小于或等于K‑频繁情节集合的大小,若是,则执行步骤(5d);否则,执行步骤(5k);(5d)将1‑频繁情节集合的索引j加1;(5e)判断1‑频繁情节集合的索引j是否小于或等于1‑频繁情节集合的大小,若是,则执行步骤(5f);否则,执行步骤(5b);(5f)将情节p初始化为K‑频繁情节集合中的第i个情节,将情节p的索引h设置为‑1;(5g)将情节p的索引h加1;(5h)判断索引情节p的索引h是否小于或等于信号数量K,若是,则执行步骤(5i);否则,执行步骤(5b);(5i)在情节p的第h个位置插入1‑频繁情节集合中的第j个情节,得到情节r,判断情节r的所有非空真子集是否在K‑频繁情节集合中,若是,则执行步骤(5j);否则,执行步骤(5g);(5j)将情节r加入到K+1‑候选情节集合中,执行步骤(5g);(5k)结束生成K+1‑候选情节集合;(6)将信号数量K加1,将任意成员均为含有K个信号的频繁情节的K‑频繁情节集合设置为空集;(7)对Q‑候选情节集合中每一个情节构建一个情节树,得到情节树集合;(8)生成满足时间约束的K‑频繁情节集合:(8a)将任意成员都是含有K个信号的频繁情节的K‑频繁情节集合设置为空集,将情节树集合的索引c设置为0;(8b)将情节树集合的索引c加1;(8c)判断情节树集合的索引c是否小于等于情节树集合的大小V,若是,则执行步骤(8d);否则,执行步骤(8t);(8d)获取情节树集合中的第c个情节中的情节发生时间表域、当前层数域、最大层数域、发生计数域、当前情节域,将信号序列的索引r设置为0;(8e)将信号序列的索引r加1;(8f)判断信号序列的索引r是否小于或等于信号序列的大小W,若是,则执行步骤(8g);否则,执行步骤(8r);(8g)取出信号序列中的第r个信号数据的信号类型e,发生时间t;(8h)判断信号类型e是否在当前情节域中,若是,执行步骤(8i);否则,执行步骤(8e);(8i)对情节发生时间表域的第一层到当前层数域+1所指代的层中的每一层,若该层记录的是信号类型e的发生时间,则将发生时间t加入到该层;(8j)判断情节发生时间表域的当前层数域+1所指代的层是否为空,若是,执行步骤(8e);否则,执行步骤(8k);(8k)将当前层数域加1;(8l)判断当前层数域是否大于等于最大层数域,若是,则执行步骤(8m);否则,执行步骤(8e);(8m)判断情节发生时间表域中的当前层数所指代的层的首元素与第一层首元素之差是否小于最大时间间隔阈值,若是,则执行步骤(8n);否则执行步骤(8o);(8n)将情节发生时间表域清空,将发生计数域加1,将当前层数设置为0,执行步骤(8e);(8o)删除情节发生时间表域的每一层的首元素;(8p)对情节发生时间表域的第2层到当前层数层所指代的层的每一层,由低层向高层,逐层得将该层中大于或等于低一层的首元素的那些元素删除;(8q)对情节发生时间表域的第1层到当前层数所指代的层的每一层,由低层向高层,找到第一个为空的层,将当前层数设置为该层号,执行步骤(8e);(8r)判断发生计数域是否大于最小支持度,若是,则执行步骤(8s);否则,执行步骤(8b);(8s)将以该情节树所表示的情节为键、该情节树的发生计数域为值,构建键值对加入到K‑频繁情节集合,执行步骤(8b);(8t)结束生成满足时间约束的K‑频繁情节集合;(9)将迭代次数J加1,执行步骤(4);(10)将所有的频繁情节集合输出到磁盘。
地址 710071 陕西省西安市太白南路2号