📜  机器学习中的特征选择技术

📅  最后修改于: 2022-05-13 01:57:05.686000             🧑  作者: Mango

机器学习中的特征选择技术

在为现实生活中的数据集构建机器学习模型时,我们会在数据集中遇到很多特征,但并非所有这些特征每次都很重要。在训练模型时添加不必要的特征会导致我们降低模型的整体准确性,增加模型的复杂性,降低模型的泛化能力,使模型有偏差。甚至“有时越少越好”这句话也适用于机器学习模型。因此,特征选择是构建机器学习模型的重要步骤之一。它的目标是找到构建机器学习模型的最佳特征集。

机器学习中一些流行的特征选择技术是:

  • 过滤方法
  • 包装方法
  • 嵌入式方法

过滤方法

这些方法通常在进行预处理步骤时使用。无论使用任何机器学习算法,这些方法都从数据集中选择特征。在计算方面,它们非常快速且成本低廉,并且非常适合去除重复、相关、冗余的特征,但这些方法不能去除多重共线性。特征的选择是单独评估的,这有时在特征孤立时会有所帮助(不依赖于其他特征),但当特征组合可以提高模型的整体性能时会滞后。

过滤器方法实现

使用的一些技术是:

  • 信息增益——它被定义为特征提供的用于识别目标值和衡量熵值减少的信息量。考虑到特征选择的目标值,计算每个属性的信息增益。
  • 卡方检验——卡方法 (X2) 通常用于检验分类变量之间的关系。它将来自数据集不同属性的观察值与其期望值进行比较。

卡方公式

  • Fisher 分数 – Fisher 分数根据 Fisher 标准下的分数独立选择每个特征,从而导致一组次优的特征。 Fisher's score 越大,选择的特征越好。
  • 相关系数 -皮尔逊相关系数是量化两个连续变量之间的关联和关系方向的量度,其值范围为-1 到 1
  • Variance Threshold –这是一种删除所有方差不符合特定阈值的特征的方法。默认情况下,此方法会删除方差为零的特征。使用这种方法所做的假设是更高方差的特征可能包含更多信息。
  • 平均绝对差 (MAD) –此方法类似于方差阈值方法,但不同之处在于 MAD 中没有平方。该方法从平均值计算平均绝对差。
  • 色散比 -色散比定义为给定特征的算术平均值 (AM) 与几何平均值 (GM) 的比值。对于给定的特征,它的值范围从+1 到 ∞,因为 AM ≥ GM 。较高的色散比意味着更相关的特征。
  • 相互依赖——这种方法测量两个变量是否相互依赖,从而提供一个变量在观察另一个变量时获得的信息量。根据特征的存在/不存在,它测量该特征有助于进行目标预测的信息量。
  • Relief –此方法通过从数据集中随机采样一个实例并更新每个特征并根据所选实例与两个最近的相同和相反类实例之间的差异来区分彼此靠近的实例,从而测量属性的质量。

包装方法:

包装方法,也称为贪心算法,通过以迭代方式使用特征子集来训练算法。根据模型之前的训练得出的结论,会进行特征的添加和删除。选择最佳子集的停止标准通常由训练模型的人预先定义,例如模型性能下降或达到特定数量的特征时。与过滤器方法相比,包装器方法的主要优点是它们为训练模型提供了一组最佳特征,因此比过滤器方法具有更好的准确性,但计算成本更高。

包装方法实现

使用的一些技术是:

  • 前向选择——这种方法是一种迭代方法,我们最初从一组空的特征开始,并在每次迭代后不断添加一个能最好地改进我们的模型的特征。停止标准是直到添加新变量不会提高模型的性能。
  • 向后消除——这种方法也是一种迭代方法,我们最初从所有特征开始,在每次迭代之后,我们删除最不重要的特征。停止标准是直到移除特征后模型的性能没有改善为止。
  • 双向消除——这种方法同时使用前向选择和后向消除技术来达到一个唯一的解决方案。
  • 穷举选择——这种技术被认为是评估特征子集的蛮力方法。它创建所有可能的子集,并为每个子集构建学习算法,并选择模型性能最佳的子集。
  • 递归消除——这种贪心优化方法通过递归地考虑越来越小的特征集来选择特征。估计器在一组初始特征上进行训练,并使用 feature_importance_attribute 获得它们的重要性。然后从当前的特征集中删除最不重要的特征,直到剩下所需数量的特征。

嵌入式方法:

在嵌入式方法中,特征选择算法被混合为学习算法的一部分,因此具有自己的内置特征选择方法。嵌入式方法遇到了过滤器和包装器方法的缺点并融合了它们的优点。这些方法比过滤方法更快,并且比过滤方法更准确,并且还考虑了特征的组合。

嵌入式方法实现

使用的一些技术是:

  • 正则化——这种方法对机器学习模型的不同参数增加了惩罚,以避免模型的过度拟合。这种特征选择方法使用 Lasso(L1 正则化)和弹性网络(L1 和 L2 正则化)。惩罚应用于系数,从而将一些系数降低到零。可以从数据集中删除具有零系数的特征。
  • 基于树的方法——这些方法,如随机森林、梯度提升,也为我们提供了特征重要性作为选择特征的一种方式。特征重要性告诉我们哪些特征在对目标特征产生影响方面更重要。

结论:

除了上面讨论的方法之外,还有许多其他的特征选择方法。使用混合方法进行特征选择可以提供从其他方法中选择的最佳优点,从而减少算法的缺点。与其他方法相比,这些模型可以提供更高的准确性和性能。主成分分析 (PCA)、启发式搜索算法等降维技术对特征选择技术不起作用,但可以帮助我们减少特征数量。

特征选择是一个广泛而复杂的领域,已经进行了大量研究以找出最佳方法。这取决于机器学习工程师来组合和创新方法,对其进行测试,然后看看哪种方法最适合给定问题。