人工智能未来:软件工程师会不会集体失业
刚刚过去的2015年10月21日,是一个对美国电影迷、科幻迷们来说具有历史意义的一天。在30年前,在那部科幻穿越电影鼻祖《回到未来》(Back to the Future)中,主角马蒂·麦克弗莱(Marty McFly)和布朗博士(Doc Brown)乘坐时光机穿越到的未来,正是这一天。时至今日,影迷们纷纷致敬经典,同时科技界又一次掀起了对前沿科技——人工智能的讨论。
“超人工智能”引发最多争议
在讨论未来工程师会不会被机器取代这一问题之前,首先需要明确的是人工智能的定义以及分类。事实上,自人工智能诞生以来,其理论和技术日益成熟,应用领域也不断扩大。TEEC Angel Fund的几位受访合伙人向记者介绍,根据人工智能的实力不同,目前业界一般将人工智能技术分为三大类:
首先,弱人工智能Artificial Narrow Intelligence (ANI):弱人工智能是擅长于单一方面的人工智能。比如有能战胜象棋世界冠军的人工智能,但是它只会下象棋,你要问它怎样更好地在硬盘上储存数据,它就不知道怎么回答你了。
其次,强人工智能Artificial General Intelligence (AGI):人类级别的人工智能。强人工智能是指在各方面都能和人类比肩的人工智能,人类能干的脑力活它都能干。创造强人工智能比创造弱人工智能难得多,我们现在还做不到。Linda Gottfredson教授把智能定义为“一种宽泛的心理能力,能够进行思考、计划、解决问题、抽象思维、理解复杂理念、快速学习和从经验中学习等操作。”强人工智能在进行这些操作时应该和人类一样得心应手。
再次,超人工智能Artificial Superintelligence (ASI):牛津哲学家、知名人工智能思想家Nick Bostrom把超级智能定义为“在几乎所有领域都比最聪明的人类大脑都聪明很多,包括科学创新、通识和社交技能。”超人工智能可以是各方面都比人类强一点,也可以是各方面都比人类强万亿倍。
“事实上,超人工智能正是为什么‘人工智能’这一话题总能引起业界热议的最重要的原因,同样它也是引发‘人工智能的未来是工程师的消失的还是人人都是工程师’这一争论的本质源泉。”TEEC Angel Fund投资合伙人Jinlin Wang向记者表示。
正方观点:工程师将会消失?
对于未来工程师会不会被机器取代这一问题,Jinlin Wang认为,或许存在这样的可能性。
目前,即使计算机软件不断发展,但是对于工程师而言,一个非常出色的工程师和一个一般的工程师之间的差距也是非常巨大的,这正是硅谷各大公司之间人才战的原因——找到一个好的工程师是很不容易的。但未来,当人工智能发展到一定阶段,机器足够强大到可以独立自发地完成软件开发从架构到前后端等的整体过程,那么,或者到那时人类将不再需要软件工程师。
“目前,硅谷各大公司都十分关心未来软件发展战略的问题,未来5至10年,或许人工智能可以发展到一个阶段,目前仍旧依靠人工出产的软件可以由机器自动完成,”Jinlin Wang表示,“虽然目前,机器能不能强大到设计出更强大的机器我们尚未可知,但是一旦在未来做到了这一点,那么工程师或许就将集体消失在历史舞台了。”
对此,Jinlin Wang还强调,机器自动完成软件设计虽然目前看起来有些不切实际,但是并不意味着没有这样的可能性。“目前,随着计算机计算能力等性能的不断提升,以往很多看似不可能的事情正在变为现实,比如,以往纯手动完成的日程安排等工作,在未来有望借助机器自动完成——硅谷某家做Scheduling Software的创业公司正在致力于用机器解决这样的事情,未来或许借助于人工智能软件,公司可以自动化地安排和调整日程计划,假设公司的一个员工突然生病了,两秒之后软件可以重新把公司人员日程重新进行调整和安排。”
的确,如果未来,智能机器自己可以设计出更加智能的机器,那么也许我们将不再需要任何工程师了。对此,连比尔·盖茨也认为如果按照现在人工智能的发展程度,那么未来可能所有的人类都会集体失业。
反方观点:人人都是工程师?
同时,对于“未来工程师会不会被机器取代”这一问题,Wenxiang Ma告诉记者,在硅谷,目前有另一派学者却认为答案是否定的,他们认为机器有其自身局限性,无法完全替代人类,于此同时,随着各种软件架构(Framework)以及工具的出现,未来编程门槛将进一步降低,届时人人都将成为软件工程师。
“对于机器取代工程师,反对派们认为,现在提及‘文盲’这个词,大家会理解为这个人没有读过书、不识字,但是可能未来的文盲或者就是指这个人不懂编程,”Wenxiang Ma表示,“事实上,未来不论人工智能怎样先进,都仍要依靠人为来定义软件的逻辑——短时间看,机器无法完全脱离人类的指导而自行完成软件设计和开发过程。这是因为,机器本身就是人的产物,是人编写出来的,因此它们自身具有局限性,也必须依靠人来帮助机器进化。”
与此同时,另一个趋势是,过去几年的发展使得软件开发的门槛越来越低,很多公司研发了很多架构(Framework)以及工具,例如Google的AngularJS、Facebook的React等,使得编程变得越来越容易。目前很多公司正在使用这些架构,仅需1到3个月就可以完成他们的软件开发。“这是以前不可能发生的事情。事实上,目前的架构仍不足够先进,等到这些架构先进到一定程度的时候,编程的门槛将前所未有地降低,届时所有人都将变为工程师,未来有一天,编程也将变得像小孩搭积木一样简单。”
问题关键:机器是否具备自我学习能力
那么,对于上述正反两方的观点,问题的关键或者症结在哪里呢?对此,TEEC Angel Fund的投资合伙人Xuhui Shao认为,转折点或者在于机器是否在未来的某一天具备自我学习和进化的能力。
Xuhui Shao表示:“举例,一个三岁的小孩,家长教育他走路要看路不然就会摔倒,那么只要他摔倒几次,今后就会从中学到这个教训并作出改进的举措,而作为大人,我们并不需要在今后的每一次孩子走路中都手把手地教导他应该怎么走——也就是说,人类与生俱来是具备自我学习和自我修正的能力的。”
但目前,计算机还是人类能力的一个子集,并不具备这种自我提高和自我修正的能力,但是如果在未来,机器真的可以取代人类,那么最关键的一点就是机器必须要有和人类类似的自我学习能力。
“机器能不能取代人类的关键在于程序自己能不能修正提高自己,能不能自己‘生小孩’,如果在未来,一个程序能够自我复制并且自己写出比它更好的先进程序,那么就不需要任何工程师了。届时,程序将就像人类的进化一样,自我学习、自我繁衍出更优秀的下一代,”Xuhui Shao表示,“不过从这一点上讲,那时的程序也将是十分‘可怕’的,因为当未来机器拥有了复制衍生能力的时候,那它的进步就是没有物理上的限制的;但是我们人类进步速度还是有物理上的限制的,届时或许科幻片中的机器统治星球的场景将会成为现实。”