机器学习中14种不同类型的学习

机器学习是一个庞大的研究领域,它与人工智能等许多相关领域重叠并继承其思想。

该领域的重点是学习,即从经验中获取技能或知识。最常见的是,这意味着从历史数据中综合出有用的概念。

因此,作为机器学习领域的从业者,您可能会遇到许多不同类型的学习:从整个研究领域到具体的技术。

在这篇文章中,您将发现一个关于机器学习领域中可能遇到的不同类型学习的入门介绍。

阅读本文后,你将了解:

  • 研究领域,例如监督学习、无监督学习和强化学习。
  • 混合学习类型,例如半监督学习和自监督学习。
  • 广泛的技术,例如主动学习、在线学习和迁移学习。

让我们开始吧。

Types of Learning in Machine Learning

机器学习中的学习类型
照片由 Lenny K Photography 提供,保留部分权利。

学习类型

鉴于机器学习领域的重点是“学习”,因此您作为从业者可能会遇到许多类型。

有些学习类型描述了整个研究子领域,包含许多不同类型的算法,例如“监督学习”。其他类型则描述了您可以在项目中使用的强大技术,例如“迁移学习”。

作为机器学习从业者,您必须了解大约 14 种学习类型;它们是

学习问题

  • 1. 有监督学习
  • 2. 无监督学习
  • 3. 强化学习

混合学习问题

  • 4. 半监督学习
  • 5. 自监督学习
  • 6. 多实例学习

统计推断

  • 7. 归纳学习
  • 8. 演绎推理
  • 9. 转导学习

学习技术

  • 10. 多任务学习
  • 11. 主动学习
  • 12. 在线学习
  • 13. 迁移学习
  • 14. 集成学习

在接下来的章节中,我们将逐一仔细探讨。

我是否遗漏了重要的学习类型?
在下面的评论中告诉我。

学习问题

首先,我们将仔细研究机器学习中的三种主要学习问题:监督学习、无监督学习和强化学习。

1. 有监督学习

监督学习描述了一类问题,涉及使用模型学习输入示例与目标变量之间的映射。

训练数据包含输入向量的示例及其对应的目标向量的应用被称为监督学习问题。

— 第 3 页,模式识别与机器学习,2006 年。

模型在由输入和输出组成的训练数据上进行拟合,并用于对仅提供输入的测试集进行预测。模型输出与保留的目标变量进行比较,并用于估计模型的技能。

学习是通过在可能的假设空间中搜索一个能够良好执行的假设,即使是在训练集以外的新示例上也是如此。为了衡量假设的准确性,我们为其提供了一组与训练集不同的示例。

— 第 695 页,人工智能:现代方法,第三版,2015 年。

监督学习问题主要有两种类型:分类,涉及预测类别标签;回归,涉及预测数值。

  • 分类:监督学习问题,涉及预测类别标签。
  • 回归:监督学习问题,涉及预测数值标签。

分类和回归问题都可以有一个或多个输入变量,输入变量可以是任何数据类型,例如数值或类别。

分类问题的示例是 MNIST 手写数字数据集,其中输入是手写数字的图像(像素数据),输出是图像代表的数字的类别标签(0 到 9)。

回归问题的示例是 波士顿房价数据集,其中输入是描述邻近区域的变量,输出是美元的房价。

一些机器学习算法被描述为“监督”机器学习算法,因为它们是为监督学习问题设计的。流行的例子包括:决策树支持向量机以及更多。

我们的目标是找到一个有用的近似函数 f(x) 来逼近潜在的输入和输出之间的预测关系函数 f(x)。

— 第 28 页,统计学习要素:数据挖掘、推理和预测,第二版,2016 年。

算法被称为“监督”是因为它们通过提供示例输入数据进行预测来学习,并且模型通过算法进行监督和纠正,以便在训练数据集中更好地预测预期的目标输出。

监督学习一词源于将目标 y 由指示者或教师提供,向机器学习系统展示如何做。

— 第 105 页,深度学习,2016 年。

某些算法可能专门用于分类(例如 逻辑回归)或回归(例如线性回归),而某些算法经过少量修改后可用于这两类问题(例如人工神经网络)。

2. 无监督学习

无监督学习描述了一类问题,涉及使用模型来描述或提取数据中的关系。

与监督学习相比,无监督学习仅对输入数据进行操作,没有输出或目标变量。因此,无监督学习不像监督学习那样有教师来纠正模型。

在无监督学习中,没有指示者或教师,算法必须在没有此指导的情况下学会理解数据。

— 第 105 页,深度学习,2016 年。

无监督学习有许多类型,尽管从业者经常遇到两个主要问题:聚类,涉及在数据中查找组;密度估计,涉及总结数据分布。

  • 聚类:无监督学习问题,涉及在数据中查找组。
  • 密度估计:无监督学习问题,涉及总结数据分布。

聚类算法的一个例子是 k-Means,其中 *k* 指的是要在数据中发现的聚类数量。密度估计算法的一个例子是 核密度估计,它涉及使用一组紧密相关的数据样本来估计问题空间中新点的分布。

