根据流式数据所拥有的特点,我们在对流式数据进行统计后分析的时候提出两个问题。
问题一:由于流式数据是无限、持续的,而存储设备的容量是有限的,系统无法将所有采集到的数据都放在存储设备中等待挖掘。所以在设计流式数据处理方法时,需要解决怎样才能充分利用有限的内存,在有限的内存中存储更多有效的数据。
问题二:由于流式数据都是有时效性的,对于数据来说,产生时间越久远的数据它的有效程度一般来说会越低,所以在对流式数据进行分析处理的时候需要对不同时间段得到的数据进行差异化处理。
针对流式数据的海量性,流式数据挖掘算法需要解决其存储问题,以及在确保算法精度的同时,尽量减少算法的时间复杂度和空间复杂度,降低系统开销,提高系统运行效率。在流式数据挖掘算法中,常用的抽样统计方法有:抽样技术、数据概要技术、时间窗口技术等。
1.抽样技术
分布式和实时处理技术的发展,让流式数据统计分析成为可能。然而,流式数据海量、无限的特点使得系统无法对全部数据进行采集和存储,所以从成本和效率角度考虑对流式数据进行抽样选择是有必要的。系统通过抽样技术得到后期数据分析所需要的数据,并进行存储分析。抽样技术是统计学中的经典方法,它在流式数据统计中的基本思想是以概率或者概率模型来决定是否处理流式数据中的某一数据。抽样可以分为均匀抽样和偏移抽样,对流式数据的均匀抽样是以相同的概率抽取元素,经典的方法有水库抽样法以及链式抽样法;流式数据上的偏移抽样中,数据项被抽取的概率各不相同,主要通过考虑流式数据重要性实现数据元组的选择。
1)水库抽样法
水库抽样法是一种最简单的均匀抽样方法,其基本思想是流式数据中每个数据被抽取到的概率是相同的,且各个数据样本之间互不影响、互相独立。水库抽样法的缺点是对流式数据中的噪声数据和数据分布情况较为敏感,因此该方法通常适用于数据样本之间相似性较大和数目不多的情况。
2)链式抽样法
链式抽样法也是一种简单的均匀抽样方法,同时在抽样的基础上采用了滑动窗口技术。假设流式数据为DS,时间窗口大小为L,则当流式数据中第i个数据元素到达时,系统以概率1/min(i,L)将该数据元素加入到样本集中,同时,在i+1到L+1范围内选取一个数字作为索引,备选数据即为该索引所对应的数据元素。相应地,一个被挑选的备选数据会在数据过期时替换掉该数据。滑动窗口在移动过程中,索引对应的备选数据,在索引数据到达时会被加入到样本集合中,与此同时替代该数据的索引会在下一个滑动窗口内被找到。
抽样技术主要应用于基于滑动窗口的流式数据统计分析,它是在划分的主要思想下把整个流式数据划分为相互独立的N(N>1)层,且每一层维护一个规模为M大小的均匀抽样的样本集合,有助于提高后续统计任务的效率。(www.daowen.com)
2.数据概要技术
数据概要技术是为了能够有效处理高维流式数据问题,在投影技术基础上发展而来的。它的主要思想是把具有n个维度的流式数据投影在一些定义好的随机分量上,取数据项的投影值进行相应计算。
概要数据结构是为了保留流式数据概括统计信息而通过概要技术得到的一种数据结构,常见的概要技术有小波分析、直方图、频率矩等。其中,常见流式数据统计会使用直方图作为它的流式数据概要数据结构,比如使用直方图、压缩直方图以及V-优化直方图来表示流式数据的概要统计结构。概要数据结构并不能代表流式数据的整个样本集合,因此相应的统计计算结果只是真实值的近似值,这个近似值的准确程度取决于概要数据结构中的数据与流式数据中原始数据的误差。
3.时间窗口技术
由于内存容量有限或者其他存储设备无法存储无限、海量的整个流式数据,同时不同的用户会对不同时间范围内以及不同的时间粒度的数据感兴趣,使得时间窗口技术对于流式数据的统计分析具有十分重要的意义。时间窗口技术就是通过选择窗口的类型在处理的流式数据中来选择数据。常用的时间窗口技术有界标窗口技术、滑动窗口技术以及衰减窗口技术。
1)界标窗口技术
界标窗口技术首先要初始化,即计算流式数据从初始时间时刻到当前时间时刻范围内所有的历史数据,并将得到的数据集合按照时间顺序排列,随着流式数据的不断到来,界标窗口大小也相应地变大。使用界标窗口技术的算法有CluStream算法、LossyCounting算法等。
2)滑动窗口技术
滑动窗口技术定义了一个固定长度的时间窗口,计算所需要的数据在窗口中取得。由于滑动窗口固定不变的特点,窗口会随着时间推移使用新到达的流式数据代替过期的数据。受到滑动窗口技术在网络通信领域中应用的启发,滑动窗口技术被用来对流式数据进行统计分析,凭借其简单、固定的优点成为目前流式数据计算主要采用的时间窗口技术。在实际的流式数据统计分析应用中,我们可以根据应用背景和实际需要设计良好的滑动窗口模型,发挥其高效的优点。
3)衰减窗口技术
衰减窗口技术对历史时间段内的全部数据进行计算。与其他窗口技术不同,使用衰减窗口技术对流式数据进行统计分析会在每一个新到来的流式数据中附加一个经计算得到的、随时间衰减的权值。衰减窗口中越早到达的流式数据,离现在时刻越近,其权值越大,反之随着事件发展,其权值越小。因此,界标窗口和滑动窗口可以看作是衰减窗口的特例,前者为所有数据赋权值为1,后者为窗口内的数据赋权值为1,而窗口外的数据赋权值为0,衰减窗口则是更为灵活的处理机制。通常,我们使用的衰减函数是f(t)=2-λt(λ>t)。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。