监督学习、无监督学习和强化学习:工作流程基础

机器算法验证 机器学习 无监督学习 监督学习 强化学习
2022-02-08 02:42:49

监督学习

  • 1) 人类根据输入输出数据构建分类器
  • 2) 该分类器使用训练数据集进行训练
  • 3)该分类器使用测试数据集进行测试
  • 4)如果输出令人满意则部署

用于“我知道如何对这些数据进行分类,我只需要你(分类器)对其进行排序”时使用。

方法要点:分类标签或产生实数

无监督学习

  • 1) 人类根据输入数据构建算法
  • 2)该算法使用测试数据集进行测试(算法在其中创建分类器)
  • 3)如果分类器令人满意,则部署

用于“我不知道如何对这些数据进行分类,你(算法)可以为我创建分类器吗?”时使用。

方法要点:分类标签或预测 (PDF)

强化学习

  • 1) 人类根据输入数据构建算法
  • 2)该算法呈现出一种状态,该状态取决于用户通过算法采取的行动奖励或惩罚算法的输入数据,这种状态会随着时间的推移而持续
  • 3)该算法从奖励/惩罚中学习并自我更新,这继续
  • 4) 它始终在生产中,它需要学习真实数据才能呈现来自状态的动作

用于“我不知道如何对这些数据进行分类,你能对这些数据进行分类吗?如果正确我会给你奖励,否则我会惩罚你。”

这些做法的流程是这样吗,我听到很多关于他们所做的事情,但实用示范性的信息却少得可怜

2个回答

这是对基本思想的非常简洁的介绍!

强化学习

我认为您对强化学习的用例描述并不完全正确。分类这个词是不恰当的。更好的描述是:

我 不 知道在 这种环境下 怎么, 你 能 找到 一个 好的行为, 同时 我 给 你反馈.

换句话说,目标是更好地控制某事,而不是很好地分类某事。

输入

  • 定义 环境
    • 所有可能的状态
    • 各州可能采取的行动
  • 奖励函数取决于状态和/或动作

算法

  • 中介
    • 处于一种状态
    • 采取行动转移到另一个状态
    • 获得状态中的动作的奖励

输出

  • 代理想要找到一个最大化奖励的最优策略

免责声明:我不是专家,我什至从来没有做过强化学习的事情(还),所以欢迎任何反馈......

这是一个答案,它在您的列表中添加了一些微小的数学注释以及关于何时使用什么的一些不同想法。我希望枚举足够不言自明:

监督

  1. 我们有数据D={(x0,y0),(x1,y1),,(xn,yn)}
  2. 我们寻找模型g最大限度地减少一些损失/成本措施L(yi,g(xi))对于所有点0i<l
  3. 我们通过计算损失/成本来评估模型L对于其余数据(lin) 以了解模型的泛化程度

我们可以给出例子,但我们不能给出从输入到输出的算法

分类和回归的设置

无监督

  1. 我们有数据D={x0,x1,,xn}
  2. 我们寻找模型g这让我们对我们的数据有了一些了解。
  3. 我们几乎没有衡量标准来说明我们是否做了有用/有趣的事情

我们有一些数据,但我们不知道从哪里开始寻找有用/有趣的东西

设置聚类、降维、寻找隐藏因素、生成模型等。

加强

  1. 我们没有数据
  2. 我们构建一个模型g生成数据的xi(通常称为动作),它可以基于测量和/或先前的动作,试图最大化一些奖励措施R(xi),这通常是模型不知道的(它也需要学习)。
  3. 在它有一段时间学习后,我们通过奖励函数进行评估。

我们不知道如何做某事,但我们可以说它是对还是错

这似乎对顺序决策任务特别有用。

参考文献:
Si, J.、Barto, A.、Powell, W. 和 Wunsch, D. (2004) 强化学习及其与监督学习的关系,《学习和近似动态规划手册》,John Wiley & Sons, Inc.,美国新泽西州霍博肯。doi: 10.1002/9780470544785.ch2