减少功能以提高模型性能

特征选择是一种降维技术,它选择在建模一组数据时提供最佳预测能力的特征子集(预测变量)。

特征选择可用于:

  • 防止过度装配:避免使用过多的特性建模,这些特性更容易死记硬背特定的训练示例
  • 减少模型大小:使用高维数据提高计算性能,或者为内存可能有限的嵌入式部署准备模型。
  • 提高可解释性:使用较少的特性,这可能有助于识别那些影响模型行为的特性

有几种常用的特征选择方法。

以迭代方式更改功能集以优化性能或损失

逐步回归按顺序添加或删除特征,直到预测没有改善为止。它与线性回归或广义线性回归算法一起使用。同样,sequ统一特征选择建立功能集,直到精度(或自定义性能度量)停止提高。

基于内在特征的排序特征

这些方法估计了特征的排名,而这些排名又可以用来选择排名前几位的特征。最小冗余最大相关性(MRMR)查找最大化特征和响应变量之间的互信息并最小化特征本身之间互信息的特征。相关方法根据拉普拉斯分数对特征进行排序,或使用单个特征是否独立于响应的统计测试来确定特征重要性。

邻域成分分析(NCA)和ReliefF

这些方法通过最大化基于成对距离的预测精度和惩罚导致错误分类结果的预测因子来确定特征权重。

与模型一起学习特性的重要性

一些有监督的机器学习算法在训练过程中估计特征的重要性。在训练完成后,这些估计可以用来对特征进行排序。具有内置特征选择的模型包括线性支持向量机、增强决策树及其集合(随机森林)和广义线性模型。同样,在套索正则化收缩估计器在训练期间将冗余特征的权重(系数)减少到零。

MATLAB®金宝app支持以下功能选择方法:

算法 训练 类型的模型 精度 警告
NCA 温和的 更适合基于距离的模型 需要手动调整正则化lambda
先生 快速的 任何 只对分类
救济 温和的 更适合基于距离的模型 中等的 无法区分相关预测因子
顺序的 缓慢的 任何 并没有对所有功能进行排名
方差齐性检验 快速的 任何 中等的 回归。无法区分相关预测因子。
卡方 快速的 任何 中等的 用于分类。无法区分相关预测因子。

作为特征选择的一种替代方法,特征转换技术将现有特征转换为新的特征(预测变量),并去掉描述性较弱的特征。特征变换方法包括:

  • 主成分分析(PCA),通过在唯一的正交基上的投影,以更少的维度总结数据
  • 因子分析,用于建立数据相关性的解释模型
  • 非负矩阵分解,当模型项必须表示非负值(如物理量)时使用

有关使用MATLAB进行特征选择的更多信息,包括机器学习、回归和转换,请参阅统计和机器学习工具箱™.

要点

  • 特征选择是一种提高模型性能(尤其是高维数据)、提高可解释性和减小尺寸的先进技术。
  • 首先考虑具有“内置”特征选择的模型之一。否则,MRMR在分类方面非常有效。

实例

特征选择可以帮助从小波散射自动生成的数百个特征中选择一个合理的子集。下图是应用MATLAB函数得到的前50个特征的排名fscmrmr从人类活动传感器数据中自动生成小波特征。

另见:统计和机器学习工具箱,机器学习,工程特性,正则化,特征提取