主要内容

监督学习工作流和算法

什么是监督学习?

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

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

例如,假设您想预测某人是否会在一年内进行心脏病发作。您有一套关于先前患者的数据,包括年龄,体重,高度,血压等。您知道先前患者是否在其测量的一年内具有心脏病发作。因此,问题是将所有现有数据组合成一个模型,该模型可以预测一年内新人是否会有心脏病发作。

您可以将整个输入数据集视为异构矩阵。称为矩阵的行观察例子,或实例,并且每个含有对受试者的一组测量(示例中的患者)。调用矩阵的列预测属性,或特性并且每个都是表示在示例中的每个主题(年龄,重量,高度等)上采取的测量的变量。您可以将响应数据视为列向量,其中每行包含输入数据中相应观察的输出(患者是否有心脏病发作)。到适合要么火车监督学习模型,选择合适的算法,然后将输入和响应数据传递给它。

监督学习分为两种广泛类别:分类和回归。

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

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

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

监督学习的步骤

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

准备数据

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

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

  • 回归,Y必须是一个数字向量,其中元素数量相同,作为行的行数X

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

    数据类型 缺少条目
    数字矢量
    分类向量 <未定义>
    字符阵列 空间行
    字符串数组 <缺失>要么""
    字符向量的单元格阵列 ''
    逻辑矢量 (不能代表)

选择算法

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

  • 培训速度

  • 内存使用情况

  • 新数据的预测准确性

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

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

适合模型

您使用的拟合功能取决于您选择的算法。

算法 拟合功能
分类树木 fitctree
回归树木 fitrtree.
判别分析(分类) fitcdiscr.
k- 最邻居(分类) Fitcknn.
天真的贝叶斯(分类) Fitcnb.
金宝app支持矢量机器(SVM)进行分类 fitcsvm.
svm回归 Fitrsvm.
用于SVM或其他分类器的多键模型 Fitcecoc.
分类集合 fitcensemble
回归合奏 fitrensemble.
分类或回归树集合(例如,随机森林[1] treebagger

为了比较这些算法,请参阅分类算法的特征

选择验证方法

检查所得拟合模型精度的三种主要方法是:

检查合适并更新直至满意

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

对某种类型的模型满意时,您可以使用适当的方式修剪它袖珍的功能 (袖珍的对于分类树,袖珍的回归树,袖珍的为了判别分析,袖珍的对于天真的贝叶斯,袖珍的对于SVM,袖珍的对于ECOC模型,袖珍的对于分类集合,和袖珍的回归集合体)。袖珍的从模型中移除预测不需要的训练数据和其他属性,例如决策树的剪枝信息,以减少内存消耗。因为kNN分类模型需要所有培训数据来预测标签,您无法减小尺寸ClassificationKnn.模型。

使用拟合模型进行预测

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

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

  • Xnew是新的输入数据。

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

分类算法的特征

该表显示了各种监督学习算法的典型特征。任何特定案例中的特征都可以从列出的情况不同。使用该表作为初始选择算法的指南。根据速度,内存使用,灵活性和解释性决定您想要的权衡。

提示

首先尝试决策树或判别,因为这些分类器是快速且易于解释的。如果模型不足以预测响应,则尝试具有更高灵活性的其他分类器。

要控制灵活性,请参阅每个分类器类型的详细信息。为避免过度装备,请查看较低灵活性的模型,提供足够的精度。

分类器 多牌支持金宝app 分类预测的支持金宝app 预测速度 内存使用情况 解释性
决策树- - - - - -fitctree 是的 是的 容易
判别分析- - - - - -fitcdiscr. 是的 线性的小,二次的大 容易
支持向量机- - - - - -fitcsvm. 不。
结合多个二值支持向量机分类器使用Fitcecoc.
是的 介质为线性的。
为别人慢慢慢。
介质为线性的。
所有其他人:多包子的媒体,大型为二元。
线性支持向量机很容易。
对于所有其他内核类型来说都很困难。
天真的贝父- - - - - -Fitcnb. 是的 是的 Medium用于简单分布。
迟钝的内核分布或高维数据
小型分布。
内核分布或高维数据的媒介
容易
最近的邻居- - - - - -Fitcknn. 是的 是的 缓慢的立方。
中为他人。
媒介 难的
合奏- - - - - -fitcensemblefitrensemble. 是的 是的 根据算法的选择快速到介质 高低取决于算法的选择。 难的

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

速度:

  • Fast - 0.01秒

  • 中- 1秒

  • 慢- 100秒

内存

  • 小 - 1MB.

  • 中期4 mb

  • 大 - 100MB.

请注意

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

分类预测的支持金宝app

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

分类器 所有的预测数字 所有预测因素分类 一些分类,一些数字
决策树 是的 是的 是的
判别分析 是的
支持向量机 是的 是的 是的
天真的贝父 是的 是的 是的
最近的邻居 欧几里德距离仅限 汉明距离只有
合奏 是的 是的,除子空间符合判别分析分类器 是的,除子空间合奏

参考

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