2016 年 1 月 28 日 , Deepmind 公司在 Nature 杂志发表论文 Mastering the game of Go with deep neural networks and tree search , 介绍了 AlphaGo 程序的细节 。 本文是对这篇论文的阅读笔记 , 以及关于人工智能和围棋进一步的一些想法 。
>>>>
声明:我是数学 PhD 和软件工程师 , 但不是人工智能领域的专家 。 我也不会下围棋 。
一、
AlphaGo 总体上由两个神经网络构成 , 以下我把它们简单称为「两个大脑」 , 这并非原文中的提法 , 只是我的一个比喻 。
第一个大脑(Policy Network)的作用是在当前局面下判断下一步可以在哪里走子 。 它有两种学习模式:
一个是简单模式 , 它通过观察 KGS(一个围棋对弈服务器)上的对局数据来训练 。 粗略地说:这可以理解为让大脑学习「定式」 , 也就是在一个给定的局面下人类一般会怎么走 , 这种学习不涉及对优劣的判断 。
另一个是自我强化学习模式 , 它通过自己和自己的海量对局的最终胜负来学习评价每一步走子的优劣 。 因为是自我对局 , 数据量可以无限增长 。
第二个大脑(Value Network)的作用是学习评估整体盘面的优劣 。 它也是通过海量自我对局来训练的(因为采用人类对局会因为数据太少而失败) 。
在对弈时 , 这两个大脑是这样协同工作的:
第一个大脑的简单模式会判断出在当前局面下有哪些走法值得考虑 。
第一个大脑的复杂模式通过蒙特卡洛树来展开各种走法 , 即所谓的「算棋」 , 以判断每种走法的优劣 。 在这个计算过程中 , 第二个大脑会协助第一个大脑通过判断局面来砍掉大量不值得深入考虑的分岔树 , 从而大大提高计算效率 。
与此同时 , 第二个大脑本身通过下一步棋导致的新局面的优劣本身也能给出关于下一步棋的建议 。
最终 , 两个大脑的建议被平均加权 , 做出最终的决定 。
在论文中一个有趣的结论是:两个大脑取平均的结果比依赖两者各自得出的结果都要好很多 。 这应当是让 AlphaGo 表现出和人类相似性的关键所在 。
二、
如果我是这篇论文的审稿人 , 我会对论文提出下面这些问题和评论:
首先 , 这些神经网络训练在很大程度上是通过自我对局来实现的 。 这既是某种优势(按照 Facebook 人工智能研究员田渊栋的说法 , 几千万自我对局这种规模是相当惊人的数据量) , 某种程度上来说也是不得已而为之 , 因为人类对局的总数实在太少 , 会导致机器学习中常见的过度拟合问题 。
但是这样是否有可能造成自我设限乃至画地为牢的后果?这同时牵涉到人们对神经网络学习过程的理解和对围棋本身的理解 。 一方面 , 神经网络本身是否包容一定程度的「think out of the box」的能力 , 这固然取决于具体的神经网络算法 , 但也确实是人们对神经网络方法的一个本质困惑 。 另一方面 , 因为 AlphaGo 最基础的定式仍然是来源于人类对局 , 因此 , 这个问题依赖于人类棋手本身是否已经穷尽了围棋中所有有意义的基本定式 。
推荐阅读
- 虚拟|比尔·盖茨关于2022年的五项预言之二:元宇宙成有用的工具
- 诊断|比尔·盖茨关于2022年的五项预言之三:家庭医疗诊断手段普及
- 接线|关于室外监控立杆摄像机安装及立杆规范【详细说明】
- 公司|盛视科技股份有限公司 关于取得授予发明专利权通知书的公告
- 手机|刘作虎真情流露:关于ColorOS有一些话想对大家说
- Hunting|微软发布关于 Active Directory 权限提升攻击的警告
- 的作用|关于疫苗加强针、奥密克戎毒株…… 钟南山最新判断!
- 的作用|关于疫苗加强针、奥密克戎毒株…… 钟南山发表最新判断
- 疫苗|关于奥密克戎变异株,钟南山最新回应!
- 病毒|关于疫苗加强针、奥密克戎毒株…… 钟南山发表最新判断