AlphaGo Zero 模型框架
来源:互联网 发布:python for 一行 编辑:程序博客网 时间:2024/06/05 08:59
Intro
上一篇blog提到了Mento Carlo树搜索的一些基本概念和要点,在结尾也说道AlphaGo 和AlphaGo Zero在MCTS下使用了神经网络作为模拟策略.
本文主要说一说AlphaGo Zero如何将MCTS 组合起来的.
为了方便描述,需要强调的是,在MCTS树里面,每一个节点表示的是一个局面,即棋盘上所有已有的棋子的位置. 注意到下围棋是一个Markov 决策过程,当前的局面完全决定了下一步要怎么下,胜率(如果可以计算出来的话)是多少,而不用管这个局面是如何达到的.树的每一个边是当前局面下落子的位置.
价值网络
对于一个局面
其中
MCTS
MCTS过程由神经网络指导,具体来说,就是选举策略和模拟策略与神经网络相关.
self-paly
当有了一个确定的神经网络参数后, AlphaGo Zero开始自己与自己下棋
对于一个根节点s,每一条边(s,a)存储了访问次数
每次从根节点开始,选择
到达叶子节点后,扩展叶子节点,向上回溯,依次将路径上的边的访问次数加1,并且根据扩展的节点更新Q的值。
选举策略是具有启发性的,一方面,它选择的总是网络认为会达到最好子局面的路径,另一方面,访问次数作为分母,可以激励选举策略去寻找一些没有被访问过的点。
当进行到T步后,游戏结束.MCTS可以产生Markov决策过程中的一个决策
强化学习
围棋是天然适用于强化学习的一个过程, 最明显的一点是围棋agent很容易从环境中知道其策略的评价,即游戏的胜负.
强化学习这部分我学习的也不充分,可能不能很好的把这部分与强化学习的通用框架给结合起来,但是这一部分模型的具体过程还是可以略微的说一说的.
首先对于网络的迭代过程,我们把它记为i,我们把self-play 过程的指标记为t.设第i次网络迭代采用的是上一次迭代更新后的网络参数
训练目的是对参数新的网络参数. 注意到网络
这是一个多目标的优化问题,损失函数被如下定义
Ref
Mastering the game of Go without human knowledge
- AlphaGo Zero 模型框架
- 论文 | AlphaGo Zero 的模型和算法
- AlphaGo Zero
- AlphaGo Zero 总结
- 深入浅出看懂AlphaGo Zero
- AlphaGo Zero 初探
- 转载:AlphaGo Zero
- AlphaGo Zero原理浅析
- 【强化学习】AlphaGo Zero详解
- AlphaGo Zero与增强学习
- AlphaGo Zero ( 阿尔法元 ) 简介
- AlphaGo Zero横空出世:DeepMind Nature论文
- AlphaGo Zero到底强在哪里?
- 一文读懂AlphaGo Zero算法
- 无先验从零开始深度学习AlphaGo zero
- AlphaGo zero 概述和引言翻译
- AlphaGo Zero:笔记与伪代码
- 【回顾】AlphaGo Zero and Deep Learning
- 游戏
- Flink新一代流式计算框架的体系架构及应用
- 专访 | 余承东:华为三大智能平台先从国内发力
- 京东推游戏手机标准背后 重塑手机产业生产模式
- Java并发编程之原子变量
- AlphaGo Zero 模型框架
- leetCode 637. Average of Levels in Binary Tree 求二叉树每层平均值
- 最大子数组的和以及最大子数组的乘积
- 122. Best Time to Buy and Sell Stock II
- PyCharm使用技巧:Ctrl + /(多行注释)
- 游戏背景音乐
- Android系统prop属性的研究与分析(二)
- CentOS安装邮件服务器
- 关于Android studio使用外来项目,以导入zxing包为例子