论文部分内容阅读
数据流是一个有时间顺序的,无限的数据元素组成的连续序列并且数据元素的底层分布可能随着时间发生变化。它具有连续、无限、高速到来和时变数据分布的特点。因此数据流环境下知识发现要求算法单次扫描数据,能够适应流数据的动态变化,占用较小的内存和使用有限的处理时间。从大规模数据中抽取模式来建立分类模型是模式挖掘的重要研究问题之一。一种可行的方法是根据模式集合建立分类模型。例如基于频繁模式的贝叶斯分类模型,其使用在训练集中抽取项集集合的频繁性来估计贝叶斯理论中的概率值。然而,目前基于模式的贝叶斯分类算法大多是针对静态数据集合的,这些算法需占用较大内存,抽取项集过程中需多次扫描整个数据集合,需较长处理时间且不能适应数据的动态变化,因此不能用于高速动态变化与无限的数据流环境中。对此本文提出一种数据流环境下基于模式的半懒惰式分类算法。算法通过在流数据上抽取所需的频繁项集,使用频繁项集估计贝叶斯理论中联合概率的乘积近似值从而对待分类实例进行分类,其主要工作包括:(1)提出数据流环境下频繁模式的抽取算法,使用滑动窗口模型获取流数据;提出了结构更为简单的混合树结构用于存储当前窗口中的项,从而提升算法处理流数据的速度并且进一步减少了内存消耗;提出了给定范围的模式抽取机制,从而减少了模式抽取过程中候选项集的生成。(2)提出基于模式的半懒惰式数据流分类模型,使用半懒惰式学习策略,即在模型训练阶段根据当前窗口中的数据变化随之更新混合树结构;当待分类实例到来时才根据其中的项在混合树结构上抽取项集集合,建立对其特定的分类模型;保证了算法能够捕获局部数据的变化,并且将建立分类模型的一部分工作置于训练阶段保证了算法能够有较快的数据处理速度并且能及时响应分类请求。(3)提出数据流环境下基于窗口模型的频繁项集定义;并且对数据流中模式抽取不完全的情况提出使用平滑技术处理未被抽取的项。本文在现实数据集和合成数据集中进行了大量实验,结果表明其较于其它数据流分类算法在分类精度和运行时间上都具有良好的性能。