实验证明,计算机正在摸索如何去做哪些开发人员没有教给他们的事情。
智东西 编 | 杜晓磊
在一个简单的计算机模拟中,一群自动驾驶汽车正在四车道的虚拟高速公路上进行一场疯狂的表演:一半的自动驾驶汽车正试图在车道上从右向左移动,而另一半则试图从左向右移动。从两个方向相对而行的自动驾驶汽车能够顺利融合,不发生碰撞是一件很困难的事情,但是它们做到了。
一、强化学习技术原来是自动驾驶骑车、AlphaGo背后的 “神助攻”
去年12月在巴塞罗那举行的人工智能大会上的模拟驾驶十分令人惊奇,控制汽车行为的软件完全没有使用传统的方式进行编程。它只是通过练习就学会了如何使汽车灵巧、安全的合并在一起。在训练过程中,控制软件一遍又一遍地执行操作命令,而且每一次的指令都有轻微的变化。大多时候汽车合并的速度非常缓慢,汽车之间会相互干扰。但是,只要合并顺利进行,系统就会学会支持汽车的行为。
这种被称为强化学习的方法,被大量的运用在AlphaGo上。AlphaGo是由Alphabet旗下子公司DeepMind开发的程序,它掌握了复杂的棋盘游戏规则,在今年5月27号,AlphaGo以3:0的强势姿态战败了世界第一围棋选手柯洁,引起广泛关注。强化学习除了用于AlphaGo、改进自动驾驶汽车之外,还可以让机器人抓取它以前从未识别过的物体、计算出数据中心设备的最优配置。现在,强化学习可能很快就会被运用在智力游戏中。
二、强化学习技术来源于生活
强化学习的本质是从自然中复制一条非常简单的原则。心理学家Edward Thorndike在100多年前记录了一个现象,他将几只猫放在一个盒子里,这些猫只有按下盒子里的按钮才能逃脱出来。猫咪在经过长时间的来回踱步和哀叫之后,其中的一只猫偶然间踩上了按钮从箱子里逃脱了出来。在他们学会将这种行为与期望的结果联系起来后,被困的时间越来越短。
一些早期研究人工智能的人员认为这个现象会被有效地运用在机器中。1951年,哈佛大学的一名学生Marvin Minsky,后来成为了麻省理工学院的教授,同时也是人工智能的创始人之一。他使用一种简单的强化学习方式建立了一种机器,来模拟老鼠在迷宫中自我“导航”行为。Minsky的随机神经模拟强化计算机和NARC都是由十个管道、马达和离合器组成,用来模拟40个神经元和突触的行为。当一个“模拟老鼠”走出虚拟迷宫,一些突触连接的强度会被加强,从而巩固了机器的潜在的行为。
在后来的几十年时间里, 强化学习技术并没有什么突破性进展。1992年,IBM的一名研究人员Gerald Tesauro用强化学习技术编写了一个程序,用它演示玩国际象棋,并且技术能力可以和优秀的棋手匹敌,这是人工智能的一个重要里程碑。但事实证明,强化学习很难扩展到更复杂的问题。当今强化学习的主要倡导者、英国DeepMind的研究人员David Silver说 : “大家都说这是一个很棒的想法,但是却起不到实际的作用。”
然而,这一观点在2016年3月发生了戏剧性的变化。一个使用强化学习技术训练的程序AlphaGo,打败了韩国著名围棋选手李世石。因为用传统的方式去编程一个良好的围棋程序几乎是不可能的,所以比赛的结果着实令人惊奇。围棋游戏非常复杂,即使是优秀的围棋选手有时也很难解释每一步骤对以后棋局的影响,因此围棋游戏的原则很难编写成代码。大多数人工智能研究人员都曾认为,计算机还需要10年的时间才能达到专业围棋选手的水平。
三、强化学习+深度学习,让AI更广泛地运用在实际生活中
Silver是一位温文尔雅的英国人,他在剑桥大学读本科时就对人工智能非常着迷。他曾说道:“强化学习最近变得如此强大的关键,是在于将其和使用巨大的模拟神经网络识别数据的深度学习相结合。”
强化学习之所以有效果,是因为研究人员能够让一台计算机自动为行为计算价值。比如说,一只“模拟老鼠”在迷宫中会做出很多正确和错误的决定,计算机把“模拟老鼠”的行为以数值的方式存储在一个大表中,并且实时更新。但是这种方法对于大型和复杂的任务是不切实际的。近年来,深度学习已经被证明是一种非常有效的方式来识别数据中的模式,无论数据是指迷宫中的转弯、棋盘上的位置,还是电脑游戏中屏幕上显示的像素。
事实上,DeepMind是在游戏领域中出名的。2013年,该公司公布了一个项目的细节,编写的程序可以学习玩各种Atari视频游戏,而且技术水平远超人类。2014年,谷歌以5亿多美元的价格收购了这家公司。这激励了其他研究人员和公司都纷纷转向了强化学习领域。许多工业机器人制造商正在测试这种方法,来训练他们的机器在没有人工编程的情况下,自动执行新的任务。
谷歌的一位研究人员与DeepMind公司合作,利用深度强化学习技让数据中心更节能。弄清楚数据中心的所有元素会如何影响能源的使用是困难的,但是强化学习算法可以从整理的数据和模拟实验中学习这种规律。比如,如何以及何时操作冷却系统。
四、自动驾驶汽车技术仍面临许多困难需克服
自动驾驶汽车中的软件非常人性化。今天的无人驾驶汽车在复杂的情况下常常会出现问题,比如与人类司机进行互动。在交通圈或四路车站中,我们不想让自动驾驶骑车去冒不必要的风险,但是也不能过于犹豫而导致道路阻塞。它们需要获得更细微的驾驶技能,比如在一群车辆中争夺位置。
Mobileye是一家以色列公司,它为像特斯拉这样的汽车公司生产汽车安全系统。Mobileye的技术副总裁Shai Shalev-Shwartz,用视频展示了自动驾驶汽车将面临的一些挑战: 自动驾驶汽车将来要行驶在耶路撒冷热闹街道中、巴黎疯狂的十字路口上、 印度的一条混乱的公路上。Shai Shalev-Shwartz说:“如果一辆自动驾驶汽车只能够精确地遵守交通规则,那么在高峰时刻,我可能在掺杂自动驾驶骑车的公路上,需要用一小时的时间等车。”
Mobileye计划在今年晚些时候与宝马和英特尔合作,测试一款汽车软件。谷歌和优步也都表示,他们在用强化学习技术来测试自动驾驶汽车。斯坦福大学的助理教授Emma Brunskill说:“强化学习正在越来越多的领域应用,而且这项技术非常适合自动化驾驶,因为它支持”良好的决策序列。如果程序员必须提前将所有有可能的决策都进行编码,进度将会缓慢得多。
但也有一些挑战需要克服。百度的首席科学家Andrew Ng警告说,这种方法需要大量的数据,它的许多成功之处在于计算机可以在模拟中不断地练习。事实上,研究人员仍在研究如何使强化学习在执行多个目标的复杂的情况下发挥作用。Mobileye公司不得不对其协议进行调整,这样一款自动驾驶汽车就能避免发生交通事故,不会给人类带来伤害。
当你看到文章开头提到的,自动驾驶汽车合并的演示时,Mobileye公司已经取得了一些成就,在今年晚些时候,你也许能在高速公路上看到无人驾驶汽车,这是强化学习迄今为止最具戏剧性和最重要的测试。
原文来源:technologyreview
延伸阅读
点击下方图片直接阅读
往期回顾