引言 1988年,我在浙大数学系读书,范大茵教授主讲《概率论》。我曾问她:“全国新生儿的男女比例是51.2:48.8。如果各省的统计结果也一样,是否包含更多的信息?” 范老师说:“如果按同一个概率发生,各省的结果没有更多信息。” 20多年过去了,我才意识到:理论上,范老师的回答完全正确;但现实中,信息量却不相同。
大数据是个流行词,受到了世界工业界的普遍关注。有位老院士曾说:大数据主要的成就,与侵犯">个人隐私有关。的确,大数据在工业界的成功应用并不多。我相信,大数据会对工业界带来极大的改变。但与此同时,在工业界从事大数据研究也是项高风险的工作。多数人可能会铩羽而归。了解大数据不难,难的是不被一些光怪陆离的概念忽悠。如果不想被忽悠,就需要理解其精髓。
有人说,大数据最本质的特征是数据量大,要有PB、EB的量级。为什么一定是这个量级呢?在这个级别以下,用过去的方法就可以有效存储、传输和处理;超过这个量级以后,需要新的理论、方法和思路。所以,数据级别的扩大,催生了新的理论。然而,从应用的角度看,似乎有没有必要:比这个数量级更低的数据分析往往都没有做好——数据挖掘理论出现了几十年,成功的案例也不多。所以,从理论工作者的角度看,强调数据量是有道理的;但从工程师的角度看,过分强调数据量没有多大的道理。
从应用的角度看,数据量是否重要?可以换一种提法:要研究一个问题,10条数据、100条数据和1万条数据有区别吗?在过去,差别不是很大。比如,做线性回归,样本数目比自变量多一个就够了;如果能多几倍,基本上就很充分。采用神经元方法时,样本数比变量多一个数量级也就差不多了。在这些方法中,数据多了也难以发挥再大的作用。
多出来的数据真的没用吗?我的感觉是:多的数据不是无用,而是不会用、难利用。不是个别人不会用,而是普遍性不会用。其中的奥妙何在呢?
学过概率或统计理论的人都知道:所有的数学理论都基于特定的假设。比如,干扰按一定的概率分布发生、自变量检测误差可以忽略等。在很多时候,我们总是想当然地认为,这些条件是天然成立的。于是,人们习惯于按照书本上的做法,直接进行分析。
但现实中,理论的假设却往往不成立。分析工业过程或设备时,数据的分布往往很不规范;随意的假设往往会带来错误的分析结论。再回头看看本文开头讲到的人口问题:我们假设孩子的性别按一定的概率发生。然而,这只是假设。事实上,这些年中国人口的出生比例就发生了很大的变化,而且各个省份也不一样。
如果严格地进行统计研究,首先需要确认的就是:某个随机现象是否依照固定的频度发生。只有这个条件满足了,‘概率’的基本条件才能满足。后续的分析才能有靠谱的结果。
所以,我们需要更多的数据来验证一些基本假设。这时,数据量的要求就会大大提升。另外,当数据的信噪比较低时,对数据量的需求也会大大上升。笔者曾经做过一个研究,发现分析一个要素的作用,需要2000~20000个数据。
这样,多出来的数据就有用了。用好多出来的数据,才能保证分析的正确性。
有人或许要问:像神经元这些非传统方法,并没有对数据提什么要求啊?的确,神经元方法没有明确提出什么要求。但是,谁又能保证其结果的可靠性呢?其实,采用神经元方法也有个潜在要求:建模数据充分,且未来数据的分布不变。‘分布不变’的要求其实很高:不仅是数据分布范围和密度不变,还包括变量间的关系不变、干扰的分布不变。这种要求,在现实中是难以验证和说清楚的。于是,结果的可靠性也就说不清楚。这对实际应用是非常不利的。
既然多出来的数据是有用的,能否把‘大数据’的数量要求再降低一点呢?笔者认为:如果需要大量的数据才能完成特定分析任务,并且需要新的思想和方法,都可以看做大数据的范畴。过于强调数据量是没有必要的。
刚才的分析可能有点理论化。下面再具体解一下。
本人长期从事工业数据建模活动。深知分析结果的可靠性对应用至关重要。分析结果的可靠性与实用价值,常常是硬币的两面:如果正确的发现能创造出巨大的价值,错误的认识也必然导致重大的损失。所以,价值越大的分析结果,对可靠性的要求往往越高。而这恰恰是数据分析的难点所在。
我们希望有更多的数据,目的是获得可靠性。
有了大量的、分布区域广阔的数据,不仅可以验证数据的合理性,还可以合理地组合数据,以满足特定的分析要求,以达到特定的分析目的。同时,数据多了,还可以通过分析结果的相互校验,多角度、全方位地分析特定结论的正确性——这一点,是小样本数据根本做不到的。尤其是数据误差相对较大或者相关因素较多时。
说到这里,我又想起来大数据的另外几个特征:“速度”、“多样性”“低价值密度”。从应用的角度看,这些特征的意义似乎也不是很大。
1、产生速度快。增大了分析的难度,对应用带来的好处却不多,故而仅仅是在理论上有价值。
2、低价值密度。也增加了分析的难度。但对应用来说,这是一种现象,似乎不值得强调。事实上,为了获得可靠的结果,个别的‘小数据’往往才是分析大数据的关键钥匙。而且,发现具有‘黑天鹅’性质的小数据,往往是研究大数据的重要目的。
3、所谓‘多样性’,指有很多非结构化数据。也是增加理论难度、对实用无正面影响的因素。在现实中,数据分布越广越好,便于从不同角度和视野确定结论的可靠性。所以,我宁可把‘多样性’理解为数据分布的广泛性,而非数据形态的多样性。
从应用的角度看,笔者更欣赏‘数据科学’的概念:综合利用数据分析、模型计算和领域知识来解决实际问题。
对工程师来说,分析数据的目的是解决问题。为了达到分析的目的,应该采取一切有利的方法、收集一切有用的证据,不应该将自己限制在某个特定的理论方法上。我们期望大数据,却也喜欢小数据:我们喜欢完整的、真实的数据。IBM对4V理论进行了矫正。在笔者看来,这是很有道理的。
综上所述,笔者认为:将大数据理论用于工业领域时,不可执着于‘原教旨主义’的认识。我们关注大数据,是为了创造价值,而不是追赶时髦的理论和领域。从这种意义上说,制造企业研究大数据,应该特别强调‘工业’二字,以区分现在流行的、以商务为主的大数据理论。
‘数据挖掘’理论出现了几十年。但在工业界的成功应用并不多。笔者认为:重要的原因之一是缺乏一个合适的数据分析处理理论。笔者认为:用好工业大数据需要关注三个要点:
1、可靠性。可靠的结论才能用于工业实际。在本人看来,所谓可靠性,包含精确性、适用范围的广泛性和适用范围的可知性。现实中,绝对的可靠是不存在的,我们只能追求相对的可靠。相对的可靠,可以由尽量多的、独立的知识或分析结果来支撑。要做到可靠,就不能仅仅满足与‘相关性’,而是要尽量关注‘因果性’。这一点,工业大数据与商务大数据的理论是矛盾的。同时,可靠性要求我们尽量使用传统的、有坚实理论基础的统计方法——只是不能盲目适用这些方法,要关注对适用条件的验证和构造。
2、超越性。新发现的知识一定要超越人的认识,否则就没有价值。在商务活动中,人的认识相对模糊,大数据研究容易得到超越性的结果。在工业领域,人们对物理对象的了解往往非常深刻。肤浅的研究很难超越人的经验。这时,要让新知识超越人的经验,往往要以精确定量为基础的。我们不宜将发现不同于经验的知识作为研究目标:在工业领域,与专家认识不同的结论多数是错的。有例外的话,也往往是量变引发质变造成的——这种现象,正是以结论的精确定量为前提的。
3、嵌入性。大数据的应用必须嵌入合适的流程。一般来说,仅仅满足于发现知识并不能创造价值。在工业应用中,常见的做法是将新发现的知识嵌入到生产和管理流程中去。最好用模型为载体来实现,促进流程的智能化。众所周知,商务大数据的应用一般要结合新的商业模式。这一点,工业大数据与商务大数据是相通的。