MuZero

DeepMind开发的人工智能

MuZero,DeepMind开发的人工智能。MuZero在没有学习过游戏规则的情况下,不仅能下围棋将棋国际象棋,还在30多款雅达利游戏中展示出了超人类表现(superhuman performance)。2019年推出,2020年发表于《自然》。研究人员将MuZero描述为“在追求通用算法方面迈出的重要一步”。

背景
即使在1997年IBM的“深蓝”(Deep Blue)击败当时的国际象棋冠军卡斯帕罗夫之后,棋类AI的发展仍步履维艰。以围棋为例:2013年,AI在不让子的情况下几乎无法击败人类职业选手。
2016年,AlphaGo横空出世,以4:1击败韩国选手李世石,并在2017年的乌镇围棋峰会上击败了世界第一棋手柯洁。中国围棋协会当即授予AlphaGo职业围棋九段的称号。
如果说AlphaGo的成功确立了AI的“围棋霸权”,随后的AlphaGo ZeroAlphaZero则进一步揭示了“棋类霸权”的可能性。作为AI算法,不论是AlphaGo还是其继位者,都需要大量的训练。AlphaGo依赖于专家棋法(expert moves)数据集,而AlphaGo Zero舍去了这一步,直接与自己对战以为训练提供数据。AlphaZero则除了围棋,更学会了日本象棋(将棋)和国际象棋。值得一提的是,2018年底发布的AlphaZero,从第一次见到棋盘,到成为世界级棋类大师,只用了24小时。
2020年,DeepMind发表了MuZero。
特点
自古以来,哲学家和科学家都幻想着有朝一日能造出“人工通用智能”(artificial general intelligence)。简单地说,人工通用智能需要有极高的可塑性(flexibility),从而适应(甚至精通)各式不同的任务:一个能下棋、玩游戏、做家务、开飞机的AI。然而在此之前,最好的AI算法也只能精通数个同类任务;会下围棋、将棋和国际象棋的AlphaZero就是一个例子。
这种限制,在很大程度上来自AI算法对规则的依赖性。要想让AlphaZero下好各种棋,人类需要明确地教它各种棋的规则。以国际象棋为例,AlphaZero知道象只能斜着走,还不能跨过障碍物,而马可以跨过障碍物,但需要走“日”字。AlphaZero也知道什么是输赢和平局。可是一旦更换棋种,人类就需要将新棋种的规则从头教给AlphaZero。
既然这种依赖性限制了目前AI算法的应用范围,那最简单的解决方案,就是去除这种依赖性:人类可以不教AI下棋,只给它一个棋盘。每当AI选择了下一步该如何走时,人类才告诉它这一步合不合法,并且是否导致了输赢或平局。
——这就是MuZero面临的情境。对于任何一个游戏或任务,MuZero所掌握的只有一套“思考方式”,并没有该任务的“行为准则”。它不知道国际象棋里的马该怎么走,也不知道将棋中如何达成“王手”。如同第一次见到电脑的小孩,MuZero具有作出推理论断的“思维工具”,但不知道如何才能赢得“扫雷”。
跟人类一样,MuZero的秘诀,在于摸着石头过河,为外部世界建立一个只属于自己的“模型”(internal model)。在这个内部模型中,MuZero舍弃了一切表面上的规则,只留下对决策有用的信息:价值(value,即当前决策“有多好”)、策略(policy,即最好的“下一步”是什么)和奖励(reward,即上一步“有多好”)。
要明白这种策略的特殊和有效性,我们可以拿MuZero和AlphaZero的神经网络作对比:
任何深度学习算法在面对棋盘时,第一步总是观察。AlphaZero能观察当前棋局(S0),并直接利用S0计划未来的棋步。这要多亏了它所知道的棋类规则:它明白做出一个动作(action)后的下一个棋局长什么样,并可以在下一个棋局的基础上继续规划棋路,“想象”并评估各种不同的可能性。这样的规划方式,在深度学习上称为“蒙特卡洛树搜索”(Monte Carlo tree search,MCTS)。MCTS允许算法探索不同的可能性,并从中择出最优的动作。因此,熟知规则的AlphaZero要想精通棋类,只需要一个“神经网络”(neural network),即“预测网络”(prediction network)f,给f输入一个状态,它就能给出这个状态的价值(v)和潜在策略(p);通过评估各个可能性,AlphaZero就能得知当前最好的棋步。
MuZero则没有这种“奢华待遇”:它需要摸索出棋盘上各个子的合法(legal)走法,还需要弄清输赢的概念;当然,它的目标与AlphaZero一样,赢就好了,越多越好。但在不清楚规则的情况下,MuZero需要另辟蹊径,利用“表征网络”(representation network)h,将观察到的棋盘状态转换成只属于自己的隐藏状态(hidden state)。我们将当前的棋盘状态称为“O”(observation,即观察),MuZero的当前隐藏状态称为S0。但这时,MuZero遇到了第二个大难题:如何像AlphaZero一样评估未来的各种可能性呢?
不像AlphaZero,不知道棋盘规则的MuZero不能预测棋盘的各种可能状态,因此,MuZero需要从零开始,创造自己对棋路的内部模型。幸运的是,有了隐藏状态S0之后,MuZero就能算出S0状态下可以做出的各种行动(经过学习,MuZero得出的可能行动会越来越符合规则),并能通过“动态网络”(dynamic network)g,利用MuZero选择的行动和当前潜在状态S0,推演出S1。在每一个真实世界的时间点内,MuZero都能利用自己的内部模型和MCTS选择出这一个时间点的最佳行为,并将其应用于真实世界中。在实际做出了一个最佳行为后,这个行为又能再“回收”,用于训练动态网络g(从而改进MuZero的内部模型)。
图为AlphaZero和MuZero MCTS方法的并列对比。熟知规则的AlphaZero能由一个真实状态和可能行为,推测下一个真实状态。而MuZero由于不知道游戏规则,只能将真实状态表征为隐藏状态,学会建立自己的内在模型。
也就是说,由于AlphaZero对规则的掌握,它只需要一个预测网络f就能精通棋类。而不能预先知晓规则的MuZero,则需要利用动态网络g和表征网络h,自己学习并建立一个内在模型,从而学会下棋。在建立内在模型的过程中,人类不会给MuZero设置任何限制:MuZero可以舍弃任何信息,只保留有用的元素(即价值、策略和奖励)。
战果
就这样,MuZero这样一个“无师自通”的算法,竟然在AlphaZero引以为傲的棋类游戏中轻松与后者打成了平手。
在国际象棋、将棋和围棋中,MuZero的表现(蓝线)达到甚至超过了AlphaZero(橙线)。而在雅达利游戏“吃豆人小姐”中,MuZero的表现(蓝线)远超此前表现最佳的R2D2算法得分(橙线)。
在国际象棋、将棋和围棋中,MuZero都能达到AlphaZero的水平,甚至在围棋中稍稍胜过了AlphaZero。这表明MuZero“自学成才”建立的内部模型,或许比AlphaZero的“循规蹈矩”更接近围棋的要义。在雅达利游戏中,MuZero的表现也非同寻常。以“吃豆人小姐”(Ms. Pac-Man)为例,MuZero的得分为243401.10,相比之下,人类的最高分只有6951.60,是MuZero的1/35。在57个测试用的雅达利游戏中,MuZero在37个中取得了历史最高分,而人类则仅在5个游戏中保持着最佳成绩。
意义
在利用AlphaZero和其他算法攻破了这些游戏后,反而对MuZero隐藏起规则,让它“闭上眼”下棋、“背着手”玩游戏的目的是什么呢?
DeepMind和整个AI领域一样,并不在乎国际象棋和雅达利游戏本身。这是一场事关智能的征途,目标是理解智能本身。牙牙学语的婴儿并不明白动名词的区别,却能在短短几个月内连词成句,甚至创造出只属于他们的句子。生物学家也并非生来就知晓细胞的各种秘密,而是在实验和失败中,一步步对生物世界建立了理论和模型,从而获得深刻洞见。
事实很残酷:循规蹈矩不是智能。事先熟知规则再精通下棋,与先摸索规则、建立内部模型再精通棋路是全然不同的。前者只能困于“棋”中,后者则能将一套“思考方式”搬到各种任务上。前者的例子包括AlphaGo到AlphaZero的各种棋类AI,后者则包括MuZero和于尔根·施密德胡波(Jürgen Schmidhuber)著名的“循环世界模型”(Recurrent World Model)。
为外界建立内部表征是人类最引以为傲的能力之一。如今在AI身上,这个能力再次证明了自己的价值。MuZero不仅让人类看到了创造人工通用智能的可能性,还为我们打开了一扇通往智能本身的大门。
全国各地天气预报查询

