AlphaGo Zero与增强学习
2017-11-08 19:24
232 查看
2017年10月19日凌晨,DeepMind 在《自然》杂志上发表了一篇论文,正式推出人工智能围棋程序的最新版本——AlphaGo Zero.
3个小时之后,它通过自学入门围棋,成为人类初学者水平;
19个小时之后,它自已总结出了一些"套路",比如死活,打劫,先占边角等等;
自学第三天后,它战胜了AlphaGo Lee(当初击败李世石的AlphaGo版本);
自学第四十天后,它战胜了AlphaGo Master(今年击败柯洁的AlphaGo版本)
与之前的AlphaGo版本相对,它不但提高了水平,而且节约了算力.
这还不是最重要的,最重要的是它只使用了增强学习,因此它的意义就不仅仅是赢得棋类比较这么简单了.
之前的AlphaGo版本也用到了增强学习,它先使用人类专家下棋数据作为训练(有监督学习),然后再让机器自己和自己对弈(增强学习)并从中吸取经验.而AlphaGo Zero是完全不使用专家数据训练,只使用增强学习,并且成功了.它在几天之内进行了上百万盘自我对弈,达到了人类围棋巅峰水平,而且那些"套路"都是它自己总结出来的,看到学习过程图真的很震撼(具体图请见论文),感觉它把人类成百上千年的围棋技术发展史浓缩在几天之内了.
如果用人类专家的方法训练机器,机器一般只能发展到和人类专家相似的水平.AlphaGo Zero证明了机器只不会鹦鹉学舌,它能自学,而且速度还挺快.从这个角度看,它确实具有里程碑的意义.
同样它们都使用了神经网络,蒙特卡洛搜索树算法,而算力从原来的48个TPU降到了4个TPU.总之,它的进步主要是采用新技术和化繁为简.有点像哥白尼的日心说,一下把复杂的事情变简单了.
又有人说,原来说机器学习就是鹦鹉学舌,那么经过增强学习,机器是否就可以自学,跳出人类模型,创造模型,超越人类呢?
人是高级动物,把刚生出来的小孩扔到大森林里他活不了,反而一些低级动物一生出来就能自己生活.因为低级动物的生存的目标,规则,方法都比较简单,而基因中又刻画了一些先天的技能.就像棋类游戏,有确定的规则,可判定的结果.目标,价值,损失…由于人需要处理更复杂的问题,所以需要更多积淀和更灵活的框架.这也是目前算法欠缺的地方(个人观点,仅供参考).人类还有一些明显有优势,比如:从少量的训练中积累经验(基于人的常识系统);知识迁移(见Minsky的框架理论)等等,这属于人工智能中的其它领域了.
棋类游戏比较容易定义和模拟场景,属于一个很抽象的领域,可以不断地试错.在真实的世界里,大多数事情都没机会多试,不可能让汽车在大街上去练自动驾驶,积累经验.这也局限了增强学习的使用范围.
https://deepmind.com/documents/119/agz_unformatted_nature.pdf
建议阅读原文,读起来确实激动人心,一共40多页,没空的话读前14页即可.后面是 References,技术细节和图表数据.
技术文章定时推送
请关注公众号:算法学习分享
AlphaGo Zero成长史
最初AlphaGo Zero除了围棋的基本规则以外,没有任何关于围棋的知识;3个小时之后,它通过自学入门围棋,成为人类初学者水平;
19个小时之后,它自已总结出了一些"套路",比如死活,打劫,先占边角等等;
自学第三天后,它战胜了AlphaGo Lee(当初击败李世石的AlphaGo版本);
自学第四十天后,它战胜了AlphaGo Master(今年击败柯洁的AlphaGo版本)
与之前的AlphaGo版本相对,它不但提高了水平,而且节约了算力.
这还不是最重要的,最重要的是它只使用了增强学习,因此它的意义就不仅仅是赢得棋类比较这么简单了.
增强学习
先来看看什么是增强学习(Reinforcement Learning),我们知道机器学习分为有监督学习和无监督学习,增强学习介于它们两个之间,它关注的是智能体如何在环境中采取一系列行为,从而获得最大的累积回报。简单地说就是边干边学.之前的AlphaGo版本也用到了增强学习,它先使用人类专家下棋数据作为训练(有监督学习),然后再让机器自己和自己对弈(增强学习)并从中吸取经验.而AlphaGo Zero是完全不使用专家数据训练,只使用增强学习,并且成功了.它在几天之内进行了上百万盘自我对弈,达到了人类围棋巅峰水平,而且那些"套路"都是它自己总结出来的,看到学习过程图真的很震撼(具体图请见论文),感觉它把人类成百上千年的围棋技术发展史浓缩在几天之内了.
如果用人类专家的方法训练机器,机器一般只能发展到和人类专家相似的水平.AlphaGo Zero证明了机器只不会鹦鹉学舌,它能自学,而且速度还挺快.从这个角度看,它确实具有里程碑的意义.
AlphaGo 版本比较
下面从技术角度看看Zero与AlphaGo早期版本相比,到底有哪些进步.早期的AlphaGo使用的是卷积神经网络,Zero加入了残差网络;早期使用决策和价值两个网络,Zero将它们合二为一;早期是人工提取特征,Zero直接把棋子位置直接作为输入;早期是有监督学习与增强学习相结合,Zero只使用了增强学习.(具体请见论文)同样它们都使用了神经网络,蒙特卡洛搜索树算法,而算力从原来的48个TPU降到了4个TPU.总之,它的进步主要是采用新技术和化繁为简.有点像哥白尼的日心说,一下把复杂的事情变简单了.
机器自学能否超越人类
有人说,人的脑细胞不是更多,为什么让机器给超越了呢?机器把所有时间和运算力都放在训练棋局上,人的大脑虽然厉害,但是分块处理各种工作,每天工作时间也有限.并且神经网络算法里还加入了很多优化算法并不完全和人脑一样.又有人说,原来说机器学习就是鹦鹉学舌,那么经过增强学习,机器是否就可以自学,跳出人类模型,创造模型,超越人类呢?
人是高级动物,把刚生出来的小孩扔到大森林里他活不了,反而一些低级动物一生出来就能自己生活.因为低级动物的生存的目标,规则,方法都比较简单,而基因中又刻画了一些先天的技能.就像棋类游戏,有确定的规则,可判定的结果.目标,价值,损失…由于人需要处理更复杂的问题,所以需要更多积淀和更灵活的框架.这也是目前算法欠缺的地方(个人观点,仅供参考).人类还有一些明显有优势,比如:从少量的训练中积累经验(基于人的常识系统);知识迁移(见Minsky的框架理论)等等,这属于人工智能中的其它领域了.
棋类游戏比较容易定义和模拟场景,属于一个很抽象的领域,可以不断地试错.在真实的世界里,大多数事情都没机会多试,不可能让汽车在大街上去练自动驾驶,积累经验.这也局限了增强学习的使用范围.
论文原文
论文原文《Mastering the game of Go without human knowledge》请见:https://deepmind.com/documents/119/agz_unformatted_nature.pdf
建议阅读原文,读起来确实激动人心,一共40多页,没空的话读前14页即可.后面是 References,技术细节和图表数据.
技术文章定时推送
请关注公众号:算法学习分享
相关文章推荐
- 中科院自动化所介绍深度强化学习进展:从AlphaGo到AlphaGo Zero
- 深度增强学习(DRL)漫谈 - 从DQN到AlphaGo
- 浙大吴飞教授:尽管AlphaGo Zero已强大到从经验中学习模型,我也绝不赞同马斯克和霍金的威胁论,人才是智能的最终主宰
- 深度丨AlphaGo Zero的启示:监督学习和无监督学习的利弊
- 【深度】专业解读“深度强化学习“:从AlphaGo到AlphaGoZero
- 【七月在线】 强化学习 [一举解开AlphaGo Zero的百胜奥秘] 完整版 附课堂资料
- 无先验从零开始深度学习AlphaGo zero
- 深度增强学习(DRL)漫谈 - 从DQN到AlphaGo
- 深度增强学习(DRL)漫谈 - 从DQN到AlphaGo
- 增强学习 | AlphaGo背后的秘密
- ASP.NET ZERO 学习 —— (7) 开发手册之基础架构
- 深度增强学习David Silver(三)——动态规划的planning
- 增强学习(三)----- MDP的动态规划解法
- Java学习(3)-增强for循环注意的问题
- 《Advanced Bash-scripting Guide》学习(一):对一个增强和广义的删除logfile的脚本的理解
- 学习笔记-增强学习
- 黑马程序员_学习笔记:11) Jdk5.0新特性:增强for循环、可变参数(...)、静态导入、枚举:关键字 enum、自动拆装箱、泛型
- Python语言学习讲解六:增强的格式化字符串format函数
- java基础增强之类加载器学习笔记
- ZeroC ICE(一) ZeroC ICE入门学习