生活中数据库系统的实际例子数据科学
鄂维南
数据科学的基本内容
大数据时代在科学领域里的表现是数据科学的兴起。常常听到有人问:多大才算是“大数据”?  “大数据”和“海量数据”有什么区别?其实根本没有必要为“大数据”这个名词的确切含义而纠结。“大数据”是一个热点名词。 它代表的是一种潮流、一个时代。它可以有多方面的含义。“海量数据”是一个技术名词。它强调数据量之大。 而数据科学则是一个学科、 一门新兴的学科。      为什么要强调数据科学? 它和已有的信息科学、统计学、机器学习等学科有什么不一样?
作为一门学科, 数据科学所依赖的两个因素是数据的广泛性和多样性, 以及数据研究的共性。 现代社会的各行各业都充满了数据。 而且这些数据也是多种多样,不仅包括传统的结构型数据, 也包括象网页、文本、图像、视频、语音等非结构型数据。正如我们后面将要讨论到的, 数据分析本质上都是在解反问题, 而且是随机模型的反问题。所以对它们的研究有着很多的共性。比方说自然语言处理和生物大分子模型里都用到隐式马氏过程和动态规划方法。其最根本的原因是它们处理的都是一维的随机信号。 再如图像处理和统计学习中都用到的正则化方法, 也是处理反问题的数学模型中最常用的一种手段。所以用于图像处理的算法和用于压缩感知的算法有着许多共同之处。 这在新加坡国立大学沈佐伟教授的工作中就可以很
明显地看出来。
除了新兴的学科如计算广告学之外, 数据科学主要包括两个方面: 用数据的方法来研究科学和用科学的方法来研究数据。 前者包括象生物信息学、 天体
信息学、数字地球等领域。 后者包括统计学、机器学习、数据挖掘、数据库等领域。 这些学科都是数据科学的重要组成部分。 但只有把它们有机地放在一起,才能形成整个数据科学的全貌。
用数据的方法来研究科学,最典型的例子是开普勒关于行星运动的三大定律。
开普勒的三大定律是根据他的前任,一位叫第谷的天文学家留给他的观察数据总结出来的。表9-­‐1是一个典型的例子。这里列出的数据是行星绕太阳一周所需要的时间(以年为单位),和行星离太阳的平均距离(以地球与太阳的平均距离为单位)。从这组数据可以看出,行星绕太阳运行的周期的平方和行星离太阳的平均距离的立方成正比。这就是开普勒的第三定律。
行星
水星 0.241 0.39 0.98
金星 0.615 0.72    1.01
地球    1.00    1.00    1.00
火星    1.88    1.52    1.01
木星 11.8    5.20 0.99
土星 29.5 9.54    1.00
天王星 84.0 19.18    1.00
海王星 165 30.06    1.00
表9-1:太阳系八大行星绕太阳运动的数据
开普勒虽然总结出他的三大定律,但他并不理解其内涵。牛顿则不然。牛顿用他的第二定律和万有引力
定律把行星运动归结成一个纯粹的数学问题,即一个常微分方程组。如果忽略行星之间的相互作用,那么这就成了一个两体问题。因此很容易求出这个常微分方程组的解,并由此推出开普勒的三大定律。
牛顿运用的是寻求基本原理的方法,它远比开普勒的方法深刻。牛顿不仅知其然,而且知其所以然。所以牛顿开创的寻求基本原理的方法成了科学研究的首选模式。这种方法在上个世纪初期达到了顶峰:在它的指导下,物理学家们发现了量子力学。原则上来讲,我们日常生活中所碰到的自然现象都可以从量子力学出发得到解决。量子力学提供了研究化学、材料科学、工程科学、生命科学等几乎所有自然和工程学科的基本原理。这应该说是很成功,但事情远非这么简单。正如狄拉克指出的那样,如果以量子力学的基本原理为出发点去解决这些问题,那么其中的数学问题太困难了。所以如果要想有进展,还是必须做妥协,也就是说要对基本原理作近似。
再举另外一个例子,表9-­‐2中形象地描述了一组人类基因组的SNP数据(Single    Nucleotide    P olymorphism data)。一组研究人员在全世界挑选出1064个志愿者,并把他们的SNP数据数字化,也就是把每个位置上可能出现的10种碱基对用数字来代表,对这组数据作主组分分析,就可以得到图9-­‐1中的结果。其中横轴和纵轴代表的是第一和第二奇异值所对应的特征向量。这些向量一共有1064个分量,对应1064个志愿者。值得注意的是这组点的颜所代表的意义。可以看出,人类进化的过程可以从这组数据中通过最常见的统计分析的方法,即主组分分析,而展示出来。
主组分分析是一种最简单的数据分析方法。它的做法是对数据的协方差矩阵作对角分解。
SNP1 SNP2 ……  SNPm
志愿者1 0    1 0
志愿者2 0    2 (1)
志愿者3
.
.
.
志愿者n    1 9 (1)
表9-2  SNP数据的示意图:n=1064,m=644258,0,1,… ,9分别代表碱基对是AA,AC,CC,… 。参见:Jun Z. Li et al, "Worldwide human
relationships inferred from genome-wide patterns of variation",Science, 22, Feburary,2008.
图9-1: 对SNP数据作主主份分析的结果告诉我们人类进化的过程。
这里横轴和纵轴分别表示最大奇异值和第二大奇异值所对应的特征向量。
此结果系姚远等根据 Jun Z. Li等人文章中的结果重新制作。
这样的问题,如果采用从基本原理出发的牛顿模式,则基本上是没法解决的。而基于数据的开普勒模式
则是行之有效。尽管牛顿模式很深刻,但对复杂的问题,开普勒模式往往更有效。开普勒模式最成功的例子是生物信息学和人类基因组工程。正是因为它们的成功,材料基因组工程等类似的项目也被提上了议事日程。同样,天体信息学、计算社会学等等也成了热门学科。这些都是用数据的方法来研究科学问题的例子。图像处理是另外一个典型的例子。图像处理是否成功是由人的视觉系统决定的。所以要从根本上解决图像处理的问题,就需要从理解人的视觉系统着手,并了解不同质量的图像,对人的视觉系统产生什么样的影响。这