最常见的无监督学习任务是聚类:检测数据中可能存在的有用的输入示例簇。例如,出租车代理可能会逐渐形成“交通顺畅日”和“交通不畅日”的概念,而无需教师提供每个类别的标记示例。

— 第 694-695 页,人工智能:现代方法,第三版,2015 年。

可以进行聚类和密度估计以了解数据中的模式。

还可以使用其他无监督方法,例如可视化,涉及以不同方式绘制或绘制数据;以及降维方法,涉及降低数据的维度。

  • 可视化:无监督学习问题,涉及创建数据图。
  • 降维:无监督学习问题,涉及创建数据的低维表示。

可视化技术的一个例子是散点图矩阵,它会为数据集中每对变量创建一个散点图。降维方法的一个例子是 主成分分析,它涉及根据特征值和特征向量总结数据集,并去除线性相关性。

在这些无监督学习问题中,目标可能是发现数据中相似示例的组(称为聚类),或确定输入空间内数据的分布(称为密度估计),或将数据从高维空间降到二维或三维以进行可视化。

— 第 3 页,模式识别与机器学习,2006 年。

3. 强化学习

强化学习描述了一类问题,其中代理在环境中运行,并且必须通过反馈来学习操作。

强化学习是学习做什么——如何将情况映射到行动——以最大化数值奖励信号。学习者没有被告知采取哪些行动,而是必须通过尝试来发现哪些行动能带来最多的奖励。

— 第 1 页,强化学习:导论,第二版,2018 年。

使用环境意味着没有固定的训练数据集,而是代理需要实现的目标或目标集、它们可以执行的动作以及关于实现目标的性能的反馈。

一些机器学习算法不仅仅是体验固定的数据集。例如,强化学习算法与环境交互,因此学习系统与其经验之间存在反馈循环。

— 第 105 页,深度学习,2016 年。

它类似于监督学习,因为模型有一定的响应可以学习,尽管反馈可能是延迟的且统计噪声很大,这使得代理或模型难以将因果关系联系起来。

强化学习问题的一个例子是玩游戏,其中代理的目标是获得高分,并且可以进行游戏中的移动,并根据惩罚或奖励获得反馈。

在许多复杂领域,强化学习是训练程序以高水平执行的唯一可行方法。例如,在玩游戏时,人类很难对大量位置提供准确一致的评估,而这些评估是直接从示例训练评估函数所必需的。相反,程序可以被告知何时获胜或失败,并可以使用此信息来学习一个评估函数,该函数可以对从任何给定位置获胜的概率进行相当准确的估计。

— 第 831 页,人工智能:现代方法,第三版,2015 年。

近期令人印象深刻的成果包括谷歌 AlphaGo 在击败世界顶级围棋棋手时使用强化学习。

强化学习算法的一些流行示例包括 Q-learning、temporal-difference learning 和 deep reinforcement learning。

混合学习问题

无监督学习和监督学习之间的界限是模糊的,并且有许多混合方法借鉴了这两个研究领域。

在本节中,我们将仔细研究一些更常见的混合研究领域:半监督学习、自监督学习和多实例学习。

4. 半监督学习

半监督学习是监督学习的一种,其中训练数据包含很少的标记示例和大量的未标记示例。

半监督学习模型的目标是有效地利用所有可用数据,而不仅仅是标记数据,如监督学习所示。

在半监督学习中,我们收到一些标记的示例,并且必须利用大量的未标记示例。即使标签本身也可能不是我们希望的权威真理。

— 第 695 页,人工智能:现代方法,第三版,2015 年。

有效利用未标记数据可能需要使用或受无监督方法(如聚类和密度估计)的启发。一旦发现组或模式,就可以使用监督方法或监督学习的思想来标记未标记的示例,或将标签应用于稍后用于预测的未标记表示。

无监督学习可以为如何在表示空间中对示例进行分组提供有用的线索。在输入空间中紧密聚类的示例应映射到相似的表示。

— 第 243 页,深度学习,2016 年。

由于标记示例的成本或计算成本,许多现实世界的监督学习问题通常是半监督学习问题的示例。例如,对照片进行分类需要由人工操作员已经标记过的照片数据集。

计算机视觉(图像数据)、自然语言处理(文本数据)和自动语音识别(音频数据)等领域的许多问题都属于此类,并且难以通过标准的监督学习方法来解决。

… 在许多实际应用中,标记数据非常稀少,但未标记数据却很丰富。“半监督”学习试图通过利用未标记数据中的信息来提高监督学习的准确性。这听起来像魔法,但确实有效!

— 第 467 页,数据挖掘:实用机器学习工具和技术,第四版,2016 年。

5. 自监督学习

自监督学习是指将无监督学习问题构建为监督学习问题,以便应用监督学习算法来解决它。

监督学习算法用于解决替代或预设任务,其结果是可用于原始(实际)建模问题解决方案的模型或表示。

自监督学习框架只需要未标记的数据即可构建预设学习任务,例如预测上下文或图像旋转,而无需监督即可计算目标对象。

重访自监督视觉表示学习,2019 年。

