1.1.2 应用对理论的挑战催生数据挖掘
应用需求对理论研究的牵引力是巨大的,没有应用背景的理论研究是没有价值的。在海量数据管理和分析应用呼声不断的同时,相关理论研究和应用实践的脚步也未曾停止。数据库与数据仓库、人工智能与机器学习、统计学理论应用的发展是数据挖掘诞生的坚实基础。
一、数据库和数据仓库
计算机应用从其刚刚诞生时的以数值计算为主跨越到当今的以数据管理为主,数据库的理论实践起到了巨大的推波助澜的作用。从最初的文件系统研究,到后来的层次模型、网状模型,直至1969年E.F.Codd提出关系数据模型,可以说数据库理论开创了数据管理的新时代。数据库以其卓越的数据存储能力和数据管理能力,得到了极为广泛的应用。随着数据库中数据的不断积累以及人们对海量数据分析需求的强烈,数据库的理论实践开始思考这样的问题:是否存在更有效的存储模式实现高维海量数据的存储管理?数据库仅仅是用来存储数据的吗?难道数据库对数据的管理只仅仅停留在简单的查询和汇总上吗?
应用呼唤理论的发展和理论的再实践。通过数据库研究者们的不懈努力,在数据库基础上逐渐发展完善起来的数据仓库技术,已经成为一种有效的面向分析主题的数据整合、数据清洗和数据存储管理集成工具。同时,在机器学习和统计学等领域研究成果的基础上,数据仓库正在不断吸纳经典的数据分析方法并将其融合到商业产品中。
例如,许多知名的数据库厂商,如Microsoft公司的Sql Server产品提供了多种典型的数据挖掘算法;Oracle公司的Orcale产品包含了包括关联规则和贝叶斯算法在内的众多数据挖掘算法;而IBM公司更是通过斥资12亿美元收购了业界极为著名的,麾下拥有SPSS统计分析软件和Clementine数据挖掘产品的SPSS软件公司,扩展了IBM的“信息随需应变”软件组合和商业分析能力。IBM表示,收购SPSS将增强公司“信息议程战略”(Information Agenda initiative)的业务实力,帮助客户公司更有效地将信息转化为战略资产。
与此同时,研究者们也在为实现数据仓库中数据和分析模型的无缝交互,以及不同数据库仓库产品间的数据挖掘分析方法共享而不懈努力着。例如,1999年,Microsoft公司提出了OLE(Object Linking and Embedding)DB(DataBase)for DM(Data Mining)规范,研发了模型建立、模型训练和模型预测的数据挖掘语言。其核心思想是利用SQL和OLE DB将数据库中的关系概念映射到数据挖掘中;包括IBM、Microsoft、Oracle、SAS、SPSS等大公司在内的数据挖掘协会,提出了预测模型标记语言PMML(Predictive Model Markup Language),它标准化了常见数据挖掘算法的模型内容,并以XML格式存储,使不同软件之间的模型交换和共享成为可能。以Microsoft公司的Sql Server产品和IBM公司的Clementine产品为例,当用户在计算机中安装了Sql Server,如果在Clementine中建立和执行数据挖掘流,则Clementine会将挖掘流提交给数据库,并利用数据库系统所提供的各种数据管理优化机制,直接读取数据库中的数据而不必下载到Clementine中,且模型结果可存储于数据库中。
二、人工智能和机器学习
人工智能和机器学习的理论研究一开始就具有浓厚的应用色彩。针对如何利用计算机模拟人脑的部分思维,如何利用计算机进行实际问题的求解等,人工智能和机器学习的理论研究主要集中在基于谓词演算的机器定理证明技术和二阶演绎系统等方面,可以说成果丰硕。然而,其理论实践过程中出现了许多问题。
例如,作为人工智能和机器学习研究成果之一的专家系统,在某种意义上能够代替专家给病人看病,能够帮助人们识别矿藏,但却很难解决那些看似简单但却极为复杂的问题。如专家系统建立中的知识获取过程,出现了诸如人脑是如何思维的,计算机技术人员应以怎样的方式与领域专家交流才能全面获取其专业知识,如何克服知识交流过程中的随意性、跳跃性等一系列问题;再如,专家系统的知识表示过程中,出现了因计算机的知识表示通常是“机械”化的“如果……那么……”方式,而专家的领域知识丰富多彩,并不是所有知识都能够概括成“如果……那么……”的模式等问题;再如,专家系统中获取和存储的知识绝大部分是领域的专业知识,常识性知识很少。但没有常识的专家系统有时会比傻子还傻。人工智能学家Feigenbaum曾估计,一般人拥有的常识存入计算机大约有100万条事实和抽象经验。将如此庞大的事实和抽象经验整理表示并存储在计算机中,难度是极大的。
正是这样,人工智能和机器学习的应用重心开始从博弈、自然语言理解、专家系统等领域向更具应用意义的数据分析方面转移。机器学习方法,如决策树、神经网络、推理规则等,能够模拟人类的学习方式,向数据案例和经验学习,并通过学习实现对新事物所具模式的识别和判断,而这种方式恰恰为数据分析提供了极为绝妙的研究思路。
三、统计学
统计学发展至今已有几百年的历史,它为数据收集、整理、展现和分析过程提供了完整的理论框架和实践依据。然而在信息技术迅猛发展,数据量高速膨胀、数据类型日益丰富、数据管理和分析需求不断提升的当今,统计学的理论研究和应用实践也面临着诸多挑战。这主要体现在理论研究和应用实践两个方面。
● 理论研究方面
例如,在数据采集能力极为有限的过去,人们只能通过研究少量样本来推断总体特征。此时,作为统计学传统方法的推论统计具有极高的应用价值。但在数据采集能力极强的今天,有时摆在人们面前的不再是“小样本”而是海量的高维总体,此时推断不再有意义,且原本较小的参数差异在大样本条件下都表现出了“显著”;再如,经典统计分析方法往往是模型驱动式的。以统计学中应用极为广泛的线性回归分析方法为例,它即是首先确定模型,然后利用数据建立、验证模型,最后应用模型。这样的研究模式是建立在对模型的“先知先见”基础上的。但在数据庞大结构复杂的今天,这种“先知先见”几乎是不可能的,数据驱动式的分析思路似乎更为现实。因此,基于模型假设进行总体推断和检验的传统分析方法已显露出很大的局限性。
为克服统计分析方法应用过程中的诸多问题,20世纪60年代,稳健统计开始盛行。它通过敏感性分析、异常值诊断等手段,开创性地解决了当数据与理论分布假设有偏差的分析问题。20世纪70年代中期,John Tukey提出的探索性数据分析(EDA)方法,开始打破统计方法中分布假设的古典框架,注重从数据的特征出发研究和发现数据中有价值的信息。在之后至今的几十年发展历程中,统计方法在与数据相结合的道路上硕果累累,许多新的统计技术应运而生。在摆脱古典框架约束方面,通过马尔可夫链蒙特卡罗(Markov Chain Monte Carlo,MCMC)模拟以及Bayes统计等方法,着力解决复杂模型识别和分析问题。利用Jack-knife(刀切法)、Cross-Validate(交叉验证)、Bootstrap等方法解决模型评价和选择问题。此外,在分析结果展示方面,除传统的数学语言表示之外,统计也力图更多地借助现代计算机技术,实现高维数据分布特征以及分析结果的图形化展示,数据的可视化技术已成为统计和计算机界共同的热门话题。
● 应用实践方面
例如,数据整理是统计分析必不少的重要环节。在数据量相对较少的过去,数据整理可以通过手工或借助简单工具实现。但随着数据量的快速膨胀,这个问题不再仅仅是个量变而成为一种质变。从工作量看,数据整理的工作量已经占到整体统计分析工作量的70%到80%或更高;从工作方式看,手工或借助电子表格软件整理数据的方式已显得无能为力。
表面看上述问题源于数据整理手段和工具效率不高,但本质上却源于数据的存储组织模式。因为,数据整理的高效率是建立在良好的数据组织模式基础上的,只有好的数据组织模式才可能支撑高效率的数据整理。因此,过去在统计应用视野之外的数据存储和组织问题,今天不得不成为统计应用实践的焦点,统计应用与计算机数据库技术相结合已是大势所趋。
再如,整体解决方案已成为统计应用实践的大趋势。过去,人们的统计应用实践往往呈现出“片段性”的特点,原本完整的统计应用呈“割裂”状。以企事业统计为例,统计应用实践应包括建立指标体系,采集数据,存储和管理数据,分析数据和制定决策等多个相互影响和制约的环节。但如果将其割裂开,必然会出现各自为政、各行其是的局面。于是,一些统计人员脑子中“我只负责指标框架设计不考虑具体实施”、“你给我数据,我给你分析”的工作模式不足为怪,数据上报竟成了基层人员的额外负担也并非罕事。
没有从系统和工程的角度提供统计应用的整体解决方案是导致以上问题的根本原因。事实上,企事业统计更需要的是服务于企事业决策的统计指标体系。其理论框架固然重要,但更应建立在对业务充分理解、广泛调研和可行性深入分析的基础上。指标体系的建立不仅涉及统计制度的建设,还必须考虑其可操作性,并将其体现在业务处理系统或信息管理系统中。统计数据的采集应纳入企事业的日常管理流程中,应能够通过业务处理系统或信息管理系统自动生成所要的统计数据,并以面向主题的方式存储于统计数据库中。同时,分析过程所需的数据是对统计数据库灵活查询的结果,它支持数据的不同表式和格式的转化,且分析过程方法“无缝”嵌入在决策支持系统中,统计建模过程可以不透明,分析结果以业务人员熟悉的语言陈述,且能够随数据的不断更新而自动调整。可见,现代统计应用实践需要依托数据库和网络技术,实现从海量数据的收集、存储管理到有效分析的整体解决方案,它无疑是统计与计算机相结合的产物。
总之,海量复杂数据的存储和分析需求,数据库和数据仓库技术、机器学习和统计分析的理论发展和应用实践,以及各学科领域融合发展所形成的异曲同工特点,诞生了数据挖掘这个新兴的应用研究领域。