[置顶] Alphago原理浅析
2017-06-30 19:55
218 查看
1、深度强化学习
强化学习是受到生物能够有适应环境的启发,以试错的机制与环境进行交互,通过最大化累积奖赏的方式来学习最优策略。而深度强化学习将深度学习的感知能力和强化学习的决策能力相结合,可以直接根据输
入的图像进行控制,是一种更接近人类思维方式的人工智能方法。
2、蒙卡罗特树
蒙特卡罗树搜索大概可以被分成四步。选择(Selection),拓展(Expansion),模拟(Simulation),反向传播(Backpropagation)。
在开始阶段,搜索树只有一个节点,也就是我们需要决策的局面。搜索树中的每一个节点包含了三个基本信息:代表的局面,被访问的次数,累计评分。
[1]选择(Selection)在选择阶段,需要从根节点,也就是要做决策的局面R出发向下选择出一个最急迫需要被拓展的节点N,局面R是是每一次迭代中第一个被检查的节点;
[2]拓展(Expansion)在选择阶段结束时候,我们查找到了一个最迫切被拓展的节点N,以及他一个尚未拓展的动作A。在搜索树中创建一个新的节点Nn作为N的一个新子节点。Nn的局面就是节点N在执行了动作A之后的局面。
[3]模拟(Simulation)为了让Nn得到一个初始的评分。我们从Nn开始,让游戏随机进行,直到得到一个游戏结局,这个结局将作为Nn的初始评分。一般使用胜利/失败来作为评分,只有1或者0。
[4]反向传播(Backpropagation)在Nn的模拟结束之后,它的父节点N以及从根节点到N的路径上的所有节点都会根据本次模拟的结果来添加自己的累计评分。如果在[1]的选择中直接发现了一个游戏结局的话,根据该结局来更新评分。每一次迭代都会拓展搜索树,随着迭代次数的增加,搜索树的规模也不断增加。当到了一定的迭代次数或者时间之后结束,选择根节点下最好的子节点作为本次决策的结果。
3、Alphago核心思想
Alphago已达到人类顶尖棋手的水准,其核心思想是通过卷积神经网络来构建价值网络和策略网络分别对搜索深度和宽度进行约减,使得搜索效率大幅度提升,胜率估计也更加精确。
4、Alphago实现原理
整体上,Alphago的实现包括线下学习和在线博弈,其中线下学习包括三个阶段:
第一阶段:核心利用大量专业棋手的棋谱训练策略网络和快速走棋网络,其中策略网络使用深度卷积神经网络来训练学习。
第二阶段:基于强化学习来提升策略网络的性能
第三阶段:通过大量的自我对弈,实现基于深度强化学习的价值网络学习
然后,在线博弈包括五个步骤:
步骤一:依据当前对弈盘面进行特征提取
步骤二:依据策略网络估计棋盘其他空地落子的概率
步骤三:依据落子概率,计算此处往下发展的权重,其中初始值为落子概率本身
步骤四:利用价值网络和快速走棋网络分别判断局势,两个局势相加得分为此处走棋获胜得分
步骤五:利用蒙卡罗特树搜索展开下一步的搜索,并更新权重
强化学习是受到生物能够有适应环境的启发,以试错的机制与环境进行交互,通过最大化累积奖赏的方式来学习最优策略。而深度强化学习将深度学习的感知能力和强化学习的决策能力相结合,可以直接根据输
入的图像进行控制,是一种更接近人类思维方式的人工智能方法。
2、蒙卡罗特树
蒙特卡罗树搜索大概可以被分成四步。选择(Selection),拓展(Expansion),模拟(Simulation),反向传播(Backpropagation)。
在开始阶段,搜索树只有一个节点,也就是我们需要决策的局面。搜索树中的每一个节点包含了三个基本信息:代表的局面,被访问的次数,累计评分。
[1]选择(Selection)在选择阶段,需要从根节点,也就是要做决策的局面R出发向下选择出一个最急迫需要被拓展的节点N,局面R是是每一次迭代中第一个被检查的节点;
[2]拓展(Expansion)在选择阶段结束时候,我们查找到了一个最迫切被拓展的节点N,以及他一个尚未拓展的动作A。在搜索树中创建一个新的节点Nn作为N的一个新子节点。Nn的局面就是节点N在执行了动作A之后的局面。
[3]模拟(Simulation)为了让Nn得到一个初始的评分。我们从Nn开始,让游戏随机进行,直到得到一个游戏结局,这个结局将作为Nn的初始评分。一般使用胜利/失败来作为评分,只有1或者0。
[4]反向传播(Backpropagation)在Nn的模拟结束之后,它的父节点N以及从根节点到N的路径上的所有节点都会根据本次模拟的结果来添加自己的累计评分。如果在[1]的选择中直接发现了一个游戏结局的话,根据该结局来更新评分。每一次迭代都会拓展搜索树,随着迭代次数的增加,搜索树的规模也不断增加。当到了一定的迭代次数或者时间之后结束,选择根节点下最好的子节点作为本次决策的结果。
3、Alphago核心思想
Alphago已达到人类顶尖棋手的水准,其核心思想是通过卷积神经网络来构建价值网络和策略网络分别对搜索深度和宽度进行约减,使得搜索效率大幅度提升,胜率估计也更加精确。
4、Alphago实现原理
整体上,Alphago的实现包括线下学习和在线博弈,其中线下学习包括三个阶段:
第一阶段:核心利用大量专业棋手的棋谱训练策略网络和快速走棋网络,其中策略网络使用深度卷积神经网络来训练学习。
第二阶段:基于强化学习来提升策略网络的性能
第三阶段:通过大量的自我对弈,实现基于深度强化学习的价值网络学习
然后,在线博弈包括五个步骤:
步骤一:依据当前对弈盘面进行特征提取
步骤二:依据策略网络估计棋盘其他空地落子的概率
步骤三:依据落子概率,计算此处往下发展的权重,其中初始值为落子概率本身
步骤四:利用价值网络和快速走棋网络分别判断局势,两个局势相加得分为此处走棋获胜得分
步骤五:利用蒙卡罗特树搜索展开下一步的搜索,并更新权重
相关文章推荐
- AlphaGo原理浅析
- [置顶] js原生Ajax 的封装和原理之浅析
- AlphaGo Zero原理浅析
- Java容器类浅析三-----保证插入顺序的HashMap--LinkedHashMap的存取原理
- RelativeLayout 原理浅析
- [置顶] SpringMVC原理&MVC设计思想
- 相见恨晚之gstreamer核心源码走读typefind原理浅析(二)
- 浅析 Linux 中的时间编程和实现原理,第 1 部分: Linux 应用层的时间编程
- Java EE学习之(六)浅析Web服务器原理
- Android框架浅析之锁屏(Keyguard)机制原理
- [置顶] 滴滴开源Android插件化框架VirtualAPK原理分析
- LeakCanary 原理浅析
- Dubbo解析及原理浅析
- android自定义View之自定义可置顶ScrollView,View滑动原理简析
- 浅析 Antiy Password Mixer 加密原理
- MyBatis 原理浅析 3——数据操作
- NT 环境下用户态直接读写端口原理浅析
- ASP.NET 2.0 异步页面原理浅析 [1] <转>
- CLR 中凭据(Evidence)相关信息获取原理浅析
- 浅析(Cross Site Script:跨站式攻击)XSS漏洞原理