论文部分内容阅读
序列模式挖掘由于其能发现同一个记录内数据项间的关联,同时还能揭露不同记录间数据项间的关联,因而具有广泛的应用领域。近年来已成为数据挖掘领域继关联规则挖掘之后的又一个研究重点。 最大频繁序列挖掘是序列模式挖掘中最重要也是最基本的问题,其挖掘算法的效率直接影响着整个序列模式挖掘过程,进而影响了它的应用范围。现有的算法研究在效率上仍然存在问题。围绕挖掘效率,研究了高效的最大频繁序列挖掘算法及其在入侵检测中的应用,具有重要的理论意义和实际应用价值。 挖掘最大频繁序列的途径一般可分为三种,即,基于频繁序列集的挖掘方法、基于频繁闭序列集的挖掘方法以及直接挖掘最大频繁序列集。 对基于频繁序列挖掘的算法而言,尽量减少数据库的扫描次数和挖掘过程中所产生的候选序列的数目是提高算法效率的关键。在分析已有研究工作的基础上,给出了一个新的频繁序列挖掘算法IDSG。该算法通过在频繁项(而不是频繁项集,即无需先求出所有频繁项集)间建立关联图,并在垂直数据库表达的基础上,借助简单的时态连接得到完全频繁序列集合。整个过程只需扫描原始数据库两遍,有效减少了磁盘I/O。另外,优化策略的正确运用,有助于减少候选序列的个数。分析及实验表明,较之同类算法,算法IDSG在效率上有了明显的提高。 对基于频繁闭序列挖掘的算法来说,最关键、最耗时的工作是子序列间的包容关系检查。在综合运用已有剪枝策略的同时,利用序列的长度、支持度、父子关系等提出了快速判断序列间包容关系检查策略及改进的频繁闭序列挖掘算法FCSeq。快速包容关系检查策略的正确应用减少了序列间不必要的包含判断。分析与实验表明,FCSeq已优于现有同类算法。 已有的挖掘最大频繁序列算法基本是基于“候选最大频繁序列集产生——测试”这样一种思想,为了尽量减少或根本不产生候选最大频繁序列,给出了一种挖掘最大频繁序列的算法MAXSeq。该算法通过利用前向、后向以及中间扩展检查,直接产生最大频繁序列模式,无须进行“候选最大频繁序列产生——测试”,也无须对候选最大频繁序列集进行维护。实验证明,尤其是对海量数据库,有效地减少了时空开销。 由于数据库的海量性、密集性、分布性等特点,将并行处理技术应用到序列模式挖掘是提高挖掘效率的又一种有效途经。在研究了频繁闭序列的自身特征的基础上,设计出了基于分布内存的挖掘频繁闭序列的并行算法PFCSeq,该算法采用数据划分与任务划分相结合的方法,各处理机按深度优先方式递归产生本地局部频繁闭序列,在此过程中充分运用动态负载平衡策略调整处理机间的负载,尽可能的平衡各处理机的计算时间。分析及实验表明,算法PFCSeq获得了良好的可扩展性和加速比。 若以数据为中心的观点来看,入侵检测问题实质上是一个数据分析问题。用于进行入侵检测的数据是主机的审计轨迹数据和网络的审计轨迹数据,这些审计数据不但记录了系统和网络上发生的所有活动而且反映了这些活动进行的先后顺序。用频繁序列挖掘算法挖掘审计数据中的频繁序列模式,可准确发现其中隐藏着的异常频繁行为,并以此检测入侵。在分析已有入侵检测技术的基础上,提出了一种基于频繁序列挖掘的入侵检测方法MFS ID。该方法致力于发现应用层连接记录间的相关性,同时在检测过程中充分考虑了由正常行为的正常偏离以及异常行为的变形等噪声带来的影响,实验表明,在兼容矩阵充分有效的情况下,该模型获得了较高的检测率以及较低的误报率。