数据挖掘和统计学的区别(guide to Intelligent data analysis学习笔记)
提到数据挖掘时,我们往往着重于建模时的算法而忽视其他步骤,而在real world的数据挖掘项目中,其他步骤则是决定项目成败的关键。《guide to intelligent data analysis》这本书是knime官网推荐的书籍(http://tech.knime.org/guide-to-intelligent-data-analysis),按照CRISP-DM的流程讲述了数据挖掘流程的过程。
我们先从什么是数据挖掘入手。要理解什么是数据挖掘,首先需要区分的是便是data和knowledge。
我们对比data和knowledge的特征:
Data |
Knowledge |
涉及到的是单个的实例 (单个的事物,人,事件,时间点,等等) |
涉及到的是类的实例 (关于事物,人,事件,时间点等的集合) |
描述的是个别的性质 |
描述的是一般性的模式,结构,法则,规则等 |
通常以大规模的数量获得 (数据库,档案) |
包含尽可能少的陈述 |
通常收集获取相对比较简单 (比如超市的小票,互联网里的一些数据) |
通常找到和获取非常的困难和耗时 |
并不能让我们做一些预测 |
允许我们去做预测和展望 |
我们还需要探讨下统计学(statistic)和KDD的区别和联系。
在统计学方面:
统计学作为一种历史悠久的学科,其起源于收集和分析关于人口和国家的数据。其可以分为描述性(descriptive)和推断性(inferential)统计学。
描述性统计学(descriptive statistic)通常喜欢用一些像平均值那样的特征值或者用像直方图那样的图标来做对于数据的描述,通常并不做特定的假设。
推断性统计学(inferential statistic)相对描述性统计学来说提供了更加严格的基于数据随机生成过程的某些假设。其得到的结论只在其假设得到满足的情况下成立。
通常来说统计学关于数据分析的第一步往往是设计一个定义了数据如何被收集的实验,基于这些数据我们要能做一个可靠地分析。通常在实验性学习(experimental study)中我们可以控制盒操纵数据生成不步骤。然而在观测性学习(observational study)中,我们不能控制数据生成的过程。
然而不管学习过程是实验性的还是观测性的,通常总是包含了独立的假设,这些我们收集的数据也应该是具有代表性的。我们总是在推断性统计学中应用基于收集的数据做假设检验(hypothesis testing)的一个主要原因便是我们想要确定或者拒绝关于这个领域的一些假设。
在数据挖掘方面:
而与假设检验相反,探索性的数据分析(exploratory data analysis)则关心从收集的数据中生成假设(generating hypothesis)。在探索性的数据分析中并没有或者只有比较弱的关于数据生成过程的模型假设。一个典型的情景便是我们已经具有了数据,他们也许并不是通过最好的方式手机来的。因此我们很难去对于数据生成过程做特定的假设。我们是目标导向的,这就是说我们提出像“什么顾客会带来最高的收益”这样的问题,并研究能够帮助我们回答和解决这样的问题的方法。
所谓数据挖掘技术(data mining techniques)的一种定义便指的是对于以不同目的收集的大量的商业数据库,使用有力的工具和技术分析其大量数据的技术。曾经有人认为使用正确的数据挖掘工具可以自动或者仅仅依靠少量的人工干涉就可以得到任意我们想要的knowledge。然而,实践经验表明了每个问题都是不同的并且数据分析过程的自动实现是几乎不可能的。
如今我们是这样理解KDD(knowledge discovery in database)的,我们认为其实一种交互式的关于在数据中定义有效的,新奇的,潜在的有用的,并且最终能够理解的模式的过程。数据挖掘(data mining)和建模(modeling)只是其中一个单个的步骤。
从上面的分析我们可以看到,KDD,data mining以及statistic的不同。其本质性的区别就在于对待数据的假设的态度上。而我们所应致力的,则是以标准完善的数据分析过程(data analysis process),做出漂亮的分析项目。