Reinforcement Learing(强化学习)
一些学习记录,比较浅显,理解加深再更新记录
简介:
强化学习 Reinforcement Learning 是机器学习中的另一大家族.
机器学习有三大分支:有监督学习,无监督学习,强化学习
(1)有监督学习:又称为有导师的学习,即人工给定一组数据,每个数据的属性值也给出,对于数据集中的每个样本,想要算法预测并给出正确答案。以任务为驱动,主要包括两类问题:回归问题,分类问题。
(2)无监督学习:又称为无导师学习,数据一般是没有标签的。以数据为驱动,包括聚类等。
(3)强化学习:强化学习是一种自主性、自学习的学习系统,本质上是一种反复尝试的学习。
强化学习就是给很多样本去学习算法,但是对于样本没有给出对错,你执行完样本后最后给出一个反馈,然后算法通过调整策略和行为来达到最优的状态。
强化学习是一类算法, 是让计算机实现从一开始什么都不懂, 脑袋里没有一点想法, 通过不断地尝试, 从错误中学习, 最后找到规律, 学会了达到目的的方法. 这就是一个完整的强化学习过程.
实际中的强化学习例子有很多, 比如有名的 Alpha go, 机器头一次在围棋场上战胜人类高手, 让计算机自己学着玩经典游戏 Atari, 这些都是让计算机在不断的尝试中更新自己的行为准则, 从而一步步学会如何下好围棋, 如何操控游戏得到高分.
虚拟老师

这个就是虚拟的老师, 这个老师比较吝啬, 他不会告诉你如何移动, 如何做决定, 他为你做的事只有给你的行为打分, 那我们应该以什么形式学习这些现有的资源, 或者说怎么样只从分数中学习到我应该怎样做决定呢? 很简单, 我只需要记住那些高分, 低分对应的行为, 下次用同样的行为拿高分, 并避免低分的行为.
比如老师会根据我的开心程度来打分, 我开心时, 可以得到高分, 我不开心时得到低分. 有了这些被打分的经验, 我就能判断为了拿到高分, 考试的时候你就应该强颜欢笑. 这也是强化学习的核心思想. 可以看出在强化学习中, 一种行为的分数是十分重要的. 所以强化学习具有分数导向性. 我们换一个角度来思考.这种分数导向性好比监督学习中的正确标签.
对比监督学习

监督学习, 是已经有了数据和数据对应的正确标签, 比如这样. 监督学习就能学习出那些脸对应哪种标签. 不过强化学习还要更进一步, 一开始它并没有数据和标签.
他要通过一次次在环境中的尝试, 获取这些数据和标签, 相当于是从零开始,重新考一次才能得到监督学习中直接给定了的数据和标签,比监督学习多了一步自己产生数据和标签;
然后再学习通过哪些数据能够对应哪些标签, 通过学习到的这些规律, 尽可能地选择带来高分的行为 (比如这里的开心脸). 这也就证明了在强化学习中, 分数标签就是他的老师, 他和监督学习中的老师也差不多.
强化学习算法
强化学习是一个大家族, 他包含了很多种算法, 我们也会一一提到之中一些比较有名的算法, 比如有通过行为的价值来选取特定行为的方法, 包括使用表格学习的 q learning, sarsa, 使用神经网络学习的 deep q network, 还有直接输出行为的 policy gradients, 又或者了解所处的环境, 想象出一个虚拟的环境并从虚拟的环境中学习 等等.
强化学习采用的是边获得样例边学习的方式,在获得样例之后更新自己的模型,利用当前的模型来指导下一步的行动,下一步的行动获得reward之后再更新模型,不断迭代重复直到模型收敛。
1.深度学习
深度学习本质上是一个自主的、自学的系统,使用现有的数据来训练算法来发现模式,然后使用这些模式来预测新的数据。 例如,你可以训练一个深度学习算法来识别照片上的猫。你可以通过给它输入数以百万计的图像来达到这个目的,这些图像要么包含猫,要么不包含猫。然后,该程序将通过对图像数据(例如,边缘、形状、颜色、形状之间的距离等)进行分类和聚类来建立模式。这些模式将形成一个预测模型,该预测模型能够查看一组新图像并预测图像中是否包含猫。
深度学习算法通过类似人的大脑中神经元网络的人工神经网络来实现这一点。 这允许算法执行各种循环以缩小模式并改进每个循环的预测结果。
在实践中深度学习的一个很好的例子是Apple的Face ID。在设置手机时,你可以通过扫描脸部来训练算法。每次您登录时,例如使用面部ID,TrueDepth摄像头将捕获数千个数据点,这些数据点将创建您面部的深度图,手机内置的神经引擎将执行分析,以预测登陆的人是不是你。
2.二者的区别
深度学习和强化学习都是自主学习的系统。 它们之间的区别在于,深度学习是从一个训练集学习,然后将该学习应用到一个新的数据集,而强化学习是通过在连续反馈的基础上调整动作来动态学习,以最大化回报。
深度学习和强化学习并不是相互排斥的。 事实上,你可以在强化学习系统中使用深度学习,这被称为深度强化学习。
强化学习是机器学习的一大分支,细致了解推荐阅读这篇博客:
从零开始学人工智能--强化学习: 强化学习入门基础
网友评论