—— 青亭网
OpenAI输了比赛,但赢了人心
Esther| 撰文
前不久,青亭网曾报道过OpenAI组建的电竞战队OpenAI Five在《Dota 2》中击败了5组游戏战队,但是在8月22日于温哥华举行的TI8国际邀请赛上,这组AI战队却接连两场输给了巴西和中国的人类战队,遗憾出局。
据悉,OpenAI是埃隆·马斯克等科技名人投资组建的一个非盈利研究实验室,而OpenAI Five是该实验室开发的《Dota 2》AI,训练AI玩游戏的目的不仅仅是为了挑战人类玩家,也是为了训练出能够媲美人类智慧的机器人。
在OpenAI输给人类玩家之前,曾经也取得过不小的成就,比如DeepMind公司的AlphaGo AI在去年五月曾经打败围棋世界冠军柯洁,实现了至少十年来专家认为不可能的想法。虽然电竞游戏在大家印象中不像围棋和国际象棋那样挑战智商,但是对于机器来说游戏反而更难取胜,原因如下:
训练AI的数据来自于游戏玩家;
游戏环境复杂、多变;
获胜需要的策略思维是轻易没办法模拟的。
也就是说,训练AI玩游戏相当于向真正训练AI处理日常问题又更近了一步。
因此,许多公司选择《Dota 2》等这样具挑战性的复杂竞技场游戏来训练AI,而据了解OpenAI Five差不多是同类AI中最擅长这个游戏的了,那为什么上周它们还输了呢?是因为AI的能力的达到了瓶颈吗,还是说有些任务太复杂计算机没办法胜任?
答案是:都不是。一名机器学习科研人员兼《Dota 2》发烧友Stephen Merity认为,AI这次只是暂时碰壁,最后它们将会掌握这个游戏,而最先实现的很可能就是OpenAI。下面我们就来研究一下为什么上周人类玩家会赢,而OpenAI虽然输了但是又取得了哪些成就,以此来探索AI的长处与短处和今后的发展。
OpenAI的训练方法
先来回顾一下OpenAI训练《Dota 2》AI的方法,其使用了一种和训练AlphaGo一样的奖励刺激式深入强化学习模式,让AI从头一遍遍在尝试中自学。这也就需要AI每天在加速状态下接受相当于180年的训练,《Dota 2》需要人类花费1.2万小时和2万小时练习才能学会,也就是说AI每天训练的时间相当于一百个人的学习时间加在一起。
据悉,需要这么多时间训练AI是因为《Dota 2》本身就是个很复杂的游戏,其中有数百种装备,有多重困难和多种玩法。而为了加速处理这么多训练数据,OpenAI需要使用由256个Nvidia Telsa P100显卡和128000个核心的处理器的组合,因此AI专家们常常认为OpenAI Five不仅仅是一项科研成果,其训练框架也是一项成就,能造出处理这么大量数据的系统本身就不简单了,不管有没有打赢人类。
美国斯坦福大学一名学习计算机科学的PhD学生兼AI网站Skynet Today的编辑Andrey Kurenkove表示,OpenAI Five在处理复杂数据方面,大大胜过了DeepMind训练的雅达利街机AI DQN和AlphaGo,其最大的意义就在于将机器学习的规模扩大到了意想不到的规模。
训练AI的痛点:缺乏长期策略
这时候就会有人问了,就算OpenAI的训练框架很厉害,但是连输两场给人类它也不算是成功吧?不,它还是挺成功的。
首先,游戏AI相对于人类玩家有些劣势,就是在比赛的时候会受到一些规则限制,不管是从一开始的1v1 AI还是现在的5v5 AI,也就是说游戏AI还没掌握游戏全部的复杂机制,在比赛的时候AI无法使用一些功能。在TI8中,OpenAI没办法从NPC手中获得道具,因此没办法保证获取治疗药水的渠道,也就无法持续攻击。
TI8比赛的早期分析显示,OpenAI战队表现不错但不是非凡,它们也有自己的优缺点,就像人类玩家一样,有可以被对手利用的痛点。
据青亭网了解,OpenAI参加的两场比赛等级相同,而且都先是人类领先,然后机器人赶超,最后人类取胜。比赛过程中,可以发现的规律是人类一旦取得明显的优势,AI就很难追上。
对此,游戏解说员猜测可能是因为AI和人类相比更愿意求稳而不愿意冒险(AlphaGo似乎也是这种模式),比如相比于获胜率为51%获胜率,得分为50的打法,OpenAI更愿意选择胜率为90%得分为1分的打法。也就是说在失去优势后,OpenAI不敢冒险夺回优势。当然,猜测AI的真实想法不太可能,只能说AI在正面交锋的时候很优秀,但是抵不过人类玩家的长期策略。
https://v.qq.com/txp/iframe/player.html?vid=a0770jkczo6&width=500&height=375&auto=0
据英国法尔茅斯大学一名AI游戏科研人员Mike Cook在游戏中观察,人类玩家在赢了一轮后就会稍微疏于防御,以为OpenAI会撤退重新安排队形,结果它们还是见一个杀一个,虽然技术很强悍精准,但是不会做长期准备。值得注意的是,在与中国Legends队对战中,OpenAI被打败就是因为没有识破对方的长期策略。
从OpenAI输给人类玩家的原因来看,更加说明了长期策略是强化学习的一个很大缺陷,因为训练AI的强化学习模式注重的是取得短期的奖励而不是长期利益,当然构建基于长期奖励机制的系统并不容易。我们要解决的问题是,如果没办法预测敌人何时会聚在一起,那AI怎么才能知道什么时候使用大招呢?假设AI推迟使用大招就会获得奖励,如果使用这种训练方法,它们会不会就永远不使用大招了。这还只是问题的冰山一角,毕竟一场《Dota 2》游戏会持续30到45分钟,任何玩家都必须不断思考什么样的行为会促使最后的胜利。
不过,训练AI拥有长期策略意识也不是完全不可能,因为AI并不是没有意识、只会收集奖励的小兵。使用了神经网络训练的AI,在不断练习后会产生对新策略的记忆,据OpenAI称,其AI评估未来奖励的“半衰期”(等待出招攻击的跨度)为14分钟。
除了找到延迟进攻的办法,训练AI长远思考之所以难还在于,如何区别长期策略和短期策略,如果其行为看起来很相似?
AI与人类无法公平竞争
AI与人类比赛就像是拿飞机与鸟相比,其存在就是为了弥补人类不足的地方,因此和人类比是永远不可能公平的。除了AI很智能这一原因外,有些人会说OpenAI Five在《Dota 2》比赛中不像人类需要看电脑屏幕,而是使用了专门的机器人API来获取游戏数据。如此一来,OpenAI就不需要考虑场景知觉的问题了,也就是说不用去地图上找队友,不用查看UI就知道大招学没学会,总之OpenAI使用了API后相较于人类有很大优势。
当然,OpenAI可以让《Dota 2》AI使用视觉系统来模拟人眼看电脑屏幕,但是这就要耗费很多资源,目前还没有人这么做。但是即使真的使用了视觉系统,可能还是不够公平,那总不能真的造出机器手模拟人手来比赛吧,或者这只手还得像人一样会出汗?
所以说,既然AI与人类比赛不公平,那为什么还比呢?科研人员解释,训练AI完《Dota 2》不是为了称霸这个游戏,而是希望能训练AI胜任一些更复杂的工作。目前,用于训练OpenAI Five的架构Rapid已经被应用于其他几个项目中了,例如前不久青亭网曾经报道过OpenAI反复试错法训练的一款机器手,不过Rapid训练法可以训练的领域也有其局限性。所以说,为什么人类要让AI挑战自己呢?答案就是,通过训练AI胜任多个任务,来为未来的全能AI做准备。
从AI与人类的各种比赛中,可以发现,不仅AI可以从失败中学习,人类也可以。韩国围棋世界冠军李世石被AlphaGo打败后,开始研究AI的策略。很多《Dota 2》的玩家在看过OpenAI的表现后,也开始向AI学习、借鉴经验,发现了至少一个之前没有被发现的游戏策略。
和AI比赛的意义也在于,人类可以学习AI发现的一些技巧,充实自己的技能。突发奇想一下,这也许是AI给人类的善行。就好像是为了感谢人类,AI在彻底取代人力之前,为我们留下了这些经验作为礼物,当然这只是开玩笑。训练了AI,AI又启发了人类,整个过程对人和机器来说都是一种学习过程,今后这种模式将会更为普及。
(END)
推荐阅读
—— 青亭网