作者:Neha Gupta , Indrjeet Rajput
数据流是一个大规模,连续和快速的数据元素序列。挖掘数据流给数据挖掘社区带来了新的问题,就是关于如何挖掘速度快到你只能看到一眼的连续高速数据项。由于这个原因,传统的数据挖掘方法被具有一些特殊特征的系统所取代,如连续到达多重,快速,时变,可能无法预测和无限制。分析数据流有助于科学应用,商业和天文等应用。在本文中,我们将介绍数据流日益增长的领域。我们介绍了分析数据流所需的理论基础。我们讨论用于挖掘数据流的各种技术。本文的重点是研究挖掘数据流所涉及的问题。最后,建议我们结束对该地区未来的大开放问题和一些有希望的研究方向的简要讨论。
数据挖掘被认为是在数据下发现有用模式的过程,也会使用机器学习算法。已经有一些技术使用计算机程序从数据中自动提取表示模式的模型,然后检查这些模型。传统的数据挖掘技术不能应用于数据流。由于大多数传统的数据挖掘需要多次扫描的数据来提取信息,对于流数据来说这是不现实的。信息系统已经变得更加复杂,即使处理的数据量增加了,并且也是动态的,因为共同的更新。数据流信息具有以下特征:
• 不能对数据流的顺序做出假设。
• 数据流是的长度是没有限制的。
从数据流中有效地捕获知识信息变得非常重要,其中包括网络流量监测,网页点击流。需要实时使用半自动交互技术来提取隐藏的知识和信息。过去几年中已经提出并开发了系统,模型和技术来讨论这些挑战。本文的其余部分组织如下:在第2节中,我们将简要讨论数据流分析所需的必要背景。 然后,第3节和第4节描述了用于挖掘数据流的技术和系统。在第5节中讨论了在这个不断增长的领域中开放和解决的研究问题。这些研究问题应该加以解决,以便实现能够满足数据流挖掘应用程序。 最后,第6节总结了论文并讨论了未来研究的有趣方向。
2. 数据流的基本方法
挖掘数据流的问题可以使用以下方法来解决:
• 检查整个数据集的一个自己活转换数据流的子集
• 有效利用时间和空间的算法,详情在第三章讨论。
第一种方法是指汇总整个数据集或选择要分析的数据流的子集。 使用的技术是采样(sampling),卸载(load shedding),略图(sketching),概要数据结构(synopsis data structure)和聚合(aggregation)。 这里简要讨论这些技术。
2.1 采样(sampling)
抽样是最古老的统计技术之一,很长时间都被用于对要处理的数据项进行概率性选择。计算误差率的边界作为采样率的函数给出。在选择要分析的传入流元素的过程中考虑抽样。在先前通过抽样技术执行的数据流上的一些计算近似频率计数。非常快的机器学习技术已经使用Hoeffding bound来测量样本的大小。即使采样方法已经被研究用于聚类数据流,分类技术和滑动窗口模型。分析数据流时与采样技术有关的问题有:
•未知数据集的大小
•在检查监测分析异常的应用中,采样可能不是正确的选择。
•它没有解决波动问题率。
数据速率,采样率和误差之间的关系边界将被生成。
2.2 Load Shedding(卸载)
卸载是指在过载期间丢弃一小部分数据流的过程。 卸载用于查询数据流进行优化。 减少负载以降低精度下降是可取的。 卸载也有两个步骤: 首先,为每个查询选择目标采样率。 在第二步中,将负荷脱落器以最有效的方式实现目标。 在挖掘算法中使用减载很困难,因为被丢弃的数据流可能代表了时间序列分析中的一种感兴趣的模式。 采样中发现的问题甚至存在于这种技术中。 它仍然处理滑动窗口聚合查询。
2.3 Sketching(构造略图)
构造略图,是随机投影特征子集的过程。 这是对输入流进行垂直采样的过程。 构造略图已应用于比较不同的数据流和汇总查询。 构造略图的主要缺点是准确性,因为这很难在数据流挖掘中使用这种技术。 基于构造略图的技术对于多个流的分布式计算非常方便。 如果将主成分分析(PCA)应用于流式应用程序,它将是更好的解决方案。
2.4 Synopsis Data Structures(概要数据结构)
概要数据结构保存数据流的概要信息。 它体现了小空间的思想,近似解决海量数据集问题。 对于数据流上的摘要或概要数据结构的构建近来引起了人们很大兴趣。 计算的复杂度不能是O(N),其中N可以是每个元素用来解决问题的时间或空间成本。一些解决方案使结果更接近O(poly(log N))。概要数据结构的开发使用了更小的次序O(logk N)空间。 这些结构是指应用汇总技术的过程。包含有关流的汇总信息的较小空间用于获取知识。有多种技术用于构建概要数据结构。 简要讨论这些方法。
• Sampling methods( 抽样方法):
• Histograms:(直方图):数据汇总的另一个关键方法是的直方图。通过将属性值分组到“buckets”(子集)中,并基于每个buckets中维护的汇总统计信息近似数据中的真实属性值及其频率,来对关系的一个或多个属性中的数据进行近似。直方图已广泛用于捕获数据分布,以通过少量步进函数来表示数据。这些方法广泛用于静态数据集。然而,大多数静态数据集上的传统算法需要超线性时间和空间。这是因为使用动态编程技术来实现最佳直方图构建。对于大多数真实世界的数据库,存在直方图,可以产生低误差估计,同时占用相当小的空间。他们对数据流案例的扩展是一项具有挑战性的任务。。
• Wavelets:(小波):小波是众所周知的技术,通常用于数据库中的分层数据分解和汇总。小波系数是将给定的一组数据值投影到正交基向量组上的投影。小波技术的基本思想是将数据特征分解为小波函数和基本函数的。小波方法的特点是分解的高阶系数说明了数据的广泛趋势,而较低的局部趋势则由低阶系数捕获。特别是,小波表示的主导系数的动态维护需要一些新颖的算法技术。在计算数据流模型中的顶级小波系数方面已经做了一些研究。吉尔伯特的技术提出了一种简单的贪婪算法来找到最佳的B-term Haar小波表示。
• Sketches(略图):小波技术的随机版本被称为构造略图方法。这些方法很难适用,因为很难直观地解释基于略图的表示。构造略图方法在多维情况下的推广仍然是一个悬而未决的问题。• Micro Cluster based summarization(微聚类):最近的一种微聚类方法可以用来执行数据流的概要构建。 它使用集群特征向量(CFV)。 这种微集群汇总适用于多维情况,并且能够很好地适应底层数据流的演变。
• Aggregation(聚合):输入流的汇总是使用均值和方差生成的。 如果输入流具有高度波动的数据分布,则该技术失败。 这可以用于合并离线数据与正在研究的在线数据。 它通常被认为是资源意识挖掘中的数据速率适应技术。 许多概要方法(如小波,直方图和略图)不易用于多维情况。 随机抽样技术通常是高维应用的唯一选择方法。
论文翻译全文:gitbook点击打开链接