上海市

  • 市辖区
  • 云南省

  • 临沧市
  • 云南省

  • 丽江市
  • 云南省

  • 保山市
  • 云南省

  • 大理白族自治州
  • 云南省

  • 德宏傣族景颇族自治州
  • 云南省

  • 怒江傈僳族自治州
  • 云南省

  • 文山壮族苗族自治州
  • 云南省

  • 昆明市
  • 云南省

  • 昭通市
  • 云南省

  • 普洱市
  • 云南省

  • 曲靖市
  • 云南省

  • 楚雄彝族自治州
  • 云南省

  • 玉溪市
  • 云南省

  • 红河哈尼族彝族自治州
  • 云南省

  • 西双版纳傣族自治州
  • 云南省

  • 迪庆藏族自治州
  • 内蒙古自治区

  • 乌兰察布市
  • 内蒙古自治区

  • 乌海市
  • 内蒙古自治区

  • 兴安盟
  • 内蒙古自治区

  • 包头市
  • 内蒙古自治区

  • 呼伦贝尔市
  • 内蒙古自治区

  • 呼和浩特市
  • 内蒙古自治区

  • 巴彦淖尔市
  • 内蒙古自治区

  • 赤峰市
  • 内蒙古自治区

  • 通辽市
  • 内蒙古自治区

  • 鄂尔多斯市
  • 内蒙古自治区

  • 锡林郭勒盟
  • 内蒙古自治区

  • 阿拉善盟
  • 北京市

  • 市辖区
  • 吉林省

  • 吉林市
  • 吉林省

  • 四平市
  • 吉林省

  • 延边朝鲜族自治州
  • 吉林省

  • 松原市
  • 吉林省

  • 白城市
  • 吉林省

  • 白山市
  • 吉林省

  • 辽源市
  • 吉林省

  • 通化市
  • 吉林省

  • 长春市
  • 四川省

  • 乐山市
  • 四川省

  • 内江市
  • 四川省

  • 凉山彝族自治州
  • 四川省

  • 南充市
  • 四川省

  • 宜宾市
  • 四川省

  • 巴中市
  • 四川省

  • 广元市
  • 四川省

  • 广安市
  • 四川省

  • 德阳市
  • 四川省

  • 成都市
  • 四川省

  • 攀枝花市
  • 四川省

  • 泸州市
  • 四川省

  • 甘孜藏族自治州
  • 四川省

  • 眉山市
  • 四川省

  • 绵阳市
  • 四川省

  • 自贡市
  • 四川省

  • 资阳市
  • 四川省

  • 达州市
  • 四川省

  • 遂宁市
  • 四川省

  • 阿坝藏族羌族自治州
  • 四川省

  • 雅安市
  • 天津市

  • 市辖区
  • 宁夏回族自治区

  • 中卫市
  • 宁夏回族自治区

  • 吴忠市
  • 宁夏回族自治区

  • 固原市
  • 宁夏回族自治区

  • 石嘴山市
  • 宁夏回族自治区

  • 银川市
  • 安徽省

  • 亳州市
  • 安徽省

  • 六安市
  • 安徽省

  • 合肥市
  • 安徽省

  • 安庆市
  • 安徽省

  • 宣城市
  • 安徽省

  • 宿州市
  • 安徽省

  • 池州市
  • 安徽省

  • 淮北市
  • 安徽省

  • 淮南市
  • 安徽省

  • 滁州市
  • 安徽省

  • 芜湖市
  • 安徽省

  • 蚌埠市
  • 安徽省

  • 铜陵市
  • 安徽省

  • 阜阳市
  • 安徽省

  • 马鞍山市
  • 安徽省

  • 黄山市
  • 山东省

  • 东营市
  • 山东省

  • 临沂市
  • 山东省

  • 威海市
  • 山东省

  • 德州市
  • 山东省

  • 日照市
  • 山东省

  • 枣庄市
  • 山东省

  • 泰安市
  • 山东省

  • 济南市
  • 山东省

  • 济宁市
  • 山东省

  • 淄博市
  • 山东省

  • 滨州市
  • 山东省

  • 潍坊市
  • 山东省

  • 烟台市
  • 山东省

  • 聊城市
  • 山东省

  • 菏泽市
  • 山东省

  • 青岛市
  • 山西省

  • 临汾市
  • 山西省

  • 吕梁市
  • 山西省

  • 大同市
  • 山西省

  • 太原市
  • 山西省

  • 忻州市
  • 山西省

  • 晋中市
  • 山西省

  • 晋城市
  • 山西省

  • 朔州市
  • 山西省

  • 运城市
  • 山西省

  • 长治市
  • 山西省

  • 阳泉市
  • 广东省

  • 东莞市
  • 广东省

  • 中山市
  • 广东省

  • 云浮市
  • 广东省

  • 佛山市
  • 广东省

  • 广州市
  • 广东省

  • 惠州市
  • 广东省

  • 揭阳市
  • 广东省

  • 梅州市
  • 广东省

  • 汕头市
  • 广东省

  • 汕尾市
  • 广东省

  • 江门市
  • 广东省

  • 河源市
  • 广东省

  • 深圳市
  • 广东省

  • 清远市
  • 广东省

  • 湛江市
  • 广东省

  • 潮州市
  • 广东省

  • 珠海市
  • 广东省

  • 肇庆市
  • 广东省

  • 茂名市
  • 广东省

  • 阳江市
  • 广东省

  • 韶关市
  • 广西壮族自治区

  • 北海市
  • 广西壮族自治区

  • 南宁市
  • 广西壮族自治区

  • 崇左市
  • 广西壮族自治区

  • 来宾市
  • 广西壮族自治区

  • 柳州市
  • 广西壮族自治区

  • 桂林市
  • 广西壮族自治区

  • 梧州市
  • 广西壮族自治区

  • 河池市
  • 广西壮族自治区

  • 玉林市
  • 广西壮族自治区

  • 百色市
  • 广西壮族自治区

  • 贵港市
  • 广西壮族自治区

  • 贺州市
  • 广西壮族自治区

  • 钦州市
  • 广西壮族自治区

  • 防城港市
  • 新疆维吾尔自治区

  • 乌鲁木齐市
  • 新疆维吾尔自治区

  • 伊犁哈萨克自治州
  • 新疆维吾尔自治区

  • 克孜勒苏柯尔克孜自治州
  • 新疆维吾尔自治区

  • 克拉玛依市
  • 新疆维吾尔自治区

  • 博尔塔拉蒙古自治州
  • 新疆维吾尔自治区

  • 吐鲁番市
  • 新疆维吾尔自治区

  • 和田地区
  • 新疆维吾尔自治区

  • 哈密市
  • 新疆维吾尔自治区

  • 喀什地区
  • 新疆维吾尔自治区

  • 塔城地区
  • 新疆维吾尔自治区

  • 巴音郭楞蒙古自治州
  • 新疆维吾尔自治区

  • 昌吉回族自治州
  • 新疆维吾尔自治区

  • 自治区直辖县级行政区划
  • 新疆维吾尔自治区

  • 阿克苏地区
  • 新疆维吾尔自治区

  • 阿勒泰地区
  • 江苏省

  • 南京市
  • 江苏省

  • 南通市
  • 江苏省

  • 宿迁市
  • 江苏省

  • 常州市
  • 江苏省

  • 徐州市
  • 江苏省

  • 扬州市
  • 江苏省

  • 无锡市
  • 江苏省

  • 泰州市
  • 江苏省

  • 淮安市
  • 江苏省

  • 盐城市
  • 江苏省

  • 苏州市
  • 江苏省

  • 连云港市
  • 江苏省

  • 镇江市
  • 江西省

  • 上饶市
  • 江西省

  • 九江市
  • 江西省

  • 南昌市
  • 江西省

  • 吉安市
  • 江西省

  • 宜春市
  • 江西省

  • 抚州市
  • 江西省

  • 新余市
  • 江西省

  • 景德镇市
  • 江西省

  • 萍乡市
  • 江西省

  • 赣州市
  • 江西省

  • 鹰潭市
  • 河北省

  • 保定市
  • 河北省

  • 唐山市
  • 河北省

  • 廊坊市
  • 河北省

  • 张家口市
  • 河北省

  • 承德市
  • 河北省

  • 沧州市
  • 河北省

  • 石家庄市
  • 河北省

  • 秦皇岛市
  • 河北省

  • 衡水市
  • 河北省

  • 邢台市
  • 河北省

  • 邯郸市
  • 河南省

  • 三门峡市
  • 河南省

  • 信阳市
  • 河南省

  • 南阳市
  • 河南省

  • 周口市
  • 河南省

  • 商丘市
  • 河南省

  • 安阳市
  • 河南省

  • 平顶山市
  • 河南省

  • 开封市
  • 河南省

  • 新乡市
  • 河南省

  • 洛阳市
  • 河南省

  • 漯河市
  • 河南省

  • 濮阳市
  • 河南省

  • 焦作市
  • 河南省

  • 省直辖县级行政区划
  • 河南省

  • 许昌市
  • 河南省

  • 郑州市
  • 河南省

  • 驻马店市
  • 河南省

  • 鹤壁市
  • 浙江省

  • 丽水市
  • 浙江省

  • 台州市
  • 浙江省

  • 嘉兴市
  • 浙江省

  • 宁波市
  • 浙江省

  • 杭州市
  • 浙江省

  • 温州市
  • 浙江省

  • 湖州市
  • 浙江省

  • 绍兴市
  • 浙江省

  • 舟山市
  • 浙江省

  • 衢州市
  • 浙江省

  • 金华市
  • 海南省

  • 三亚市
  • 海南省

  • 三沙市
  • 海南省

  • 儋州市
  • 海南省

  • 海口市
  • 海南省

  • 省直辖县级行政区划
  • 湖北省

  • 十堰市
  • 湖北省

  • 咸宁市
  • 湖北省

  • 孝感市
  • 湖北省

  • 宜昌市
  • 湖北省

  • 恩施土家族苗族自治州
  • 湖北省

  • 武汉市
  • 湖北省

  • 省直辖县级行政区划
  • 湖北省

  • 荆州市
  • 湖北省

  • 荆门市
  • 湖北省

  • 襄阳市
  • 湖北省

  • 鄂州市
  • 湖北省

  • 随州市
  • 湖北省

  • 黄冈市
  • 湖北省

  • 黄石市
  • 湖南省

  • 娄底市
  • 湖南省

  • 岳阳市
  • 湖南省

  • 常德市
  • 湖南省

  • 张家界市
  • 湖南省

  • 怀化市
  • 湖南省

  • 株洲市
  • 湖南省

  • 永州市
  • 湖南省

  • 湘潭市
  • 湖南省

  • 湘西土家族苗族自治州
  • 湖南省

  • 益阳市
  • 湖南省

  • 衡阳市
  • 湖南省

  • 邵阳市
  • 湖南省

  • 郴州市
  • 湖南省

  • 长沙市
  • 甘肃省

  • 临夏回族自治州
  • 甘肃省

  • 兰州市
  • 甘肃省

  • 嘉峪关市
  • 甘肃省

  • 天水市
  • 甘肃省

  • 定西市
  • 甘肃省

  • 平凉市
  • 甘肃省

  • 庆阳市
  • 甘肃省

  • 张掖市
  • 甘肃省

  • 武威市
  • 甘肃省

  • 甘南藏族自治州
  • 甘肃省

  • 白银市
  • 甘肃省

  • 酒泉市
  • 甘肃省

  • 金昌市
  • 甘肃省

  • 陇南市
  • 福建省

  • 三明市
  • 福建省

  • 南平市
  • 福建省

  • 厦门市
  • 福建省

  • 宁德市
  • 福建省

  • 泉州市
  • 福建省

  • 漳州市
  • 福建省

  • 福州市
  • 福建省

  • 莆田市
  • 福建省

  • 龙岩市
  • 西藏自治区

  • 山南市
  • 西藏自治区

  • 拉萨市
  • 西藏自治区

  • 日喀则市
  • 西藏自治区

  • 昌都市
  • 西藏自治区

  • 林芝市
  • 西藏自治区

  • 那曲市
  • 西藏自治区

  • 阿里地区
  • 贵州省

  • 六盘水市
  • 贵州省

  • 安顺市
  • 贵州省

  • 毕节市
  • 贵州省

  • 贵阳市
  • 贵州省

  • 遵义市
  • 贵州省

  • 铜仁市
  • 贵州省

  • 黔东南苗族侗族自治州
  • 贵州省

  • 黔南布依族苗族自治州
  • 贵州省

  • 黔西南布依族苗族自治州
  • 辽宁省

  • 丹东市
  • 辽宁省

  • 大连市
  • 辽宁省

  • 抚顺市
  • 辽宁省

  • 朝阳市
  • 辽宁省

  • 本溪市
  • 辽宁省

  • 沈阳市
  • 辽宁省

  • 盘锦市
  • 辽宁省

  • 营口市
  • 辽宁省

  • 葫芦岛市
  • 辽宁省

  • 辽阳市
  • 辽宁省

  • 铁岭市
  • 辽宁省

  • 锦州市
  • 辽宁省

  • 阜新市
  • 辽宁省

  • 鞍山市
  • 重庆市

  • 重庆市

  • 市辖区
  • 陕西省

  • 咸阳市
  • 陕西省

  • 商洛市
  • 陕西省

  • 安康市
  • 陕西省

  • 宝鸡市
  • 陕西省

  • 延安市
  • 陕西省

  • 榆林市
  • 陕西省

  • 汉中市
  • 陕西省

  • 渭南市
  • 陕西省

  • 西安市
  • 陕西省

  • 铜川市
  • 青海省

  • 果洛藏族自治州
  • 青海省

  • 海东市
  • 青海省

  • 海北藏族自治州
  • 青海省

  • 海南藏族自治州
  • 青海省

  • 海西蒙古族藏族自治州
  • 青海省

  • 玉树藏族自治州
  • 青海省

  • 西宁市
  • 青海省

  • 黄南藏族自治州
  • 黑龙江省

  • 七台河市
  • 黑龙江省

  • 伊春市
  • 黑龙江省

  • 佳木斯市
  • 黑龙江省

  • 双鸭山市
  • 黑龙江省

  • 哈尔滨市
  • 黑龙江省

  • 大兴安岭地区
  • 黑龙江省

  • 大庆市
  • 黑龙江省

  • 牡丹江市
  • 黑龙江省

  • 绥化市
  • 黑龙江省

  • 鸡西市
  • 黑龙江省

  • 鹤岗市
  • 黑龙江省

  • 黑河市
  • 黑龙江省

  • 齐齐哈尔市