人工智能–强化学习

人工智能之强化学习(RL)

当前人工智能之机器学习算法主要有7大类:1)监督学习(Supervised Learning),2)无监督学习(Unsupervised Learning),3)半监督学习(Semi-supervised Learning),4)深度学习(Deep Learning),5)强化学习(Reinforcement Learning),6)迁移学习(Transfer Learning),7)其他(Others)。

对于1)-4)部分内容,请查看公众号“科技优化生活”之前相关文章。^_^

今天我们重点探讨一下强化学习(RL)。

强化学习(RL),又称再励学习、评价学习,是一种重要的机器学习方法,在智能控制机器人及分析预测等领域有许多应用。

那么什么是强化学习?

强化学习是智能系统从环境到行为映射的学习,以使奖励信号(强化信号)函数值最大,强化学习不同于连接主义学习中的监督学习,主要表现在教师信号上,强化学习中由环境提供的强化信号是对产生动作的好坏作一种评价(通常为标量信号),而不是告诉强化学习系统RLS(reinforcement learning system)如何去产生正确的动作。由于外部环境提供的信息很少,RLS必须靠自身的经历或能力进行学习。通过这种方式,RLS在行动-评价的环境中获得知识,改动方案以适应环境

通俗的讲,就是当一个小孩学习有迷茫或困惑时,如果老师发现小孩方法或思路正确,就给他(她)正反馈(奖励或鼓励);否则就给他(她)负反馈(教训或惩罚),激励小孩的潜能,强化他(她)自我学习能力,依靠自身的力量来主动学习和不断探索,最终让他(她)找到正确的方法或思路,以适应外部多变的环境。

强化学习有别于传统的机器学习,不能立即得到标记,而只能得到一个反馈(奖或罚),可以说强化学习是一种标记延迟的监督学习。强化学习是从动物学习、参数扰动自适应控制等理论发展而来的。

强化学习原理:

如果Agent的某个行为策略导致环境正的奖赏(强化信号),那么Agent以后产生这个行为策略的趋势加强。Agent的目标是在每个离散状态发现最优策略以使期望的折扣奖赏和最大。

强化学习把学习看作试探评价过程,Agent选择一个动作用于环境,环境接受该动作后状态发生变化,同时产生一个强化信号(奖或惩)反馈给Agent,Agent根据强化信号和环境当前状态再选择下一个动作,选择的原则是使受到正强化(奖)的概率增大。选择的动作不仅影响立即强化值,而且影响环境下一时刻的状态及最终的强化值。

若已知R/A梯度信息,则可直接可以使用监督学习算法。因为强化信号R与Agent产生的动作A没有明确的函数形式描述,所以梯度信息R/A无法得到。因此,在强化学习系统中,需要某种随机单元,使用这种随机单元,Agent在可能动作空间中进行搜索并发现正确的动作。

强化学习模型

强化学习模型包括下面几个要素:

1)规则(policy):规则定义了Agent在特定的时间特定的环境下的行为方式,可以视为是从环境状态到行为的映射,常用π来表示。可以分为两类:

确定性的policy(Deterministic policy):a=π(s)

随机性的policy(Stochastic policy):π(a|s)=P[At=a|St=t]

其中,t是时间点,t=0,1,2,3,……

St∈S,S是环境状态的集合,St代表时刻t的状态,s代表其中某个特定的状态;

At∈A(St),A(St)是在状态St下的actions的集合,At代表时刻t的行为,a代表其中某个特定的行为。

2)奖励信号(areward signal):Reward是一个标量值,是每个time step中环境根据agent的行为返回给agent的信号,reward定义了在该情景下执行该行为的好坏,agent可以根据reward来调整自己的policy。常用R来表示。

3)值函数(valuefunction):Reward定义的是立即的收益,而value function定义的是长期的收益,它可以看作是累计的reward,常用v来表示。

4)环境模型(a modelof the environment):整个Agent和Environment交互的过程可以用下图来表示:

Agent作为学习系统,获取外部环境Environment的当前状态信息St,对环境采取试探行为At,并获取环境反馈的对此动作的评价Rt+1和新的环境状态St+1。如果Agent的某动作At导致环境Environment的正奖赏(立即报酬),那么Agent以后产生这个动作的趋势便会加强;反之,Agent产生这个动作的趋势将减弱。在强化学习系统的控制行为与环境反馈的状态及评价的反复交互作用中,以学习的方式不断修改从状态到动作的映射策略达到优化系统性能目的

强化学习设计考虑:

1)如何表示状态空间和动作空间。

2)如何选择建立信号以及如何通过学习来修正不同状态-动作对的值。

3)如何根据这些值来选择适合的动作。

强化学习常见算法:

强化学习的常见算法包括:1)时间差分学习(Temporal difference learning);2)Q学习(Q learning);3)学习自动(LearningAutomata);4)状态-行动-回馈-状态-行动(State-Action-Reward-State-Action)等。

强化学习目标:

强化学习通过学习从环境状态到行为的映射,使得智能体选择的行为能够获得环境最大的奖赏,使得外部环境对学习系统在某种意义下的评价(或整个系统的运行性能)为最佳。简单的说,强化学习的目标动态地调整参数,达到强化信号最大

强化学习应用前景:

前段时间被刷屏的机器人,大家一定不陌生吧,来自波士顿动力的机器人凭借出色的平衡性给大家留下了深刻的印象。机器人控制领域就使用了大量的强化学习技术。除此之外,游戏、3D图像处理、棋类(2016年备受瞩目的AlphaGo围棋)、等领域都有应用。

机 器 人

游 戏

3D 图 像 处 理

人 机 大 战

结语:

强化学习是通过对未知环境一边探索一边建立环境模型以及学习得到一个最优策略。强化学习与其他机器学习算法不同的地方在于没有监督者,只有一个Reward信号,而且反馈是延迟的。强化学习是人工智能之机器学习中一种快速、高效且不可替代的学习算法,实际上强化学习是一套很通用的解决人工智能问题的框架,值得人们去研究。另外,深度学习[参见人工智能(22)]和强化学习相结合,不仅给强化学习带来端到端优化便利,而且使得强化学习不再受限于低维空间,极大地拓展了强化学习的使用范围。谷歌DeepMind中深度强化学习领头人David Silver曾经说过,深度学习(DL)+ 强化学习(RL) = 人工智能(AI)

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180409G1UXI300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券