特征选择模块

重要

对机器学习工作室(经典)的支持将于 2024 年 8 月 31 日结束。 建议在该日期之前转换到 Azure 机器学习

从 2021 年 12 月 1 日开始,你将无法创建新的机器学习工作室(经典)资源。 在 2024 年 8 月 31 日之前,可继续使用现有的机器学习工作室(经典)资源。

ML 工作室(经典)文档即将停用,将来可能不会更新。

本文介绍 机器学习 Studio (经典) 中可用于功能选择的模块。

注意

适用于:机器学习 Studio (经典) 应用

可在 Azure 机器学习设计器中获取类似的拖放模块。

特征选择是机器学习中的重要工具。 机器学习 Studio (经典) 提供了多种方法用于执行功能选择。 根据你拥有的数据的类型以及应用的统计技术的要求,选择特征选择方法。

本文介绍:

机器学习 Studio (经典) 每个特征选择模块都使用数据集作为输入。 然后,该模块将已知统计方法应用于作为输入提供的数据列。 输出是一组指标,可帮助你识别具有最佳信息值的列。

关于功能选择

在机器学习和统计信息中,特征选择是选择要用于生成分析模型的相关有用功能的子集的过程。 特征选择有助于将数据字段缩小到最有价值的输入。 缩小数据字段有助于减少干扰并提高训练性能。

通常,特征是通过特征工程过程从原始数据创建的。 例如,在信息转换为与问题相关的天数、月数或类别(如假日与工作时间)之前,时间戳本身可能对建模没有用。

机器学习的新用户可能想要包含所有可用的数据。 他们可能会期望该算法通过使用更多数据来发现一些有趣的内容。 但是,特征选择通常可以改进模型,并防止常见问题:

  • 数据包含冗余或不相关的功能,这些特征提供的信息不会超过当前所选功能。
  • 数据包含不相关的功能,这些功能在任何上下文中都未提供任何有用信息。 包含不相关的字段不仅会增加训练数据所需的时间,还可能导致不良结果。
  • 使用某些算法时,在训练数据中具有重复信息可能会导致一种称为 多列性现象。 在多列性中,存在两个高度相关的变量可能会导致其他变量的计算变得不太准确。

提示

机器学习 Studio (经典) 中的某些机器学习算法在训练过程中也使用特征选择或维数减少。 当你使用这些学习器时,可以跳过特征选择过程,让算法确定最佳输入。

在试验中使用功能选择

浏览数据和开发新模型时,通常会执行特征选择。 使用功能选择时,请记住以下提示:

  • 测试时,向试验添加功能选择以生成分数,告知你决定使用哪些列。
  • 操作模型时,从试验中删除特征选择。
  • 定期运行功能选择,以确保数据和最佳功能未更改。

特征选择不同于特征工程,它侧重于基于现有数据创建新特征。

资源

  • 有关在数据科学过程中设计特征或选择最佳特征的不同方法的讨论,请参阅数据 科学中的特征工程
  • 有关数据科学过程中功能选择的演练,请参阅从数据筛选 特征 - 功能选择

机器学习 Studio (经典)

以下功能选择模块在 机器学习 Studio (经典) 。

基于筛选器的特征选择

使用"基于 筛选器的特征选择 "模块时,可以从已知的特征选择方法中选择。 该模块输出特征选择统计信息和筛选的数据集。

所选的过滤器选择方法部分取决于输入数据。

方法 支持的特征输入 支持的标签
皮尔逊相关 仅限数字和逻辑列 单个数字或逻辑列
互信息评分 所有数据类型 任何数据类型的单个列
肯德尔相关系数 仅限数字和逻辑列 单个数字或逻辑列

列应具有可以排名的值
斯皮尔曼相关系数 仅限数字和逻辑列 单个数字或逻辑列
卡方统计 所有数据类型 任何数据类型的单个列
费舍尔评分 仅限数字和逻辑列 单个数字或逻辑列

为字符串列分配分数 0
基于计数的特征选择 所有数据类型 不需要标签列

费舍尔线性判别分析

线性离散分析是一种监督式学习技术,可用于将数值变量与单个分类目标一起分类。 因为它可以标识的特征或参数的最佳分隔这些组的组合,该方法可用于特征选择。

可以使用" 测量线性 离散分析"模块生成一组分数进行评审,或者可以使用模块生成的替换数据集进行训练。

排列特征重要性

使用 排列特征重要性 模块模拟数据集上任意一组特征的效果。 该模块基于随机随机特征值计算模型的性能分数。

模块返回的分数表示如果值更改,则训练模型的准确性可能会发生变化。 可以使用分数来确定各个变量对模型的影响。

包含特征选择的机器学习算法

机器学习 Studio 中的一些机器学习算法 (经典) 训练期间优化功能选择。 它们还可以提供有助于功能选择的参数。 如果使用的方法具有自己的启发式选择功能,则通常最好依赖于该启发式方法,而不是预先选择功能。

这些算法和特征选择方法在内部使用:

  • 用于分类和回归的提升决策树模型

    在这些模块中,将在内部创建功能摘要。 任何树拆分都不使用权重为0的功能。 当您直观显示最佳训练模型时,您可以查看每个树。 如果某个功能从未用于任何树中,则该功能可能是删除的候选项。 若要优化选择,也最好使用参数扫描。

  • 逻辑回归模型和线性模型

    用于多类和二元逻辑的模块回归支持 L1 和 L2 正则化。 正则化是一种在训练过程中添加约束的方法,用于手动指定所学习模型的某个方面。 正则化通常用于避免过度拟合。 机器学习 Studio (经典) 支持线性分类算法中权重向量的 L1 或 L2 规范的正则化:

    • 如果目标是尽可能使模型尽可能稀疏,则 L1 正则化非常有用。
    • L2 正则化可防止权重向量中的任何单个坐标在数量级上增长过多。 如果目标是使用具有较小总体权重的模型,则此方法非常有用。
    • L1 正则化逻辑回归更积极地将0的权重分配给特征。 这对于识别可删除的功能很有用。

技术说明

所有支持数字和逻辑列的功能选择模块和分析方法还支持日期时间和时间跨度列。 这些列被视为简单数值列,其中的每个值等于刻度数。

以下模块不在 功能选择 类别中,但你可以将其用于相关任务。 模块可以帮助你减少数据的维数或查找相关数据:

如果数据集包含多个列,请使用 " 主体组件分析 " 模块来检测包含有关原始数据的最多信息的列。

此模块的 " 数据转换 " 类别中的 " 缩放" 和 "减少"。

基于计数的特征化是一种新技术,可用于通过使用大型数据集来确定有用的功能。 使用这些模块可以分析数据集,以找出最佳功能,保存一组用于新数据的功能,或更新现有功能集。

使用此模块计算输入数据集中每个可能的变量对的一组皮尔逊相关系数。 皮尔逊相关系数(也称为皮尔逊的 R test)是一个统计值,用于测量两个变量之间的线性关系。

此模块位于 " 统计函数 " 类别中。

模块列表

" 功能选择 " 类别包括以下模块:

另请参阅