以深度学习为标杆的人工智能在过去两年风光无限。众多巨头纷纷发布人工智能平台或者人工智能芯片圈地为王,无数人工智能初创公司期待借风口上飘摇而上上,无数人工智能爱好者一起使得Python成了2017最热门语言,使得卖显卡的英伟达股票翻番。
这样的群体狂欢下,人工智能似乎已经登顶智慧的巅峰,大家都开始未雨绸缪,认真预测哪些行业会被人工智能替代,家里儿子女儿是不是该换个大学读读。
且慢,不才认为大家似乎都太过高看了现在的人工智能。
AlphaGo和深度学习
提到人工智能不提及AlphaGo有点像谈乒乓球不提中国队一样。
去年AlphaGo兄弟几个摧枯拉朽一样击败众多世界顶尖围棋高手的时候,一种最悲观的观点是
人类千围棋智慧的结晶使得围棋顶尖高手终于登上了一个山峰。可惜这个山峰只是茫茫群峰中很低的一个。而基于深度学习的AlphaGo则可以达到真正的顶峰。
深度学习大行其道的原因有两个,一个是大数据,另一个是足够强大的运算能力。前者依赖互联网和大数据以获得足够多有效数据来训练神经网络,后者则归功于摩尔定律驱动下芯片处理能力的极大提高以及成本和功耗的大大下降。针对神经网络特性而开发的擅长并行运算处理器如NPU,TPU 以及GPU等为深度学习提供了强大的火力支援。
所谓深度学习是机器学习的一种,AlphaGo Zero可以和自己下棋,不再需要人工干预和棋谱。在AlphaGo Zero横空出世前它和自己下了68000000盘棋。
机器学习就是计算能力支撑的暴力破解
AlphaGo和它的兄弟们都是经过了百万盘棋的厮杀之后训练出来的。
我不是很熟悉人类顶尖棋手的学习训练强度。假设棋手每天训练10小时每局花费一小时,一年无休下来人类棋手可以下3600盘棋。十年寒窗棋手可以下36000盘棋。
这说明人类棋手训练的效率要大大高于机器的基于蒙特卡洛随机树的训练。人类选手在每一盘棋的厮杀和复盘中会学到很多,如策略,经验,顿悟,技巧。而这些概念在深度学习中压根不存在。神经网络只会将所有的训练结果体现在众多的神经网络权重上。而这些权重和真的人脑的工作方式是不是吻合?明显不是。
机器学习只能针对特定任务实现
机器学习这个弱点的一个明证就是学成的神经网络只能干一件事情,比如下围棋的绝对不会下象棋。而人类则可以在不同的棋类游戏之间互相借鉴诸如策略等而相互提高。
机器学习的另外一个经典的例子就是计算机看了1000万张图片后终于可以认出猫了。
回想一下人类从婴儿期第一次见到猫之后,即使只见到几只猫,也会很快分辨出猫,甚至是长相,体型,品种,颜色完全不同的猫。这对机器学习都是极大的挑战。
人类认识事物的时候会将事物内在的联系使用起来,比如猫和狗都是动物这样的知识会帮助人类赶快更准确认识世界万物。
人脑的复杂程度也许远远超出人类的想象。用神经网络来模拟人脑工作试图复制人类大脑任重而道远。
就像人类千年的围棋智慧比之围棋的终极智慧,当下的人工智能也许只是无尽的群山中一个小小的山峰。