“敢于尝试,才有突破”

2017年5月27日,当今世界排名第一的中国棋手柯洁与AlphaGo 2.0的三局对战落败。该事件标志着最新的人工智能技术在围棋竞技领域超越了人类智能,借此机会,介绍一下AlphaGo背后的秘密——增强学习技术。

增强学习(Reinforcement Learning),也称强化学习,是一种在过程中学习提高机器智能的框架。该框架通常可用马尔可夫决策过程(Markov Decision Process)概念来描述,即假设存在智能体(Agent)在约束环境下执行某动作(Action),动作的执行会改变智能体状态(State),其结果会带来奖赏或惩罚。基于此,智能体通过探索最优策略(Policy)或是最大化长期回报(Reward),进而选择最优的执行动作序列。

增强学习应用的核心是建立智能体模型,包括几个核心概念:

  • 状态:智能体内在属性的定量描述
  • 动作:使智能体状态迁移的行为
  • 策略:状态和动作的映射转移函数,例如状态转移概率等
  • 回报:评价智能体执行某动作好坏的价值函数
  • 环境:与智能体交互的模型,例如建立的马尔可夫决策模型等

根据问题不同,智能体常常使用一个或多个上述概念进行建模,进而可将增强学习粗略分为基于策略的增强学习、基于值(回报)的增强学习,以及基于模型的增强学习。

基于智能体模型,增强学习以“状态”作为输入,通过可能的“动作”与环境进行交互,以“回报”作为动作的评价,利用该过程中累积的“尝试”数据进行训练,从而学习得到最优的策略函数。

相比于经典的有监督学习方法,增强学习无需标注数据,某种意义上可以看作“延迟标注数据”的监督学习方法。增强学习更关注于在线决策的性能,在难以计算最优解时可给出次优解。

相对于经典的近似动态规划方法,增强学习无需显式的建立马尔可夫决策数学模型,更适合求解计算状态空间更加复杂的问题,即人类操作层次的任务,例如游戏AI、无人驾驶、机器人等。

然而,对于语音识别、NLP、计算机视觉等一些很难定义长期回报的应用,增强学习便难以适用。另一方面,智能体建模常常过于抽象,因此一些增强学习的应用距离实际相差还较大。

回到开头,战胜柯洁的Alpha Go使用的便是最新的深度增强学习技术,即在上述介绍的增强学习概念基础上使用深度神经网络描述值函数、策略或者模型。从这项超越现今人类智能的技术上,我们或许可以得到如下启发:

  1. 基于深层卷积神经网络判断围棋棋盘的形势,无需数据特征工程,同时能处理巨大的状态空间;
  2. 历史棋手对弈数据有限,但可通过自我博弈显著提升人工智能但策略能力;
  3. 增强学习技术并不是万能的,它更适合游戏规则确定的应用。

最后,小虾米还将文章内容总结成了更直观的思维导图,需要的朋友,请在数据小虾米公众号后台回复“增强学习”,即可获取下载地址。


数据科学武林风起云涌,
随数据小虾米共闯江湖~

