“敢于尝试,才有突破”

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. java中构造方法和this,static关键字

    构造方法: 构造方法是一种特殊的方法,用于创建该类的对象,对对象的数据进行初始化 格式如下: [修饰符] 类名(形参列表){ 方法体 } 特点 A:方法名和类名相同  B:没有返回值类型,连void都 ...

  2. 博弈论(Game Theory) - 03 - 前传之最大最小均衡

    博弈论(Game Theory) - 03 - 前传之最大最小均衡 开始 最大最小均衡是由人冯·诺依曼和摩根斯坦提出.冯·诺依曼和摩根斯坦也被认为是博弈论的创始人. 冯·诺依曼提出的"最大最 ...

  3. 使用java API操作hdfs--拷贝部分文件到hdfs

    要求如下: 自行在本地文件系统生成一个大约一百多字节的文本文件,写一段程序(可以利用Java API或C API),读入这个文件,并将其第101-120字节的内容写入HDFS成为一个新文件. impo ...

  4. 前端魔法堂:onsubmit和submit事件处理函数怎么不生效呢?

    前言  最近在用Polymer增强form,使其支持表单的异步提交,但发现明明订阅了onsubmit和submit事件,却怎么也触发不了.下面我们将一一道来. 提交表单的方式 表单仅含一个以下的元素时 ...

  5. hdu1198 Farm Irrigation 并查集

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1198 简单并查集 分别合并竖直方向和水平方向即可 代码: #include<iostream&g ...

  6. 如何用Ettercap实现“中间人攻击”(附下载链接)

    什么是“中间人攻击”? 中间人攻击(Man-in-the-Middle Attack,简称“MiTM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在 ...

  7. clojure 使用阿里云仓库

    clojure 使用阿里云仓库 学习一门语言,如果没有梯子真的是一件非常痛苦的事情,好在阿里巴巴为我们java程序员提供了maven镜像.近期学习clojure,为了找解决方案在stackoverfl ...

  8. SQL SERVER大话存储结构(3)_数据行的行结构

            一行数据是如何来存储的呢?     变长列与定长列,NULL与NOT NULL,实际是如何整理存放到 8k的数据页上呢?     对表格进行增减列,修改长度,添加默认值等DDL SQL ...

  9. React-Router 4 的新玩意儿

    上一个项目用的还是 2.6.1,转眼的功夫 4.0 都发布了,API 变化实在有点大,2.X那套东西不顶用了,老老实实重新看一遍文档,其中有几点需要注意的,拿出来说一说. 本文只讨论针对浏览器的应用, ...

  10. Hibernate原理

    Hibernate使用基本上会,但是却一直不知道Hibernate内部是怎么工作的 什么是Hibernate? Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象 ...