标签:
杂谈 |
【静.沙龙主题分享】第4期 产业形态的反思(上)——论码农
主讲嘉宾:高博
主持人: 中国经济网经营顾问杨静
http://s5/mw690/001DiJkIzy6L5GkGsD254论大数据" TITLE="【高博】产业形态的反思(上)论码农嘉宾介绍:
高博 EMC中国卓越研发集团首席工程师,EMC也是领导云计算、大数据服务的主流国际厂商之一。高博的译著包括《信息简史》、图灵奖作者高德纳的《研究之美》和布鲁克斯的《设计原本》,以及Jolt大奖作品《元素模式》等,近年来,出版翻译作品近百万字。
【8月7日静沙龙主题分享精彩回放】论码农
【高博】今天的主题是产业形态的反思。对于这个主题的反思,我其实是对一个职业的俗称开始的。
我从4岁开始学习编程,17岁考入上海交通大学计算机系,然后毕业以后也一直从事软件相关的工作。我注意到,大家对于程序员,或者是软件工程师这个职业有个有趣的昵称,或者俗称,叫做码农。这个称呼很有意思的,按说,如果严格说来,信息产业应该属于服务业,或者至少也是工业(否则为何叫工程师呢?),但是这个职业却被人称为码农。
大家是否可以说说,自己对于为什么被称为码农,为什么觉得它像农业,发表一些意见和看法?我一开始觉得,可能是在嘲讽这个行业的收入低。但是我自己一直在这个行业里,所以很清楚的是,比起真正是工业的制造业,程序员的收入一直是高的。入行的标准,即使是在我的家乡这个三四线城市,也在月薪2500元以上。而且很重要的一点是,只要比行业平均技能水平高一些,收入的增长也体现得比较明显。以iOS开发为例,刚刚火起来的那阵子,可以说是一人难求,月薪水平高达9000以上(非京沪广)。所以,我感觉应该不是针对收入来说的这个俗称。至于说苦,你说说制造业苦不苦,还有餐厅的服务员苦不苦,为什么也没有人称他们为农呢。我说说我的理解:其实,之所以这个职业群体被称为码农,主要是由于他们的生产方式,更像农业。
我们反思一下,现在通行的产业形态划分标准的实质。农业:Agriculture,词根是agri,意思是田地,不仅仅是指种植业,而是包括林牧渔等。它的特点有几个:要靠土地资源和水资源,就是所谓的靠天吃饭;从产品的角度来看,它也有几个特点:产量不固定,产品形态不一;从生产者的角度来看,农业的收获主要取决于劳动者个人的经验。
程序员之所以被称或自称“码农”,我认为有两个方面的原因,一个是他们的生产方式和农民比较像,农民依赖种子土壤天气等外界因素,中国的程序员所使用的绝大部分技术工具理念也都来自国外,他们和农民所做的一样,通过自己的劳动和外界的资源来获得收益,自身的创造有限。另外一个方面的考量是编程这个活其实挺苦,和种地一样。
农业,传统上认为是种植业和养殖业,只要是涉及这个的,就叫农业。但是现代农业真的还能说是农业吗?其实农业已经变得不太像农业了。现在的农业很普遍地渗入了工业的影子:工业化的育种、播种、灌溉、施肥、除草虫、收获。但反观之,我们认为工业和信息产业,前者是以机械力的应用为标志,后者是以能量的定向分配为标志的。按说,信息产业应该是比较高级的阶段,但是,它却表现出来很多农业的特点。比如说,个人的经验非常重要,比如说,协作起来有诸多的不便之处。比如说,资源的密集程度,比如说,研发成功的不确定性,等等。
再打个比方,你觉得软件开发的工作更像是文科还是理科?从它的基础学科来看:离散数学、物理学、电气工程学等来看,它是不折不扣的理科。但是,从另一个方面来看,它又特别特别地像文科,比如对于同一个需求,可能1000个程序员有1000种甚至5000种不同的写法。,对于同一个话题,1000个诗人能写出5000首不同的诗吗?在工业设计的领域,这样的情况就少很多了。
程序员里有一句话:不要重新发明轮子,事实上,在程序员的工作中轮子是每天都被发明n次的,几乎每一段小程序里,都需要做检索、排序等routine。而Infosys这样的公司,我反而觉得更像产线工人,不像农民。我没有说农民是好还是不好,我只是说,程序员的工作更像农民一些。以往的产业形态划分,主要的依据是什么?仔细想想,其实是工作对象。工作对象是自然资源:农业;是机械:工业;是信息处理设施:信息产业。这样的划分,科学吗?一定程度上,是科学的,因为这样子我们基本上知道在某项产业里工作的人,是在和什么东西打交道。然而,就像是@思彤 同志不由自主地说出来的那样,人们对于产业形态划分,除了工作对象不同之外,还有一个生产方式的固有印象。比如,没有多少创造性的简单重复劳动,就是农民(农业工作者)。其实还有一些附加在农业工作者身上的印象,就是个人的经验非常重要,缺乏方便的协作,资源的密集程度高(附加价值低),研发成功的不确定性高等。我们看到,这些印象,基本上就是程序员被称作码农的最重要原因。
但是,前面也说了,今天的农民,反而可能并不是这样在生产了。所以呢,我也研究了一些产业形态变迁方面的资料,发现现在这样的产业形态划分的维度太过单一,因而是不够科学的(一定程度、一定意义有科学性合理性,但是不够)。这样不够科学的产业形态划分其实造成了一些不好的后果。比如,年轻人感觉农业相关的工作不够先进,所以不太愿意从事相关的工作。再比如,现在靠概念炒作的现象严重,和新产业只要靠一点点,其实没有什么技术含量就去骗经费、投资。其实从历史的角度来看,每一种产业形态都有几个明显的阶段。
第一个阶段,可以称为探索阶段,这个阶段,没有成熟的基础研究和理论指导,不清楚规律和方向,工作具有较大的盲目性。
第二个阶段,可以称为英雄阶段,这个阶段,有若干神话、奇迹般的成功案例出现,很多思潮和理论出现,其中大部分是错误的,但是人们视而不见,资本疯狂程度很高。
第三个阶段,可以称为冷静阶段,神话破灭,大批相关实体破产,但是正确的理论和反思开始出现。少数坚持了正确方向的企业开始做大。
第四个阶段,可以称为普及阶段,相关的产品和服务进入普罗大众的基本生活,融入成为日常生活的一部分,甚至人们都难以想像这样的产品和服务不存在时,之前的人是怎么活下来的。
这是我基于对现实的观察,以及对于历史资料的研究得出来的阶段划分。有一定的主观成分,但不完全是臆想。这说明我的研究还是有价值的,和专业机构的研究成果可为印证。但是我想说的是,产业形态的划分,其实也应该参考这个。
我的主题结论是:产业形态的划分,要结合具体项目所处的阶段。比如现代农场中种植玉米,就是处于农业的普及阶段。比如大数据,就是处于信息产业的英雄阶段。人工智能,还处于信息产业探索阶段。哪个产业形态,不能光看一个项目处于哪个产业,还要看它处于哪个阶段。这个对于研发、投资、商业运作的规划,是非常重要的。
我说几句题外话,第一,产业形态可能会发生形态变迁;第二,我发现现在中国的企业名称很混乱,这样不好。比如农业产品在作为工业机械时,可能就要讨论它的工业形态定位了。一个企业,明明是做产品销售的,偏要叫什么什么技术有限公司,这样不好。或者也是和今天的主题相关的,应该根据它在产业形态中所处的位置,和企业经营的内容来规定它的名字。比如,处于探索阶段进行基础研究的,可以叫做研发有限公司,或科学有限公司;处于英雄或冷静阶段进行试产或量产的,可以叫开发有限公司或技术有限公司;而如果根本不是做研发的,则只能叫销售有限公司。中心思想还是要在产业形态之外,加一个阶段坐标。对于如何划分阶段,则可以进行进一步的量化和研究。目前,软件开发这个领域,我认为还没有到普及阶段。到了普及阶段,应该是小学生也会编程,八十岁的老人也会编程,就跟现在的100以内的四则运算一样,至少完成了义务教育的人应该都多少掌握一些。
对于产业形态,我今天进行了一些反思。发现目前对于产业形态的划分实质上主要是根据工作对象来进行的,可是由于历史原因,造成了一些不完全科学的印象,即产业形态似乎直接决定了它所处的阶段,这不符合事实,不够科学。每个具体的项目,都处于特定产业形态的特定阶段。我提出,每种产业形态都需要经历的四个阶段,即探索、英雄、冷静和普及阶段。认识某个项目所处的阶段,有利于其研发、投资和商业运作的规划,避免了仅按其所处的产业形态来规划而带来的盲目性。
【8月7日静沙龙主题分享精彩回放】论大数据
【高博】我感觉大数据其实不是一种独立的产业形态,大数据从诞生之日起就不是盲目的。其实是非结构化数据处理技术的民间叫法。如果一定要套用我刚才说的这个阶段理论的话,我个人认为现在它还处在英雄阶段。普通百姓还不是说能直接享受到它的好处
(@杨静lillian)昨天北航计算机学院的院长也强调,其实目前数据处理的算法跟20年前没太大区别,之所以叫大数据,就是数据量变得巨大,另外计算能力更强大了。
【高博】这个说法我部分同意。但是算法的改进还是很明显的,就是从结构化向非结构化这一部分,是革命性的。结构化数据,就是你在输入数据之前,必须给我做规整化,按我要求的格式来输入,而非结构化就是可以保留原始数据的所有特征。以前算法处理不了非结构化的数据,至少不是为非结构化数据而设计的。而现在算法本身引入了开放性,就是会由算法来适应数据,而不是让数据来适应算法。这里面革命性的算法包括当前很火的深度学习,也是其中最典型的一个。Hadoop和Spark是工具。这些算法都是上世纪60、70年代提出来的,但是有了算法,和实现出来,真的差太多。算法能在实用规模的数据上跑,要多方合力。Hadoop的核心算法叫做MapReduce,说起来也很简单,就是先拆解再归并。但是能想到并做出来形成通用的数据处理框架,就真的是天才了。从我的工程实践上说,MapReduce甚至比深度学习更重要,是属于在程序员这里达到了普及阶段的工具产品。深度学习,对我来说更多的还在黑箱里,我知道一些运作方式,但是真的不能完全掌握。MapReduce和深度学习其实都是数据处理的手段,深度学习的准备工作,是要用MapReduce来做的(或用类似的算法)。MapReduce最开始是hadoop的一种核心编程模型,主要用于处理静态数据,目前这种模型正逐渐被spark取代,解决实时数据流的处理问题。深度学习和大数据并没有必然的联系。但从实践上说,这两者基本上应用场景是有很多重合的。大数据的数据本身和处理大数据的技术只是进行深度学习的支撑和手段。
大数据不因其大,而是它的任何一个profile都具有权重相似的重要性。用信息学的术语说,就叫做信息量大。大数据厉害的地方就在于,你可以用任意的方式向我提供数据,并以任意的方式向我查询你想要的结论。这是不是有点儿像人类的思维了?至于底下是以怎样的方式学习的,又是以怎样的方式把学习的结果计算输出的,这个你不用关心,其实就是智能化的表现。
如果说一直都在关心算法进展,当然会觉得没什么新鲜的,甚至觉得大数据只是个商业炒作的概念都OK。它的需求是在多年电商运营的基础上提出来的。我一开始就说了,大数据不是无本之木。只不过最近这几年,大量的、原来基本上只在纸面上或是小范围内应用的算法被大范围应用,并推出了一些成功案例而已
(@杨福川) 深度学习的目的不是处理和分析数据,而是通过处理和分析数据实现人工智能。
【高博】大数据和人工智能的关系,就像,怎么说呢,学习和考试的关系。你学习是为了学到更多知识,还是为了考试拿高分。这个其实更多是同一个问题的两个方面。
大数据就是非结构化、大信息量数据的商业化称谓。这是我个人的看法。多少算大信息量数据?不是要很多信息,而是要大信息量数据,就是难以简化的数据、充满意义的数据。
(@陈新河)有种说法是100万条数据以上,还有一种说法是1PB以上。我个人对以上两个量化指标持否定态度。再重申一下,大数据就是这个时代的标签,但这个标签容易被“大”搞晕,所以99%的人都关注“大”了,而忽视了数据。如果当时叫宏数据、M数据,可能也就没有“大”啥事了!
【高博】新河兄,那是数据量,不是信息量。要完整地回答这个问题,要参考所罗门诺夫的逻辑深度相关的论文。简化版本的话,可以看《信息简史》第13、14章。这么说吧,可预测数据是没有信息量的,完全随机数据是信息量最大的。平时使用7步以内的组合可以计算出来的结果,是我们平时的数据量、信息量。而大数据,应该就是指需要7步以上,又不是随机数据这样的数据。什么是7步以上的数据?比如说,你知道我31岁,你又知道张三比我小2岁,你经过1步计算可以得出张三的年龄;再比如,你知道我31岁,你又知道张三比我小2岁,你又知道28岁以下的人可以过青年节,你经过2步计算知道张三不可以过青年节。如此,你的数据维度足够丰富,以至于需要计算7步以上才可以得出结论的都在里面,说明你的数据是大数据。否则,有1亿条记录,你也还是只能取得一些非常浅薄的结果,算不上是大数据。
人类的自然计算能力是比较低下的。如果要给一个人设局,一般设到7层,基本上就百发百中了。很多骗子就是这么玩的,就是说通过给他特定的信息来引导他的行为。告诉你银行帐号被盗,再给个假号码让你去打,等等。一般人,在这样的套下到7层的时候,就一定会上当了,这是人类的自然计算能力不足所限。
但是计算机是可以处理这样的数据的。真正的大数据处理算法,应该能够应付,因为它会发现印证不符,会放弃计算结果。所以在这里,计算智能一定是超越人类智能的。我是说在精确性方面。人类的智能并不完全是基于理性的。这一点和计算机的机械计算,原理上就不同。总体来说,计算机的行为还属于可预测的范围,所以说人类应该不至于直接被计算机搞定。(当然,这可能是我在这一行业太久了,思维僵化的缘故)。
(@杨静lillian)昨天跟刘玉超聊到让计算机参加高考的事,他说理科考试,计算机绝对能得高分,但写作文就不成了,肯定能看出是机器写的。而且,考试机器还是能研发出来,但情感机器就比较难。所以,综合成一整个人类智能比较难,但单项都比较容易超越。
【高博】所谓算法痕迹,永远有格式、有套路(虽然不一定是简单的),但还是能看出来有。除非那一边控制计算机的也是一个高手,一个人。
就是这样的数据足够丰富,可以回答需要7步以上计算才能得出的结论,其实更严格地说,还需要要求输出和输入的是异构的。否则,如果只是做相同结构运算,那数据还是没深度。比如,你的输入只有年龄,我也只能回答年龄相关的结果,这还是不行。必须是你输入了很多信息,我能根据这些信息回答各种各样的问题。这才是大数据。
实时计算、并行计算、对输入的要求弱化。这些应该是算法革命的领域。
(@白硕) :拧麻花。
(@杨静lillian)你想大数据本身就能处理7步以上了,再能拧麻花,那不比人聪明么?
【高博】想想现在的国安系统吧。你在QQ群里说了点什么,马上你的个人信息全出来了,这就是大数据。你想想,你暴露出来的是什么?QQ号。然后它找到你的关联资料,你可能并没在QQ里登记,而在另一个地方登记了你的QQ号。这样子,又进到了另外的数据维度。就这样靠点状连接。你的个人信息维度就越来越全,然后你瞎填的资料用印证排除法滤掉。想想,现在的QQ,可以用非常高的准确度来判断出一个你要加的人和你可能是什么关系,然后建议你加到某个你自定义的群组里去,这就是大数据。我一看,好家伙,小学归小学,中学归中学,它全知道了!
总之,大数据就是非结构化的大信息量数据的商业称谓。每个信息都有意义,或可相互印证,或可相互排除,反正不能简单地扔掉。
大信息量,不是大数据量,这个可以以“7步“为界。
我们经常会说某某高层随口的一句话,“信息量很大”,就是这个意思。而我等小民说了一万句话,也没啥信息量……说白了,就是从给定的数据里能挖出来的东西越多,信息量就越大。1000条数据,也可以是信息量大的,10亿条数据,也可以是信息量不大的。这样的比喻,应该有助于大家理解大数据了吧?
知识就是力量,但数据还不直接是力量。要从数据变成知识。这里面要解决的问题,其实说到底,是一个知识获取和一个知识表达。算法也不是力量。人才是力量。什么都得靠人想、靠人做——发明和运用算法的人。
如此,今天的话题从码农谈起,最终又回归码农。
【群友互动区】
(@白硕)人的短时记忆对象个数上限是7加减2,历届常委的个数是7加减2,大数据的推理深度上限是7加减2,天,这不是巧合吧。下套受骗的原因是人不能容忍不确定性,一定要靠自己的典型经验来补足。那七步里如果引入一半靠典型经验补足的推理,就谬之千里了。比如描述一个人,用了三句还推断不出ta的性别,可能就要假定是男的了。
@思彤 人的综合智力以及以此为基础的综合能力,是普通机器或现有高级机器很难超越的。
@秦继荣 (具体项目在产业形态内的定位)可以用成熟度理论来研究。
@胡晓锋 这期沙龙很有信息量。我觉得大数据的核心是因为它提供了一种解决复杂系统问题的新途径,而不仅仅是更好的数据分析挖掘方法。复杂系统的复杂性(例如非线性,结果不唯一性,涌现性,适应性,不确定性等)是现有数学建模方法难以解决的,而大数据则绕开了因果这个最难的数学关系,找到了一种间接的途径。所以讨论大数据,应该从复杂性开始,也就是事物的本质开始,而非从数据多少开始。数据大,条件才成立,而现在数据突然可以做到大了,解决复杂系统问题第一次有了曙光,这就是为什么大数据突然得到重视的原因。
【静点评】这期沙龙中高博独创性地将IT产业划分为探索阶段、英雄阶段、冷静阶段和普及阶段,并认为大数据正处于英雄阶段、人工智能处于探索阶段。根据沙龙研讨,可推导出信息量大,非结构化数据的算法革命 进化堆叠快速的计算能力,共同促成了大数据的革命。也就是说,大数据不完全是炒作,而肯定能给人类的决策进行理性的引导。而从大数据革命走向人工智能革命,还需要在产业形态上大的跨越。在第二届中国指挥控制大会上,单志广也特别指出,现在连三线城市也在搞智慧城市,实际上很多云计算基地和智慧城市,就是包装了一把的房地产项目。所以,产业形态的确需要理性地反思。
高博还对大数据的特点、工具、算法进行了分析,认为信息量大才能称作大数据。而信息量的量化指标,对于大数据而言,他认为需要“7步”以上计算的数据才能算作“大”数据。他的思考让我们观察“大数据”多了一个维度,可以深度透视大数据。而不是看热闹。
正因为高博没有事先准备,所以这次沙龙真正是直播。各位群友的参与热度空前高涨。对大数据的定义进行了激烈思辨,着实精彩。例如白硕老师对于异构计算的妙解——“大数据”拧麻花……在这里特别感谢此次参与讨论的各位群友:@思彤@张书新@杨福川@陈钢@陈新河@白硕@刘江@秦继荣@刘玉超@胡晓锋@苏湘迅 等。

加载中…