论文部分内容阅读
数据库管理系统的大规模应用,使很多领域都积累了海量的数据,如何能够高效地利用这些数据的需求促进了数据挖掘技术的出现及迅速发展。然而,随着计算机网络监控、气象监测、金融报价和传感器网络等领域的崛起,一种被称为数据流的新的数据处理模型被提出。这种数据流数据以很高的速度源源不断地到达,挖掘算法只能对数据处理一次,因此数据流环境下频繁项集挖掘算法的设计是一项极具挑战性的工作。数据流的无限性和高速性,决定了数据流上的挖掘算法必须为近似算法。针对如何设计有效的概要数据结构的问题,本文分析了已有的比较经典的频繁模式树FP-Tree结构,结合改进的以基本窗口为更新单位的滑动窗口模型,设计了一种二维数组结构用于存储频繁项集,并给出了该二维数组的特殊化赋值方法。基于提出的二维数组结构,本文设计了一种数据流上的频繁项集挖掘算法MFIBA(Mining Frequent Itemsets based on Bitwise AND)算法。该算法为一种批处理式算法,首先在到来的数据流上开辟一个固定大小的滑动窗口,再将该滑动窗口划分为几个相同宽度的基本窗口,并采用二维数组结构存储每个基本窗口中的频繁项集信息。当有挖掘请求时,挖掘算法通过在数组的各行之间执行按位“与”运算来产生频繁项集,并且根据数组中存储的值来计算每个频繁项集的支持度计数。作为一种近似挖掘算法,算法引入了允许误差参数,有效地删除了非频繁项集,节省了内存资源开销。将该算法与数据挖掘经典算法Apriori算法进行性能对比,结果表明,本文给出的算法在算法运行时间和内存消耗上略优于Apriori算法,适合进行数据流挖掘。