主要内容

监督学习工作流和算法

什么是监督学习?

监督机器学习的目的是建立一个模型,在存在不确定性的情况下,基于证据进行预测。当自适应算法识别数据中的模式时,计算机就会从观察中“学习”。当计算机接触到更多的观察数据时,它的预测能力就会提高。

具体来说,监督学习算法接受已知的输入数据集和对数据(输出)的已知响应,并且火车为新数据的响应生成合理预测的模型。

例如,假设你想预测某人是否会在一年内心脏病发作。你有一组以前患者的数据,包括年龄、体重、身高、血压等。你知道以前的患者是否在测量后的一年内心脏病发作。因此,问题是将所有现有数据合并到一个模型中它可以预测一个新人是否会在一年内心脏病发作。

您可以将整个输入数据集视为一个异构矩阵观察例子,或实例,每个都包含一组受试者(示例中的患者)的测量值。矩阵的列称为预测属性,或特性,每个变量都代表了对每个受试者的测量值(示例中的年龄、体重、身高等)。您可以将响应数据看作一个列向量,其中每一行包含输入数据中相应观察结果的输出(患者是否有心脏病发作)。来适合火车一个有监督的学习模型,选择合适的算法,然后将输入和响应数据传递给它。

监督学习分为两大类:分类和回归。

  • 分类,目标是分配一个类(或标签)从一个有限的类集合到一个观察。也就是说,响应是分类变量。应用包括垃圾邮件过滤器,广告推荐系统,图像和语音识别。预测一个病人在一年内是否会心脏病发作是一个分类问题,而可能的分类是符合事实的.分类算法通常适用于标称响应值。然而,有些算法可以适应序数类(参见菲切克).

  • 回归,目标是预测一个观察的连续测量。也就是说,响应变量是实数。应用包括预测股票价格、能源消耗或疾病发生率。

统计和机器学习工具箱™监督学习功能组成了一个流线型的对象框架。您可以有效地训练各种算法,将模型组合成一个整体,评估模型性能,交叉验证,并预测对新数据的响应。

监督学习的步骤

尽管有许多用于监督学习的统计学和机器学习工具箱算法,但大多数都使用相同的基本工作流来获取预测模型。(关于集成学习步骤的详细说明在集成学习框架.)监督学习的步骤如下:

准备数据

所有的监督学习方法都从一个输入数据矩阵开始,通常称为X在这里。每一行的X代表一个观察。每一列的X表示一个变量或预测器。用X.统计和机器学习工具箱的监督学习算法可以处理值,可以通过忽略它们或忽略任何带有价值。

您可以为响应数据使用各种数据类型Y. 每个元素Y表示对的对应行的响应X.观察与缺失Y数据被忽略。

  • 对于回归,Y必须是一个数值向量,其元素数与X

  • 对于分类,Y可以是这些数据类型中的任何一种。该表还包含包含缺失项的方法。

    数据类型 遗漏条目
    数值向量
    分类向量 <定义>
    字符数组 一行空格
    字符串数组 ""
    字符向量单元数组 ''
    逻辑向量 (不能代表)

选择一种算法

在算法的几个特征之间存在权衡,例如:

  • 训练速度

  • 内存使用情况

  • 对新数据的预测准确性

  • 透明度或可解释性,意思是你能多容易地理解算法做出预测的原因

算法的细节出现在分类算法的特点.关于集成算法的更多细节见选择适用的集成聚合方法

适合一个模型

你使用的拟合函数取决于你选择的算法。

算法 拟合函数
分类树 fitctree
回归树 fitrtree
判别分析(分类) fitcdiscr
k最近的邻居(分类) fitcknn
朴素贝叶斯(分类) fitcnb
金宝app用于分类的支持向量机 fitcsvm
支持向量机的回归 菲特斯姆
支持向量机或其他分类器的多类模型 菲切克
分类集合体 fitcensemble
回归集合体 fitrensemble
分类或回归树集合(例如,随机森林[1] TreeBagger

有关这些算法的比较,请参见分类算法的特点

选择验证方法

检验所得到的拟合模型准确性的三种主要方法是:

检查并更新,直到满意为止

在验证模型之后,您可能想要更改它以获得更好的准确性、更快的速度,或者使用更少的内存。

当您对某一型号满意时,可以使用适当的工具对其进行修整紧凑的作用(紧凑的分类树,紧凑的回归树,紧凑的判别分析,紧凑的对于天真的Bayes,紧凑的对于SVM,紧凑的对于ECOC模型,紧凑的对于分类集合,和紧凑的回归集合体)。紧凑的从模型中移除预测不需要的训练数据和其他属性,例如决策树的剪枝信息,以减少内存消耗。因为k神经网络分类模型需要所有的训练数据来预测标签,不能减小标签的大小ClassificationKNN模型。

使用拟合模型进行预测

为预测大多数拟合模型的分类或回归反应,使用预测方法:

Ypredicted =预测(obj Xnew)
  • obj是拟合模型或拟合紧凑模型。

  • Xnew是新的输入数据。

  • 预测是预测响应,分类或回归。

分类算法的特点

该表显示了各种监督学习算法的典型特征。任何特定情况下的特征都可能与所列的特征不同。使用这个表格作为你最初选择算法的指南。决定在速度、内存使用、灵活性和可解释性方面的权衡。

提示

首先尝试使用决策树或判别器,因为这些分类器快速且易于解释。如果模型在预测响应方面不够准确,可以尝试其他具有更高灵活性的分类器。

要控制灵活性,请参阅每个分类器类型的详细信息。为了避免过度拟合,要寻找灵活性较低但提供足够精度的模型。

分类器 多类支持金宝app 分类预测的支持金宝app 预测的速度 内存使用 可解释性
决策树- - - - - -fitctree 是的 是的 容易
判别分析- - - - - -fitcdiscr 是的 线性的小,二次的大 容易
支持向量机- - - - - -fitcsvm 不。
结合多个二值支持向量机分类器使用菲切克
是的 介质为线性的。
为别人慢。
介质为线性的。
所有其他:medium for multiclass, large for binary。
线性支持向量机很容易。
对于所有其他内核类型来说都很困难。
朴素贝叶斯- - - - - -fitcnb 是的 是的 Medium用于简单分布。
对于内核分布或高维数据,速度较慢
对于简单的分布来说很小。
内核分布或高维数据的介质
容易
最近的邻居- - - - - -fitcknn 是的 是的 缓慢的立方。
中为他人。
媒介
乐团- - - - - -fitcensemblefitrensemble 是的 是的 快速到中等取决于算法的选择 高低取决于算法的选择。

该表的结果是基于对许多数据集的分析。该研究中的数据集有多达7000个观察数据、80个预测数据和50个类。这个列表定义了表中的术语。

速度:

  • Fast - 0.01秒

  • 中- 1秒

  • 慢- 100秒

内存

  • 小- 1 mb

  • 中期4 mb

  • 大- 100 mb

请注意

该表提供了一个大致的指导。您的结果取决于您的数据和机器的速度。

分类预测的支持金宝app

此表描述了每个分类器的预测器的数据类型支持。金宝app

分类器 所有的预测数字 所有预测分类 有些是绝对的,有些是数字的
决策树 是的 是的 是的
判别分析 是的
支持向量机 是的 是的 是的
朴素贝叶斯 是的 是的 是的
最近的邻居 欧氏距离只有 汉明距离只有
乐团 是的 是的,除了判别分析分类器的子空间集合 是的,除了子空间集合

工具书类

[1] Breiman, L。“随机森林。”机器学习45, 2001,第5-32页。