增强学习 | AlphaGo背后的秘密的更多相关文章

  1. (转) 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文)

    本文转自:http://mp.weixin.qq.com/s/aAHbybdbs_GtY8OyU6h5WA 专题 | 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文) 原创 201 ...

  2. 马里奥AI实现方式探索 ——神经网络+增强学习

    [TOC] 马里奥AI实现方式探索 --神经网络+增强学习 儿时我们都曾有过一个经典游戏的体验,就是马里奥(顶蘑菇^v^),这次里约奥运会闭幕式,日本作为2020年东京奥运会的东道主,安倍最后也已经典 ...

  3. 常用增强学习实验环境 II (ViZDoom, Roboschool, TensorFlow Agents, ELF, Coach等) (转载)

    原文链接:http://blog.csdn.net/jinzhuojun/article/details/78508203 前段时间Nature上发表的升级版Alpha Go - AlphaGo Ze ...

  4. 5.JavaScript优化及导航菜单背后的秘密

    JavaScript优化及导航菜单背后的秘密 伍星 学习目标1.进一步了解前端优化 学习如何编写良好的 JavaScirpt2.通过导航的学习,了解JavaScirpt的应用 JavaScript在用 ...

  5. 增强学习(三)----- MDP的动态规划解法

    上一篇我们已经说到了,增强学习的目的就是求解马尔可夫决策过程(MDP)的最优策略,使其在任意初始状态下,都能获得最大的Vπ值.(本文不考虑非马尔可夫环境和不完全可观测马尔可夫决策过程(POMDP)中的 ...

  6. Multi-armed Bandit Problem与增强学习的联系

    选自<Reinforcement Learning: An Introduction>, version 2, 2016, Chapter2 https://webdocs.cs.ualb ...

  7. 增强学习(四) ----- 蒙特卡罗方法(Monte Carlo Methods)

    1. 蒙特卡罗方法的基本思想 蒙特卡罗方法又叫统计模拟方法,它使用随机数(或伪随机数)来解决计算的问题,是一类重要的数值计算方法.该方法的名字来源于世界著名的赌城蒙特卡罗,而蒙特卡罗方法正是以概率为基 ...

  8. 增强学习————K-摇臂赌博机

    探索与利用增强学习任务的最终奖赏是在多步动作之后才能观察到,于是我们先考虑最简单的情形:最大化单步奖赏,即仅考虑一步操作.不过,就算这样,强化学习仍与监督学习有显著不同,因为机器要通过尝试来发现各个动 ...

  9. 增强学习(Reinforcement Learning and Control)

    增强学习(Reinforcement Learning and Control)  [pdf版本]增强学习.pdf 在之前的讨论中,我们总是给定一个样本x,然后给或者不给label y.之后对样本进行 ...

随机推荐

  1. 小米Adnroid默认禁止悬浮框的使用,导致开发的悬浮框无法接收事件

    比如你建了一个悬浮框: WindowManager windowManager = getWindowManager(context); int screenWidth = windowManager ...

  2. cordova 基本命令 以及如何添加,删除插件

    1.首先下载安装  node.js 在命令提示符 里 输入 node -v  会显示版本号证明安装成功 2.全局安装 cordova: npm install -g cordova 命令提示符里输入 ...

  3. 在iOS应用程序中使用Frida绕过越狱检测

           阿里聚安全在之前的三篇博客中介绍了利用Frida攻击Android应用程序,整个过程仿佛让开发者开启上帝视角,在本篇博客中,我们将会介绍在iOS应用程序中使用Frida绕过越狱检测.即使 ...

  4. CentOS7.2静默安装oracle11g

    http://www.centoscn.com/image-text/config/2015/0528/5552.html http://www.linuxidc.com/Linux/2016-04/ ...

  5. Linux Centos 6.5_x86安装Nginx

    一.下载 二.编译安装 三.启动.停止.平滑重启 一.下载 地址:http://nginx.org/en/download.html 或者在linux上使用wget命令下载: wget http:// ...

  6. Windows下安装Nodejs步骤

      最近打算把我们的微信端用Vue.js重构,为什么选择Vue.js,一是之前使用的是传统的asp.net mvc,多页面应用用户体验比单页面要差.二是使用过Angular.js,感觉对开发人员要求较 ...

  7. JUnit之断言assert

    一.简介 JUnit4.4引入了Hamcrest框架,Hamcest提供了一套匹配符Matcher,这些匹配符更接近自然语言,可读性高,更加灵活: 使用全新的断言语法:assertThat,结合Ham ...

  8. Day1-while and for/break and continue

    一.while and for 需求:猜年龄,输错三次退出,猜对退出 解决1: age_of_oldboy = 56count = 0while True: if count == 3: print( ...

  9. Android相机是如何获取到图像的

    在研究zxing的过程中,脑袋中一直有个疑惑,那个相机并没有拍照,它是怎么获取图像的 带着这个疑惑查看Camera源码 Camera源码中有这样一个接口: public interface Previ ...

  10. 关于蓝桥杯嵌入式STM32的一点收获

    各社团成员培训时自己总结的一点材料,直接粘过来的,可能有些朋友看不明白,总之这个比赛吧:有很多技巧,掌握到技巧能省我们半个月时间,我说的是针对这个比赛,对于STM32还是要多多练习,总之STM32还是 ...