主要内容

火车使用回归学习者应用回归树

这个例子展示了如何创建和使用回归学习者应用,比较各种回归树和出口训练模型工作区为新数据做出预测。

你可以训练回归树来预测响应给定的输入数据。预测回归树的反应,跟随这棵树从根节点到叶节点(开始)。在每一个节点,决定哪些部门按照使用规则相关联的节点。继续下去,直到你到达一个叶子节点。预测的响应是叶子节点关联的值。

统计和机器学习工具箱™树是二进制。每一步的预测包括检查一个预测变量的值。例如,下面是一个简单的回归树:

回归树的可视化两个预测因子

这棵树预测响应基于两个预测因子,x1x2。预测,从顶部开始节点。在每个节点,检查预测因子的值来决定哪个部门。当树枝到达一个叶子节点,设置为值对应的响应节点。

下面的例子使用了carbig数据集。该数据集包含特征不同的车型生产从1970年到1982年,包括:

  • 加速度

  • 气缸数

  • 发动机排量

  • 发动机功率(马力)

  • 模型一年

  • 重量

  • 原产国

  • 英里/加仑(MPG)

火车回归树来预测英里每加仑的燃油经济性汽车模型,考虑到其他变量作为输入。

  1. 在MATLAB®,加载carbig数据集和创建一个表,包含不同的变量:

    负载carbigcartable =表(加速、气缸、位移,马力,Model_Year、重量、起源、MPG);
  2. 应用程序选项卡,机器学习和深度的学习组中,单击回归的学习者

  3. 回归的学习者选项卡,文件部分中,选择新会话>从工作区

  4. 数据集变量新会话从工作区对话框中,选择cartable列表的表和矩阵在工作区中。

    观察应用已经预选的反应和预测变量。英里/加仑被选为响应,所有其他变量的预测指标。对于这个示例,不改变选择。

    新会话从工作区对话框

  5. 接受默认的验证方案和继续,点击开始会议。默认的验证选项是交叉验证,防止过度拟合。

    回归学习者创建一个响应的情节上的记录编号x设在。

  6. 使用响应阴谋调查哪些变量是有用的预测响应。可视化不同预测和响应之间的关系,选择不同的变量X以下列表右边的部分情节。

    观察哪些变量与响应最明显的相关性。位移,马力,重量都有一个清晰可见的影响的响应和所有显示负与响应。

    响应块汽车数据,英里每加仑的垂直轴和水平轴马力

  7. 选择变量起源。一盒情节将会自动显示。箱线图显示响应的典型值和任何可能的异常值。绘图时有用的箱线图标记结果在许多点重叠。显示箱线图上的变量x设在有几个独特的价值观,风格中,选择箱线图

    响应块汽车数据,箱线图的每个国家起源预测

  8. 火车的回归树。的模型窗格中已经包含了一个很好的树模型。中、粗树模型添加到列表模式草案。在回归的学习者选项卡,模型部分,单击箭头打开画廊。在回归树组中,单击中树。应用程序创建了一个草案中树的模型窗格。重新打开模型画廊和点击粗树回归树组。应用程序创建了一个粗树的草案模型窗格。

    火车部分中,点击火车都并选择火车都。应用列车三树模型和情节真实训练反应和预测响应为每个模型。

    请注意

    • 如果你有并行计算工具箱™,那么应用程序的使用并行默认按钮进行切换。你点击后火车都并选择火车都选择火车应用程序打开一个平行的工人。在这段时间里,你不能与软件交互。池打开后,可以继续与应用程序交互,同时并行模型火车。

    • 如果你没有并行计算工具箱,然后应用程序了使用背景培训复选框的火车都菜单默认选中。单击训练模型后,应用程序打开一个背景池。池打开后,可以继续与应用程序交互,同时在后台模型火车。

    反应的汽车回归树建模的数据

    请注意

    验证了一些随机性的结果。你的模型验证结果可以从这个例子中所示的结果不同。

  9. 模型面板,检查RMSE(验证)(验证根均方误差)的模型。最好的成绩是强调在一个盒子里。

    好树中树有类似的rms,粗树不太准确的。

  10. 选择一个模型模型窗格中查看模型的结果。例如,选择中树模型(模型2)。响应图选项卡,在中,选择马力并检查响应图。现在真正的和预测的反应都是策划。显示预测错误,画竖线之间的预测和真实的反应,通过选择错误复选框。

  11. 看到更多的细节在模型的当前选择的模型总结选项卡。在回归的学习者选项卡,模型部分中,点击总结。检查和比较额外的模型特征,如平方(确定系数)、美(平均绝对误差),预测速度。欲了解更多,请看视图和比较模型的统计数据。在总结选项卡,您还可以找到当前选择的模型类型的细节,比如hyperparameters用于训练模型。

  12. 情节预测响应和真实的反应。在回归的学习者选项卡,情节部分,单击箭头打开画廊,然后单击预测与实际(验证)验证结果组。使用这个情节理解的回归模型预测的不同响应值。

    预测反应的情节和回归树的真实反应

    一个完美的回归模型预测响应等于真正的反应,所以所有的点躺在一个对角线。线的垂直距离任意点的错误预测。一个好的模型有小错误,所以附近的预测分布线。通常一个好的模型点分散在对角线大致对称。如果你能看到任何明确的情节模式,很可能,你可以提高你的模型。

  13. 选择其他模型模型窗格中,打开每个模型的预测与实际的情节,然后比较结果。重新排列的布局图更好的比较图。单击文档行为模型的最右边的箭头图选项卡。选择瓷砖都选择并指定一个1×3布局。点击隐藏情节选项按钮在右上角的情节,使更多的空间情节。

    情节的预期的反应与真实的反应了三种回归树模型

    回到最初的布局,你可以点击布局按钮情节部分并选择单一模式(默认)

  14. 模型画廊,选择所有的树回归树组。努力改善树模型,包括模型中不同的特性。看你是否能提高预测能力较低的模型通过删除功能。

    回归的学习者选项卡,选项部分中,点击特征选择

    默认的特征选择选项卡中,您可以选择不同的排名算法特点确定最重要的特性。选择排名算法特性后,应用程序将显示一个情节的重要性得分排序功能,在大的成绩(包括表明更大的功能的重要性。表显示了排名的特性和他们的分数。

    在这个例子中,两个MRMR方差齐性检验功能排名算法等级加速和原产地预测最低。应用程序禁用RReliefF选择,因为预测因子包括数字和分类变量。

    排名算法特点,点击方差齐性检验。下特征选择,使用默认选项的选择排名最高的特性来避免偏见的验证指标。指定保持4 7特性模型的训练。

    默认特征选择选项卡与F测试所选功能排名算法

    点击保存和应用。应用特征选择更改适用于当前草案模型和创建的任何新车型使用模型画廊。

  15. 火车树模型使用减少的特性。在回归的学习者选项卡,火车部分中,点击火车都并选择火车都选择火车

  16. 观察的新车型模型窗格。这些模型都是相同的回归树和之前一样,但训练只使用预测7投4中。所使用的应用程序显示有多少预测。检查使用预测,在点击一个模型模型面板,观察扩大的复选框特征选择模型的部分总结选项卡。

    请注意

    如果你使用交叉验证方案和选择进行特征选择使用选择排名最高的特性选项,然后为每个训练褶皱,应用训练之前进行特征选择模型。不同的折叠可以选择不同的预测排名最高的特性。表显示的列表预测所使用的完整模型,训练在训练和验证数据。

    模型的三个特性,然后对不执行以及使用所有的预测模型。一般来说,如果数据收集是昂贵或困难,你可能更喜欢没有一些预测模型性能良好。

  17. 火车三个回归树预设只使用马力作为一个预测。在模型画廊,选择所有的树回归树组。在模型中总结选项卡中,扩大特征选择部分。选择选择个人特性选项,并清除复选框的功能马力。在回归的学习者选项卡,火车部分中,点击火车都并选择选择火车

    只使用的发动机功率预测模型精度较低。然而,模型表现良好,因为它们只使用单一的预测。与这个简单的一维预测空间,粗树现在执行以及中、细树。

  18. 选择最好的模型模型面板和查看残差图。在回归的学习者选项卡,情节部分,单击箭头打开画廊,然后单击残差(验证)验证结果组。残差图显示预测的区别和真正的反应。作为一个线图显示残差,风格部分中,选择

    ,选择变量的阴谋x设在。选择真实的反应,预测反应,记录数,或预测因子之一。

    回归树的残差的情节

    通常一个好的模型残差分布大致对称约0。如果你能看到任何明确的模式在残差,很可能,你可以提高你的模型。

  19. 学习模型hyperparameter设置,选择最好的模型模型面板和扩大模型Hyperparameters部分模型中总结选项卡。比较粗,中,细树模型,并观察模型hyperparameters的差异。特别是,最小叶大小设置36个粗的树,12中树,和4好树。这个设置控制树叶的大小,并通过回归树的规模和深度。

    努力改善的最佳模式(媒介树训练使用所有的预测),改变最小叶大小设置。首先,单击模型模型窗格。在回归的学习者选项卡,模型部分中,点击重复的。在总结选项卡中,改变最小叶大小值8。然后,在火车部分的回归的学习者选项卡上,单击火车都并选择选择火车

    了解更多关于回归树的设置,明白了回归树

  20. 您可以导出一个完整或紧凑的工作区版本的选择模型。在回归的学习者选项卡,出口部分中,点击出口模式和选择出口模式出口紧凑的模型。在出口模式对话框中,单击好吧接受默认的变量名trainedModel

    看到信息的结果,看看命令窗口。

  21. 利用导出的模型预测新数据。例如,做出的预测cartable数据在工作区中,输入:

    yfit = trainedModel.predictFcn (cartable)
    输出yfit为每个数据点包含预测的反应。

  22. 如果你想自动化培训同一个模型与新数据或学习如何编程训练回归模型,您可以生成代码与应用。为最好的训练模型,生成代码的回归的学习者选项卡,出口部分中,点击生成函数

    应用程序从模型生成代码并在MATLAB中显示文件编辑器。欲了解更多,请看用新的数据生成MATLAB代码来训练模型

提示

使用相同的工作流,在这个例子中评估和比较其他回归模型类型可以在回归训练学习者。

培训所有可用的预设nonoptimizable回归模型:

  1. 回归的学习者选项卡,模型部分,单击箭头打开画廊的回归模型。

  2. 开始组中,单击所有。然后,在火车部分中,点击火车都并选择火车都

    培训选项选择所有可用的模型类型

了解其他回归模型类型,明白了火车在回归学习者应用回归模型

相关的话题