双核,四核,八核,面对近几年cpu升级的节奏,可能连我们这样成天浸泡在IT行业的工程师都Hold不住。摩尔定律告诉我们,计算机每18个月成本会减半,性能会加倍。虽然我不太信这一套,但是不得不说,目前人工智能的发展速度状态,确实日新月异。而同时,有一个问题可能一直缠绕着我们,未来的计算机,甚至IT行业,会是什么样子?

        计算机设计之初,是为了解决人类的问题,但是计算机的逻辑和人的逻辑是不一致的。人是一个模糊智慧体,在记忆速度,运算速度等方面,远差于精确智慧体--计算机。然而,在对象匹配,容量等方面,却完胜计算机。比如,计算机可以比人更快的算出93的五次方,而面对一个人脸时,人会迅速判断出是否见过此人,计算机却望尘莫及。长期以来,为了解决人类的问题,计算机不停的提高运算频率,搭配不同软件来从事人类为它设计的工作。在这个过程中,计算机的高运算特性,完成了很多人类无法完成的事情,提高了价值产出的效率和速度。比如,对一条流水线的运作、监控和管理,我相信专业计算机会完成得更好。
        
        可能大家还记得图灵对人工智能的定义,从某种角度来说,计算机的终点,就是人工智能,即实现跟人脑完全相同的思维模式和能力。我想这也是很多科学家或者公司的设计目标。然而事实上,为了产生更高的生产力,计算机在目前这个阶段,还在拼命发展着自己的优势,即上面提到的:精确、快速、运算。所以结果就是目前大家看到的不停更新的cpu核心速度和工艺,以便为各级使用者产生更多的价值、金钱、利益。
        
        然而这种发展总有转变,因为当一种事物发展所作出的努力无法得到合适的回报时,或者达到设计目标时,就会产生瓶颈。目前云技术的兴起就代表了这种转变。这些年,越来越多的人开始关注“云”。“云”其实并不是很新的概念,它在互联网诞生之初就存在,只不过那时没有如今优秀的网络及资源支撑。如今,人们发现,单台计算机速度再快,也已经无法满足某些领域及行业的需求。比如iPhone的Siri技术,如果没有大型数据库、分析源,及互联网的帮助,Siri可能没有办法更好的了解你需要什么。Siri,就是人工智能雏形。        
        
        所以,在未来一段时间,当更多核、更快速的cpu被开发出来的同时,可能有一部分公司,或科学家,在关注,如何让计算机更像人,更了解人,如此才能为人类提供更好的服务。对,当人人富足时,生产力不再那么受人瞩目,大家会越来越在意,自己是不是过得舒服,这就是对“服务”的需求。
        
        让计算机思考得像人,并不是那么容易的事情。宇宙花了45亿年孕育出地球,花了700万年让人类进化得不像其他动物,如此便让诞生不过几十年而已的计算机超越,这不像是合理的节奏。我们不妨来分析下我们是如何形成的,以便我们后面的工作。
        
        地球生命诞生之初,我们可能会问,为什么不是一块普普通通的石头被进化,而是一些类蛋白质,类细胞的物质被进化。那么我们不得不关注下两者的特性:石头,在我们的概念中,它就是死的,很难改变。而最初的生命体,却有如下不同:
        1.生命体会变异,不同的环境,导致生命体产生形形色色的变异,而漫长的时间,让生命体拥有一个非常巨大的样本,让自然可以在这个大样本里面挑选自己需要的个体。
        2.在上述随机大样本中,自然制造了死亡,当不符合条件时,就会被淘汰,其特征将不被存留。
        3.在上述随机大样本中,并不是稍不符合要求的就会死亡,自然会有存活分数,以保证某些特征在其他特征不符合要求的情况下依然得到保存。
        4.当某个样本有理由存活时,它能够复制自己的特征给下一代。
        所以终上所述,进化四要素:随机大样本,死亡条件,存活分数,复制机制。
        
        为了理解上述说明和计算机的关系,我举两个例子。
        
        第一个例子,假定我们编写一段电子宠物的程序,在我们的程序中,有一亿个小鸡(大样本因素),每个小鸡,每天有24个小时的活动时间,每个小时,它们可以选择执行如下一种动作(随机因素):
        1.吃饭
        2.啄石子
        3.玩耍
        4.打架
        5.晒太阳
        6.飞翔
        每天,我们会给每只小鸡评一次分,除了吃饭2分,啄石子1分外,其他0分(存活分数)。那么我们可以算出来,每天满分是48分。每天排名最后10%的小鸡将被淘汰(死亡条件)。存活下来的小鸡,第二天的单数小时里,做的事情必须是昨天前半天对应时间做的事情。即第一小时做昨天第一小时的事情,第二小时做昨天第四小时的事情,第三小时做昨天第六小时的事情...(复制机制),相当于,当一个小鸡存活下来,会在今天的一半时间里做昨天的事情,以保证正确的决定被遗传下来。
        
        当这个程序执行下去,到一定时间,我们会发现,存活的小鸡,基本都在做两件事,吃饭和啄石子。当运行到最后,因为所有小鸡分数相等而无法产生淘汰者的时候,所有的小鸡,所有的事情,都在做同样一件事情,就是吃饭。对,它们进化了。
        
        第二个例子,我们找一亿块单片机,它们都具有一个输出io连接1个LED。我们知道单片机执行的是汇编语言,汇编语言到最后其实就是一个个数字存在单片机的ROM中。我们假定单片机初始化完成后,会执行一段自由代码,这段代码完全由随机数发生器产生。那么这段代码很有可能执行到一半的时候执行不下去,即死机了。当死机了时,我们让他重启继续运行。我们假定单片机的ROM像铁电一样是可读写可断电存储,自由代码产生后,即便死机,上次产生的自由代码还是会存在ROM中,并被本次执行。当然,死机那句我们就不保留它了。
        
        当这些单片机运行了足够多的次数时,即死了足够多次时,这些单片机的单次运行时间会越来越长,并且,某些单片机还能凑巧点亮io连接的LED。对,他们也进化了。        
        
        在让计算机模仿人的事情上,自然给我们出了很多的难题。生物的进化,最开始的唯一的死亡条件就是吃饱肚子,不被别的生物杀。然而,奔着这个目的去,却创造出如此聪明的人类,这不得不说是个神奇的结果。上述四个因素,对于计算机而言,各个都是难题。
        
        首先,自然这个随机大样本,太大了。自然花了那么多年创造出生命和人类,这中间死了多少短脖子的长颈鹿和不会游泳的鸭子,谁也算不清楚。而计算机,再快的运算速度,没有办法为统一的死亡条件产生巨大的样本。
        其次,死亡条件和存活分数各不一致,浏览器是为了让人浏览信息,焊接机器人是为了焊接,目的太不一样。
        再者,离开工程师,计算机很难进行自我复制。
        
        虽然,这事情看着很难,但是还是有人做出了努力。比如,云服务器对大数据分析的积累(如Siri对问题和发问习惯的积累),实际上就是计算机的一种进化,所以未来很有可能创造出来一台计算机,运行于云上,具有很高智慧(听着很像《终结者》里的天网)。目前,据说IBM的工程师在创造跟人类神经元类似的计算机。但是我想,即便创造出来,要得到类似于人类DNA这样的基本运行数据,恐怕也要进化很久吧?
        
        说来说去,我们目前的分析有什么用呢?很遗憾,本文得不到什么实质性的结果,仅仅能产生一些启发。
        1.云,可能是目前最接近人工智能的方式,它的模式,好像只培养一个样本,然而却实现了多次死亡、存活和复制。比如我们可以把Siri的每次错误回答都看成是一次死亡。
        2.其实任何一个变化的东西都存在进化,比如一个公司,如果死亡条件是产品烂、质量差,存活分数评判标准是人才多,制度好,那么如果在合理的淘汰下,这个公司将会向好的方向进化。--By Karlno