排列特征重要性
重要
对机器学习工作室(经典)的支持将于 2024 年 8 月 31 日结束。 建议在该日期之前转换到 Azure 机器学习。
从 2021 年 12 月 1 日开始,你将无法创建新的机器学习工作室(经典)资源。 在 2024 年 8 月 31 日之前,可继续使用现有的机器学习工作室(经典)资源。
ML 工作室(经典)文档即将停用,将来可能不会更新。
计算给定定型模型和测试数据集的功能变量的排列功能重要性分数
类别: 特征选择模块
模块概述
本文介绍如何使用机器学习 Studio (经典) 中的排列功能重要性模块来计算数据集的一组功能重要性分数。 使用这些分数有助于确定最适合在模型中使用的特征。
在此模块中,功能值随机随机打乱,一次一列,并且在前后测量模型的性能。 你可以选择提供的一个标准指标来衡量性能。
模块返回的分数表示经训练的模型在排列后的性能变化。 重要特征通常对混排过程更为敏感,因此将导致更高的重要性分数。
本文提供了有关在机器学习中排列特征重要性、理论基础及其应用程序的大致概述: 排列特征重要性
如何使用排列特征重要性
若要生成一组功能评分,需要具有已训练的模型以及测试数据集。
将 排列功能重要性 模块添加到试验中。 可以在“特征选择”类别中找到此模块。
将经训练的模型连接到左输入。 模型必须是回归模型或分类模型。
在右侧输入中,连接一个数据集,最好是与用于定型模型的数据集不同的数据集。 此数据集用于根据定型模型进行评分,并用于在更改功能值后对模型进行评分。
对于 " 随机种子",请键入一个值,用作随机化的种子。 如果指定 0(默认值),将根据系统时钟生成一个数字。
种子值是可选的,但是,如果想要跨同一次运行的可再现性,则应提供一个值。
对于 测量性能的指标,请选择在排列之后计算模型质量时要使用的单个度量值。
机器学习 Studio (经典) 支持以下指标,具体取决于你是要评估分类还是使用回归模型:
分类
准确度、精度、召回率和平均对数损失
回归
精度,召回,平均绝对错误,根本平均平方误差,相对绝对错误,相对平方误差,确定系数
有关这些评估指标和如何计算指标的更详细说明,请参阅 评估。
运行试验。
模块输出功能列的列表和与它们关联的分数,按分数顺序排列,按降序排列。
示例
请参阅 Azure AI 库中的以下示例试验:
排列功能重要性:演示如何使用此模块按排列重要性分数的顺序对数据集的特征变量进行排序。
使用排列功能的重要性模块:说明此模块在 web 服务中的用法。
技术说明
本部分提供了实现的详细信息、提示以及常见问题的解答。
这与其他功能选择方法相比如何?
排列功能重要性:随机更改每个特征列的值、一次一列,然后计算模型。
排列特征重要性提供的排名通常与从 基于筛选器的特征选择中获得的排名不同,后者在创建模型 之前 计算分数。
这是因为排列功能的重要性不会度量功能和目标值之间的关联,而是捕获每个特征对模型预测的影响程度。
预期输入
名称 | 类型 | 说明 |
---|---|---|
已训练模型 | ILearner 接口 | 训练的分类或回归模型 |
测试数据 | 数据表 | 用于在排列特征值后对模型进行评分和评估的测试数据集 |
模块参数
名称 | 类型 | 范围 | 可选 | 默认 | 说明 |
---|---|---|---|---|---|
随机种子 | Integer | >=0 | 必选 | 0 | 随机数生成器种子值 |
用于测量性能的指标 | EvaluationMetricType | 从列表中选择 | 必选 | 分类 - 准确性 | 选择计算模型的可变性后要使用的度量值 |
Outputs
名称 | 类型 | 说明 |
---|---|---|
功能重要性 | 数据表 | 一个包含基于所选指标的特征重要性结果的数据集 |
例外
异常 | 描述 |
---|---|
错误 0062 | 尝试将两个具有不同学习器类型的模型进行比较时,会出现异常。 |
错误 0024 | 如果数据集不包含标签列,将出现异常。 |
错误 0105 | 当模块定义文件定义了不支持的参数类型时引发 |
错误 0021 | 如果传递给模块的某些数据集的行数过少,将出现异常。 |