自监督学习的一个常见例子是计算机视觉,其中存在大量未标记图像语料库,可用于训练监督模型,例如将图像灰度化并让模型预测彩色表示(着色)或移除图像块并让模型预测缺失部分(修复)。

在判别式自监督学习中,这是本工作的重点,模型在辅助或“预设”任务上进行训练,该任务的地面真实情况是免费提供的。在大多数情况下,预设任务涉及预测数据的一些隐藏部分(例如,预测灰度图像的颜色

扩展和基准测试自监督视觉表示学习,2019 年。

自监督学习算法的一个通用示例是 自编码器。这是一类神经网络,用于创建输入样本的紧凑或压缩表示。它们通过包含编码器和解码器部分,中间由代表输入内部紧凑表示的瓶颈的模型来实现这一点。

自编码器是一种神经网络,它被训练来尝试将输入复制到输出。在内部,它有一个隐藏层 *h*,该层描述了用于表示输入的代码。

— 第 502 页,深度学习,2016 年。

这些自编码器模型通过将输入同时作为输入和目标输出提供来训练,要求模型通过先将其编码为压缩表示,然后将其解码回原始状态来重现输入。训练完成后,丢弃解码器,仅根据需要使用编码器来创建输入的紧凑表示。

尽管自编码器使用监督学习方法进行训练,但它们解决了无监督学习问题,即它们是一种用于降低输入数据维度的降维方法。

传统上,自编码器用于降维或特征学习。

— 第 502 页,深度学习,2016 年。

自监督学习的另一个例子是 生成对抗网络(GANs)。这些是生成模型,通常用于使用目标域的未标记示例集合来创建合成照片。

GAN 模型通过单独的判别器模型进行间接训练,该模型将来自目标域的照片示例分类为真实或伪造(生成的),然后将结果反馈给 GAN 模型进行更新,并鼓励它在下一次迭代中生成更逼真的照片。

生成器网络直接生成样本 […]。它的对手,即判别器网络,试图区分从训练数据中抽取的样本和从模型中抽取的样本。判别器发出一个由 d(x; θ(d)) 给出的概率值,表示 x 是真实训练示例而不是从模型中抽取的伪造样本的概率。

— 第 699 页,深度学习,2016 年。

6. 多实例学习

多实例学习是一种监督学习问题,其中单个示例是未标记的;相反,包或组样本是标记的。

在多实例学习中,整个示例集合被标记为包含或不包含某个类别的示例,但集合的单个成员未被标记。

— 第 106 页,深度学习,2016 年。

实例存在于“”而不是集合中,因为给定的实例可能出现一次或多次,例如重复。

建模涉及利用一个或多个实例与目标标签相关联的知识,并在给定其多未标记示例的组成的情况下,预测未来新包的标签。

在监督多实例学习中,每个包都关联一个类别标签,学习的目标是确定如何从构成包的实例中推断出类别。

— 第 156 页,数据挖掘:实用机器学习工具和技术,第四版,2016 年。

简单的方法,例如为单个实例分配类别标签并使用标准的监督学习算法,通常是很好的第一步。

统计推断

推断是指得出结果或做出决定。

在机器学习中,拟合模型和进行预测都属于推断。

存在不同的推断范式,可作为理解某些机器学习算法工作方式或某些学习问题如何处理的框架。

一些学习方法的示例是归纳、演绎和转导学习与推断。

7. 归纳学习

归纳学习涉及使用证据来确定结果。

归纳推理是指使用具体案例来确定普遍结果,例如从具体到普遍。

大多数机器学习模型通过一种归纳推断或归纳推理类型进行学习,即从具体的历史示例(数据)中学习通用的规则(模型)。

… 归纳问题,即如何从过去的具体观察中得出关于未来的普遍结论。

— 第 77 页,机器学习:概率视角,2012 年。

拟合机器学习模型是一个归纳过程。模型是从训练数据集中具体示例的概括。

使用训练数据对问题进行建模或假设,并认为模型在模型使用时对新的未见过的数据也适用。

在没有任何进一步信息的情况下,我们的假设是,关于未见过实例的最佳假设是最佳拟合已观察到的训练数据的假设。这是归纳学习的基本假设……

— 第 23 页,机器学习,1997 年。

8. 演绎推理

演绎或演绎推理是指使用普遍规则来确定具体结果。

通过与演绎对比,我们可以更好地理解归纳。

演绎是归纳的逆过程。如果归纳是从具体到普遍,那么演绎就是从普遍到具体。

… 归纳只是演绎的逆过程这一简单观察!

— 第 291 页,机器学习,1997 年。

演绎是一种自上而下的推理类型,它要求在确定结论之前满足所有前提,而归纳是一种自下而上的推理类型,它使用可用数据作为结果的证据。

在机器学习的上下文中,一旦我们使用归纳在训练数据集上拟合模型,该模型就可以用于进行预测。模型的使用是一种演绎或演绎推理。

9. 转导学习

转导转导学习在统计学习理论领域中用于指从特定领域的特定示例预测特定示例。

它不同于归纳,归纳涉及从具体示例中学习通用规则,例如从具体到具体。

归纳,从给定数据中导出函数。演绎,为感兴趣的点导出给定函数的值。转导,从给定数据中为感兴趣的点导出未知函数的值。

— 第 169 页,统计学习的本质,1995 年。

与归纳不同,不需要泛化;相反,直接使用具体示例。事实上,这可能是一个比归纳更简单的问题。

估计感兴趣的给定点的函数值的模型描述了一种新的推理概念:从具体到具体。我们称这种类型的推理为转导推理。请注意,当希望从有限的信息中获得最佳结果时,会出现这种推理概念。

— 第 169 页,统计学习的本质,1995 年。

转导算法的一个经典示例是 k-Nearest Neighbors 算法,该算法不建模训练数据,而是每次需要预测时直接使用它。

有关转导主题的更多信息,请参阅教程

归纳、演绎和转导的对比

我们可以从机器学习的角度对比这三种推断类型。

例如

  • 归纳:从具体示例中学习通用模型。
  • 演绎:使用模型进行预测。
  • 转导:使用具体示例进行预测。

下图很好地总结了这三种不同的方法。

Relationship-between-Induction-Deduction-and-Transduction

归纳、演绎和转导之间的关系
摘自《统计学习的本质》。

学习技术

有许多技术被描述为学习类型。

在本节中,我们将仔细研究一些更常见的方法。

这包括多任务学习、主动学习、在线学习、迁移学习和集成学习。

10. 多任务学习

多任务学习是一种监督学习,涉及在解决多个相关问题的单个数据集上拟合模型。

它涉及设计一个模型,该模型可以跨多个相关任务进行训练,从而通过跨任务训练来提高模型性能,而不是在任何单个任务上进行训练。

多任务学习是通过汇集来自多个任务的示例(可以看作是对参数施加的软约束)来改进泛化的方法。

— 第 244 页,深度学习,2016 年。

当某个任务有大量标记输入数据可供另一个标记数据少得多的任务共享时,多任务学习可以是一种有用的问题解决方法。

… 我们可能希望同时学习多个相关模型,这被称为多任务学习。这将使我们能够从数据量大的任务中“借用统计力量”,并将其共享给数据量小的任务。

第 231 页,机器学习:概率视角,2012 年。

例如,多任务学习问题通常涉及相同的输入模式,这些模式可用于多个不同的输出或监督学习问题。在这种设置中,每个输出可以由模型的不同部分进行预测,从而使模型的核心能够跨相同的输入进行泛化。

就像额外的训练示例会给模型的参数施加更大的压力以达到泛化良好的值一样,当模型的一部分跨任务共享时,该模型部分会更受约束以获得好的值(假设共享是合理的),通常会产生更好的泛化。

— 第 244 页,深度学习,2016 年。

多任务学习的一个流行示例是使用相同的词嵌入来学习文本中单词的分布式表示,然后将其跨多个不同的自然语言处理监督学习任务共享。

11. 主动学习

主动学习是一种技术,在这种技术中,模型能够在学习过程中查询人类用户操作员,以解决学习过程中的歧义。

主动学习:学习者通过自适应或交互式地收集训练示例,通常通过查询一个“预言家”来请求新点的标签。

— 第 7 页,《机器学习基础》,第二版,2018 年。

主动学习是监督学习的一种类型,它寻求达到与所谓的“被动”监督学习相同或更好的性能,但通过更有效地收集或使用模型所需的数据。

主动学习的核心思想是,如果机器学习算法可以选择它从中学习的数据,它就能以更少的训练标签获得更高的准确性。主动学习者可能会提出查询,通常是以未标记的数据实例的形式,由“预言家”(例如,人类标注员)进行标记。

— 《主动学习文献调查》,2009 年。

将主动学习视为解决半监督学习问题的方法,或者作为解决同类问题的另一种范式,这并非不合理。

… 我们看到,主动学习和半监督学习从相反的方向攻击同一个问题。虽然半监督方法利用了学习者对未标记数据的了解,但主动方法试图探索未知方面。因此,考虑将两者结合起来是很自然的。

— 《主动学习文献调查》,2009 年。

当可用数据不多且新数据收集或标记成本高昂时,主动学习是一种有用的方法。

主动学习过程允许以一种最小化样本数量并最大化模型有效性的方式来指导域的采样。

主动学习经常应用于难以获得标签的应用中,例如计算生物学应用。

— 第 7 页,《机器学习基础》,第二版,2018 年。

12. 在线学习

在线学习涉及使用可用数据,在需要进行预测之前或在最后一次观察之后直接更新模型。

在线学习适用于那些随着时间推移提供观测值,并且观测值的概率分布也可能随时间变化的问。因此,模型需要同样频繁地变化,以捕捉和利用这些变化。

传统机器学习是离线进行的,这意味着我们有一批数据,然后优化一个方程 […] 然而,如果我们有流式数据,我们就需要进行在线学习,这样我们就可以在每个新数据点到达时更新我们的估计,而不是等到“结束”(这可能永远不会发生)。

— 第 261 页,《机器学习:概率视角》,2012 年。

该方法也适用于那些观测值多于合理内存容量的算法,因此,学习是根据观测值(例如数据流)进行增量式学习的。

当数据随时间快速变化时,在线学习很有帮助。对于涉及大量且不断增长的数据集,即使变化是渐进的,在线学习也很有用。

— 第 753 页,《人工智能:现代方法》,第三版,2015 年。

总的来说,在线学习旨在最小化“遗憾”,即模型与如果所有可用信息都作为批量数据可用时的性能相比,其表现如何。

在理论机器学习界,在线学习中使用的目标是遗憾,即相对于我们事后使用单一固定参数值可能获得的最佳性能而言,平均损失。

— 第 262 页,《机器学习:概率视角》,2012 年。

在线学习的一个例子是用于拟合人工神经网络的所谓随机或在线梯度下降。

随机梯度下降最小化泛化误差这一事实在在线学习案例中最容易理解,其中示例或小批量数据是从数据流中抽取的。

— 第 281 页,《深度学习》,2016 年。

13. 迁移学习

迁移学习是一种学习类型,其中模型首先在一项任务上进行训练,然后该模型的部分或全部被用作相关任务的起点。

在迁移学习中,学习者必须执行两个或多个不同的任务,但我们假设解释 P1 中变化的许多因素与需要为学习 P2 捕获的变化相关。

— 第 536 页,《深度学习》,2016 年。

对于存在与主要感兴趣的任务相关的任务,并且相关任务具有大量数据的问题,这是一种有用的方法。

它与多任务学习不同,因为在迁移学习中任务是顺序学习的,而多任务学习则旨在在同一时间并行使用单个模型在所有考虑的任务上都取得良好性能。

… 使用 1000 个 ImageNet 对象类别的一个子集对一个包含 8 层权重t的深度卷积网络进行预训练,然后用第一个网络的 k 层初始化一个相同大小的网络。然后,对第二个网络的所有层(顶层随机初始化)进行联合训练,以执行另一组任务(1000 个 ImageNet 对象类别的另一个子集),其训练样本少于第一组任务。

— 第 325 页,《深度学习》,2016 年。

例如图像分类,其中可以使用像人工神经网络这样的预测模型,在大量的通用图像语料库上进行训练,然后模型的权重可以作为训练较小、更具体的数据集(如猫狗照片)的起点。模型在更广泛的任务上学习到的特征,如提取线和图案,将有助于新的相关任务。

如果第一个设置(从 P1 采样)中的数据显著更多,那么这可能有助于学习有用的表示,以便从 P2 中抽取的极少样本中快速泛化。许多视觉类别共享边缘和视觉形状、几何变化的影响、光照变化等低级概念。

— 第 536 页,《深度学习》,2016 年。

如前所述,迁移学习在增量训练的模型中特别有用,现有模型可以作为继续训练的起点,例如深度学习网络。

有关迁移学习主题的更多信息,请参阅教程

14. 集成学习

集成学习是一种方法,其中两个或多个模型在相同数据上进行拟合,并组合每个模型的预测。

集成学习领域提供了许多组合集成成员预测的方法,包括统一加权和在验证集上选择的权重。

— 第 472 页,《深度学习》,2016 年。

集成学习的目标是让集成模型比任何单个模型取得更好的性能。这包括决定如何创建集成中使用的模型以及如何最好地组合集成成员的预测。

集成学习可以分为两项任务:从训练数据中开发一组基础学习器,然后将它们组合起来形成复合预测器。

— 第 605 页,《统计学习要素:数据挖掘、推理和预测》,第二版,2016 年。

集成学习是提高问题域预测能力和降低随机学习算法(如人工神经网络)方差的有用方法。

一些流行的集成学习算法示例包括:加权平均、堆叠泛化(堆叠)和自举聚合(装袋)。

装袋、提升和堆叠在过去二十年里得到发展,它们的性能通常好得惊人。机器学习研究人员一直在努力理解为什么。

— 第 480 页,《数据挖掘:实践机器学习工具和技术》,第四版,2016 年。

有关集成学习主题的更多信息,请参阅教程

进一步阅读

如果您想深入了解,本节提供了更多关于该主题的资源。

书籍

论文

教程

视频

文章

总结

在这篇文章中,您将发现对机器学习领域中可能遇到的各种学习类型有一个初步的了解。

具体来说,你学到了:

  • 研究领域,例如监督学习、无监督学习和强化学习。
  • 混合学习类型,例如半监督学习和自监督学习。
  • 广泛的技术,例如主动学习、在线学习和迁移学习。

你有什么问题吗?
在下面的评论中提出你的问题,我会尽力回答。

101 条回复《机器学习中的 14 种不同学习类型》

  1. Avram 2019 年 11 月 11 日 7:23 AM #

    嗨,Jason,
    又一篇很棒的文章。感谢您。
    您是否计划发布有关强化学习的示例和问题?

    • Jason Brownlee 2019 年 11 月 11 日 1:32 PM #

      谢谢。

      也许将来。您为什么对这个主题感兴趣?

      • Gareth 2019 年 11 月 11 日 8:47 PM #

        更多关于强化学习的实践性文本会很好。该领域的材料要么过于侧重理论,要么与现有的 OpenAI Gym 环境重复过多。

        • Jason Brownlee 2019 年 11 月 12 日 6:38 AM #

          谢谢。

          这项技术看起来除了游戏(例如 Gym)和机器人技术之外,对其他任何东西都无用。这也许就是没有有用示例的原因。

          • Avram 2019 年 11 月 12 日 9:34 AM #

            我不同意您的观点。您可以在旅行推销员问题、作业调度、车辆路线问题等尚未发现的领域中使用强化学习。因此,我认为该主题将来在许多工业领域都将大有可为。

          • Jason Brownlee 2019 年 11 月 12 日 2:02 PM #

            你可以,但经典的组合优化方法能更好地、更快速地处理这些问题。例如,据我所知,你不会“在工作中使用”它。

          • Pierre 2020 年 9 月 2 日 11:52 AM #

            关于组合优化方法,您推荐哪些 Python 库来处理典型的工程优化问题?您是否有相关书籍或文章推荐?
            谢谢!

          • Jason Brownlee 2020 年 9 月 2 日 1:30 PM #

            抱歉,我没有优化方面的教程,希望能写一篇关于该主题的文章。

            这是一本关于函数优化的好书
            https://amzn.to/31J3I8l

      • Prof Ravi Vadlamani 2019 年 11 月 16 日 1:57 AM #

        非常好的文章!

    • roberto 2019 年 11 月 20 日 10:36 PM #

      我也对此感兴趣,特别是针对时间序列。

    • Souleymane THIAM 2020 年 1 月 4 日 11:30 PM #

      非常重要的文章。
      非常感谢您,亲爱的老师

  2. Avram 2019 年 11 月 11 日 7:19 PM #

    我认为,在不久的将来,这个主题以及监督和无监督模型将结合起来形成强大的 AI。了解它可能对任何对 AI 感兴趣的人都有好处。

  3. marco 2019 年 11 月 12 日 6:53 PM #

    你好 Jason,
    关于 GAN 的问题。
    仅使用 Keras 实现 GAN 是否可行?使用 Sklearn 是否也可能?
    您是否有简单的示例来更好地理解和尝试 GAN?
    GAN 的可能应用领域是什么?
    谢谢,
    Marco

  4. Savan Vachhani 2019 年 11 月 13 日 12:53 AM #

    嗨,Jason,

    我喜欢您的网站以及您为初学者所做的一切工作。有一个快速的非技术性问题——为什么没有太多使用 Google Colab 的内容?有什么特别的原因吗?

    谢谢

    • Jason Brownlee 2019 年 11 月 13 日 5:47 AM #

      谢谢!

      我尽量对 Google/MS/Amazon 等平台保持中立。随意在任何地方运行代码。

      • Savan Vachhani 2019 年 11 月 22 日 9:32 PM #

        嗨 Jason,感谢您的回复。在我涉足该领域一段时间后,我明白了您的意思。

  5. Patryk Golabek 2019 年 11 月 15 日 6:08 AM #

    这是一篇非常好的文章。我认为是迄今为止最好的,而且我读了所有文章。
    我将把它用于我们的内部维基。

  6. Nordin 2019 年 11 月 15 日 9:56 AM #

    好文章!

  7. Leonardo 2019 年 11 月 17 日 9:55 AM #

    嗨 Jason,好文章。
    我有一个关于另一种学习方式的问题,http://ai.stanford.edu/~hllee/icml07-selftaughtlearning.pdf,这是 Andrew Ng 创建的自学学习。您可能不知道它,或者它不相关?

    您的看法是什么?

    谢谢

    • Jason Brownlee 2019 年 11 月 18 日 6:41 AM #

      谢谢!

      是的,我认为这就是这篇文章中的“自监督学习”。

    • Jason Brownlee 2019 年 11 月 18 日 1:48 PM #

      非常棒,谢谢分享!

    • Muideen F.O. 2023 年 9 月 25 日 6:51 PM #

      感谢您的文章。非常有教育意义

  8. Jewel Ahmed 2019 年 11 月 28 日 5:53 PM #

    谢谢分享。

  9. EDDISON HAYDEN LEWIS 2019 年 12 月 29 日 3:26 AM #

    这篇文章很有启发性,它指出了实践中所有相关的机器学习范式。但是,“关于自动机器学习的前景如何?”

  10. Rajesh Chukka 2019 年 12 月 31 日 1:24 AM #

    嗨,好文章,非常有启发性
    也请将元学习添加到列表中。“学习学习”是当前深度学习中最热门的研究领域。

  11. Jack Rief 2020 年 2 月 18 日 7:50 PM #

    你好,Jason。
    您发布了关于人工智能的绝佳概念。我很高兴知道有人在发布关于人工智能的博客。您很好地描述了人工智能工作中出现的问题和技术。您应该发布更多与人工智能相关的博客。

    • Jason Brownlee 2020 年 2 月 19 日 8:00 AM #

      谢谢,但这是机器学习,不是人工智能。例如,是人工智能的一个子领域。

      人工智能对普通开发者来说并不是真正有用。机器学习的预测建模才有用。

  12. Maryam 2020 年 4 月 3 日 8:54 AM #

    亲爱的 Jason,
    感谢您对“多任务学习”的解释。
    但我只想您给我一个关于如何在其中实现“辅助损失”的教程。
    等待您的回复。

    祝好
    Maryam

  13. Ravish Qureshi 2020 年 5 月 6 日 4:34 PM #

    这篇文章为我节省了数小时的谷歌搜索时间和精力!很棒的文章 Jason。

  14. A Rai 2020 年 5 月 16 日 3:38 AM #

    嗨,Jason,
    您的网站对我的博士研究帮助很大。非常感谢您的分享。

  15. Star 2020 年 6 月 5 日 1:58 PM #

    嗨,Jason;
    感谢这篇有趣的帖子,我想知道您是否能展示一个强化学习的例子?
    RL 除了用于游戏,还有什么用途?我们如何知道将其应用于我们的数据集是否是个好主意?

  16. Gemma Almendros 2020 年 6 月 14 日 7:01 PM #

    嗨 Jason,我是上次问您关于大学工作的那位。
    我想知道多任务学习是否可以是线性的,或者它是否包含某些类型,以及它是否仅用于监督问题或其他问题?

    Gemma。

    • Jason Brownlee 2020 年 6 月 15 日 6:04 AM #

      多任务学习可以使用线性或非线性方法。

      是的,多任务学习可以进一步细分为问题子类型,毫无疑问。

  17. Karl Johan Haarberg 2020 年 6 月 24 日 11:21 PM #

    好文章,Jason。

    我建议区分浅层学习和深度学习。鉴于您列出的机器学习各种类型的相对全面的列表,您可能会考虑引入扩展分析(即利用多种不同的 AI、ML 和 DL 技术 = 增强/虚拟/混合分析)与学习相关。我相信例如,线性/非线性、随机/确定性、正则/收缩等更属于特征工程的艺术和技术。最后,鉴于 XAI(和商业 AI)的研究前沿取得了巨大进展,我还想补充可解释学习。

    致以最诚挚的问候,Karl Johan

  18. Daniel Kapitan 2020年7月4日下午5:00 #

    Jason,这篇文章写得太好了!我正在创建一个机器学习算法树,用于教育目的(请参阅https://kumu.io/dkapitan/tree-of-machine-learning-algorithms/,仍在进行中),并且我正在尝试弄清楚如何映射学习的类型。

    我有一个具体的问题,是如何在所有这些中定位特征/表示学习。这似乎是例如文本挖掘和图像分类的一个主要概念。我遇到的问题是,随着你在树中深入,它会变得有些复杂,因为许多不同类型的学习被结合起来了。

    非常欢迎任何想法或建议!

    • Jason Brownlee 2020年7月5日上午6:59 #

      这听起来是个有趣的项目!

      特征选择和表示学习(如自动编码器)是一种数据准备。

      • Maliha 2020年8月24日上午2:25 #

        Jason,是否有关于DNN中对抗性攻击的博文或教程?

  19. Richard Griffin 2020年8月19日上午1:09 #

    这是对整个领域的精确概述!谢谢你!!

  20. Jaideep Adhvaryu 2020年9月1日上午6:09 #

    你好,

    这篇文章写得很好,但完全把我搞糊涂了。

    1. 这14种技术是否都相互排斥?
    2. 为什么只有3种(转导、主动和在线学习)被称为机器学习?
    3. 如何理解学习问题和学习技术?

    Jason,我认为这是一篇非常重要的文章,但我希望你能为我这样的新手简化一下。

    谢谢!

  21. titou 2020年9月5日上午1:40 #

    终身学习

  22. Subhash Achutha 2020年9月20日上午11:30 #

    先生,您可以对此进行反馈吗?

    https://github.com/achuthasubhash/Complete-Life-Cycle-of-a-Data-Science-Project

    如果可能,请通过电子邮件告知我任何修改-subhash.achutha@gmail.com

  23. Subhash Achutha 2020年9月20日下午2:23 #

    好的,谢谢。

  24. Srilalitha Veerubhotla 2020年10月4日上午11:31 #

    你好先生,

    这篇文章涵盖了很多内容。你还可以添加联邦学习、课程学习和置信学习技术。

    谢谢你,

  25. Shiva Shrestha 2021年4月20日上午2:48 #

    无监督学习中的关联问题呢?

  26. Bilal AlSoudi 2021年6月12日下午5:48 #

    太棒了…非常有启发性…谢谢。

  27. Success Vera 2021年7月15日下午8:38 #

    你好 Jason,

    感谢您的帖子。

    我想了解被动学习。另外,您能否举例说明哪些学习算法是主动学习者和被动学习者?

    谢谢你。

  28. Bahar 2021年10月11日下午8:29 #

    非常感谢您提供的信息。我有一个关于联邦学习初始模型的问题,该模型必须在服务器上首次设置。选择这个初始模型的过程(稍后将由每个客户端进行训练)与在机器学习中选择模型的过程相同吗?我的意思是,通过评估不同的模型使用我们的初步数据集?然后,当我们确定这个模型是最佳模型时,就将其作为初始模型发送到我们的服务器。然后,它将被每个客户端拉取并随着时间的推移进行重新训练?

    • Adrian Tam
      Adrian Tam 2021年10月13日上午7:26 #

      是的,它应该与在非联邦情况下选择模型相同(或至少相似)。一种方法是基于中央服务器上的少量数据。然后,更丰富的数据保留在每个客户端的边缘,并将用于重新训练初始模型。

  29. suma 2021年11月26日上午1:28 #

    先生,混合众包技术是机器学习还是不是?

    • Adrian Tam
      Adrian Tam 2021年11月26日上午2:16 #

      依我看,差不多。

  30. wael 2021年12月2日上午8:15 #

    各位好。
    如何使用机器学习来区分电力变压器差动保护中的涌流和内部故障?

    • James Carmichael 2021年12月22日上午9:57 #

      Wael,请提供有关您正在考虑的电力系统电路以及您想实现的目标的更多信息。

      此致,

  31. Kasra 2021年12月16日上午12:18 #

    还有一种叫做弱学习的类型。它可以归类为半监督学习,但如今,由于数据标注的难度,它似乎变得更加关键。

  32. ash 2022年4月11日上午8:51 #

    你好,我想知道联邦学习是否是监督学习??如果是,属于哪种类型?回归还是分类??
    谢谢你

  33. Mark 2022年4月11日下午6:01 #

    非常有用的文章,谢谢。神经进化在哪里适合?

  34. Mark 2022年4月11日下午6:31 #

    我将尝试论证主动学习在这篇文章中被错误分类了。 “学习问题”源于考虑系统与环境之间的交互。

    * 监督学习提供来自系统输出的反馈,它通常使用静态成本函数,将数据映射到抽象期望,即它不会相对于系统的输出来改变。

    * 强化学习是带有动态成本函数的监督学习,即监督相对于系统的行为。

    * 无监督学习不提供系统输出的反馈。

    主动学习要求系统查询环境,即系统与环境之间存在一种新的交互方式。

    按照这个分类,我们可以看到其他类型的学习,例如:

    * 被动学习是指环境根据系统模型来调整输入给系统,例如指导式学习。

    * 交互式学习是指系统可以查询环境,环境也可以查询系统,例如辅导。

    * 内部交互式学习是指系统可以查询环境的状态,/或环境可以查询系统的状态。

    以上忽略了学习的社交方面。如果我们将其考虑在内,那么我们可以有实践,例如:

    竞争性学习,例如GANs、自我对抗。

    协作学习,这可以看作是交互式学习与一个以上系统主动学习的混合(这通常是优秀教师所做的——学习者在学习如何学习,教师在学习如何教学)。

    这篇文章可能与AI比机器学习更相关,但我认为它指出了原始框架中的一些基本问题。

    • James Carmichael 2022年4月14日上午3:28 #

      感谢您的反馈Mark!

  35. Touhidul 2022年4月28日上午12:08 #

    零样本、单样本等是已经包含在某些技术中的吗?还是在文章创建后引入的?🙂 这篇文章是否有更新?谢谢😉

  36. Jeremy Allen 2022年8月28日上午6:38 #

    这篇文章为我节省了好几个小时的谷歌搜索时间。非常感谢James!

    • James Carmichael 2022年8月28日上午7:58 #

      不客气Jeremy!我们感谢您的支持和反馈!

  37. Libia Romero 2022年8月31日下午8:49 #

    感谢您的文章,但我想问端到端学习模型属于哪个类别?

    • James Carmichael 2022年9月1日上午6:45 #

      Libia,请澄清您的问题,以便我们更好地为您服务。

  38. Aleria Gozum 2023年3月7日下午2:54 #

    这是一篇很棒的文章!它对主题进行了非常翔实的概述,并以易于理解的方式呈现了信息。用于说明观点的示例也很有帮助。总而言之,这是一篇优秀的读物,对于任何对此主题感兴趣的人来说都是一个很棒的资源。

    • James Carmichael 2023年3月8日上午9:18 #

      感谢Aleria的赞美和反馈!我们非常感谢!

  39. Ly 2023年3月15日下午7:10 #

    离线学习(或批量学习)怎么样?它是否被视为一种学习类型?
    我在您的文章中看到了这句话:“传统上,机器学习是在离线进行的”。这是否意味着所有其他学习类型都是离线学习?

  40. tessa parmar 2023年4月2日下午4:42 #

    非常感谢您的这篇文章;我才刚开始接触机器学习,现在正是时候。我通过谷歌搜索找到了您的网站,发现这篇文章的解释特别清晰和有帮助。
    🙂

    • James Carmichael 2023年4月3日上午8:15 #

      感谢tessa的支持和反馈!我们非常感激!

  41. VSP 2023年8月6日上午5:39 #

    持续学习??

  42. VSP 2023年8月6日上午5:46 #

    对比学习??
    少样本学习??
    零样本学习??
    生成式学习??
    表示学习??

  43. VSP 2023年8月6日上午5:48 #

    对抗性学习??
    联邦学习??

留下回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。