多类决策林
重要
对机器学习工作室(经典)的支持将于 2024 年 8 月 31 日结束。 建议在该日期之前转换到 Azure 机器学习。
从 2021 年 12 月 1 日开始,你将无法创建新的机器学习工作室(经典)资源。 在 2024 年 8 月 31 日之前,可继续使用现有的机器学习工作室(经典)资源。
ML 工作室(经典)文档即将停用,将来可能不会更新。
使用决策林算法创建多类分类模型
模块概述
本文介绍如何使用机器学习 Studio 中的 "多类决策林" 模块 (经典) ,根据决策林算法创建机器学习模型。 决策林是一种系综的模型,它在从标记的数据中学习时,它会迅速生成一系列的决策树。
有关决策林的详细信息
决策林算法是一种用于分类的系综学习方法。 该算法的工作原理是生成多个决策树,然后对最受欢迎的输出类进行投票。 投票是一种聚合形式,其中分类决策林中的每棵树都输出标签的非标准化频率直方图。 聚合过程将这些直方图求和,并对结果进行规范化以获得每个标签的“概率”。 决策树的预测置信度越高,其在系综的最终决策中所占的权重越高。
决策树通常是非参数模型,这意味着它们支持具有不同分布的数据。 在每棵树中,为每个类运行一系列简单测试,从而增加树结构的级别,直到达到叶节点(决策)为止。
决策树具有许多优点:
- 可以表示非线性决策边界。
- 在训练和预测期间的计算和内存使用效率高。
- 可执行集成的特征选择和分类。
- 可以抵抗干扰特征的影响。
机器学习 Studio (经典) 的决策林分类器由决策树的系综组成。 一般说来,系综模型可以提供比单个决策树更大的覆盖范围和更高的准确度。 有关详细信息,请参阅决策树。
如何配置多类决策林
提示
如果你不确定最佳参数,我们建议你使用 优化模型超参数 模块训练和测试多个模型,并找到最佳参数。
将 多类决策林 模块添加到 Studio 中的试验 (经典) 。 可在“机器学习”、“初始化模型”和“分类”中找到此模块 。
双击该模块以打开“属性”窗格。
对于重新采样方法,请选择用于创建单个树的方法。 可以选择装袋或复制。
装袋:装袋也称为“启动聚合”。 在此方法中,每个树都在新示例的基础上发展。新示例的创建方法是,对原始数据集进行随机采样并替换,直到得到与原始数据集相同大小的数据集。 通过投票(一种聚合形式)组合模型的输出。 有关详细信息,请参阅关于启动聚合的维基百科条目。
复制:在复制中,每个树都用完全相同的输入数据进行训练。 确定每个树节点使用哪个拆分谓词仍然是随机的,从而创建了不同的树。
有关指南,请参阅 如何配置多类决策林模型 部分。
通过设置“创建训练模式”选项,指定希望如何训练模型。
单个参数:如果知道自己想要如何配置模型,请选择此选项并提供一组值作为参数。
参数范围:如果你不确定最佳参数,并想要使用参数扫描,请使用此选项。
决策树的数目:键入可在系综中创建的最大决策树数目。 通过创建更多决策树,可获得更好的覆盖范围,但训练时间可能会增加。
此值还控制对经训练的模型进行可视化时在结果中显示的树的数量。 要查看或打印单个树,可将该值设置为 1;但是,这意味着只能生成一个树(带有初始参数集的树),而不会执行进一步的迭代。
决策树的最大深度:键入一个数字,以限制任何决策树的最大深度。 增加树的深度可能会提高精度,但存在过度拟合和训练时间增加的风险。
每个节点的随机拆分数:键入在生成树的每个节点时要使用的拆分数。 拆分意味着对树的每个级别(节点)的要素进行随机划分。
每个叶节点的最小样本数:指示在树中创建任何终端节点(叶)所需的最小事例数。 通过增加此值,可以增加创建新规则的阈值。
例如,使用默认值 1 时,即使是单个案例也可以导致创建新规则。 如果将值增加到 5,则训练数据将必须包含至少 5 个满足相同条件的案例。
允许分类特征的未知值:选择此选项可在定型集或验证集中为未知值创建组。 对于已知值,此模型可能不太精确,但是对于新的(未知)值,它可以提供更好的预测。
如果取消选择此选项,该模型只会接受定型数据中存在的值。
连接标记的数据集和培训模块之一:
运行试验。
结果
在训练完成后:
- 若要查看在每次迭代中创建的树,请右键单击 " 训练模型 模块",然后选择 " 定型模型 " 进行可视化。 如果使用 优化模型超参数,请右键单击模块并选择 " 训练最佳模型 ",以可视化最佳模型。 若要查看每个节点的规则,请单击每个树以向下钻取拆分。
示例
有关如何在机器学习中使用决策林的示例,请参阅 Azure AI 库:
- 比较多类分类器示例:使用几种算法,并讨论其优点和缺点。
技术说明
本部分包含实现详情、使用技巧和常见问题解答。
实现详细信息
分类决策林中的每个树都输出标签的非规范化频率直方图。 聚合就是将这些直方图求和,并进行标准化以获得每个标签的“概率”。 通过这种方式,具有高预测置信度的树在最终决定系综时具有更大的权重。
相关研究
有关 " 复制 " 选项的训练过程的详细信息,请参阅:
如何配置多类决策林模型
您可以更改模块的配置方式,以适应某些情况,例如数据太少或培训时间有限。
有限培训时间
如果训练集包含大量实例,但你可用于训练模型的时间有限,请尝试下列选项:
- 创建使用更少的决策树(例如,5-10)的决策林。
- 使用“复制”选项来重新采样。
- 为每个节点指定少量的随机拆分(例如,100 个以下)。
有限的训练集
如果训练集包含有限的数量的实例,请尝试使用这些选项:
- 创建使用大量的决策树(例如,20 个以上)的决策林。
- 使用“装袋”选项来重新采样。
- 为每个节点指定大量的随机拆分(例如,1,000 个以上)。
模块参数
名称 | 范围 | 类型 | 默认 | 说明 |
---|---|---|---|---|
重新采样方法 | 任意 | ResamplingMethod | 装袋 | 选择重新采样方法:复制或复制 |
决策树数 | >=1 | Integer | 8 | 指定要在系综中创建的决策树数 |
决策树的最大深度 | >=1 | Integer | 32 | 指定可创建的任何决策树的最大深度 |
每个节点的随机拆评分 | >=1 | Integer | 128 | 为要从中选择最佳拆分的每个节点指定生成的拆评分 |
每个叶节点的最小样本数 | >=1 | Integer | 1 | 指定生成叶节点所需的最小训练样本数 |
允许分类特征的未知值 | 任意 | 布尔 | True | 指示是否可将现有分类特征的未知值映射到其他新特征 |
Outputs
名称 | 类型 | 说明 |
---|---|---|
未训练的模型 | ILearner 接口 | 未训练的多类分类模型 |