强化学习

自我对弈(self-play)

/ SELF-play /

自我对弈是一个优雅的想法:让智能体通过与自己的副本对弈来学习,既无人类对手,也无人类对局可供模仿。它破解了一个先有鸡还是先有蛋的难题:要变强,你需要一个强劲的对手,可在任何强者出现之前,你又上哪儿去找这样一个对手?答案是,拿你自己当对手。随着你进步,你的对手(也是你)也跟着进步,于是挑战的难度自动与你同步——就像永远在跟一个恰好与你同等水平的人对弈,两人一道,永无止境地一寸寸向上攀。

正是这道自动的爬坡,让自我对弈如此强大。智能体面对着一架没有尽头的对手之梯,每一级都比上一级略强,由此生成一套没有任何人类能手工设计出来的训练课程。DeepMind 的 AlphaGo Zero 与 AlphaZero 把这个想法推到了最纯粹的形态:仅从围棋、国际象棋或将棋的规则出发——零份人类棋谱——它们与自己对弈了数百万局,超越了此前所有的程序和人类冠军。那些知识,完完全全来自自我对弈这个循环。

要把它「证明了什么、没证明什么」说精确。自我对弈在那种「双人、定义完美、零和」的游戏里光彩夺目——那里规则被精确知晓,「赢」也毫不含糊。这是一个狭窄而特殊的场景。它无法直截了当地迁移到那个一团乱麻的现实世界:那里规则未知、目标模糊、没有一个干干净净的对手,你也无法免费地模拟上百万次试验。自我对弈还可能崩塌——它会去追逐自己的怪癖,忘了该如何打败更老的策略——这正是为什么真实系统会小心地留着一池过往版本来对弈。它是一件出色的工具,而非通向通用智能的配方。

AlphaZero 起初只知道国际象棋的规则——没有开局定式、没有人类对局、没有任何战略。它与自己对弈了数小时,便自行重新发现了人类几个世纪积累的棋理,进而创造出连特级大师都感到震惊的新颖思路,并干净利落地击败了当时最强的国际象棋程序。

靠与自己对弈从零学起——在干净的零和游戏里耀眼夺目,却不是一条直通现实世界的路。

自我对弈那些超越人类的战绩,活在一个特殊的世界里:双人、规则精确已知、胜负信号清晰、且能无限地免费模拟。一旦剥去这些条件——几乎所有现实任务都是如此——这个把戏便无法干净地迁移,甚至可能因过度拟合自己的习惯而退化,除非你刻意地让它持续与自己更老的版本对弈。

又称
self play自我对弈自我博弈AlphaGoAlphaZero