特征选择是一种降维技术,它选择特征(预测变量)的子集,在建模一组数据时提供最好的预测能力。
特征选择可用于:
- 防止过拟合:避免使用过多的特征建模,这些特征更容易受到死记硬背的特定训练例子的影响
- 减少模型大小:使用高维数据提高计算性能,或者为内存可能有限的嵌入式部署准备模型。
- 提高可解释性:使用更少的特征,这可能有助于识别那些影响模型行为的特征
有几种常见的特征选择方法。
迭代地更改特性集以优化性能或损耗
逐步回归依次添加或删除特性,直到预测没有改进为止。它与线性回归或广义线性回归算法一起使用。同样,sequ基本特征选择构建一个特性集,直到准确性(或自定义性能度量)停止改进。
基于内在特征的等级特征
这些方法估计一个特征的排名,这反过来可以用来选择排名前几位的特征。最小冗余,最大相关性(MRMR)发现特征与响应变量之间的互信息最大,而特征本身的互信息最小的特征。相关方法根据Laplacian分数对特征进行排序,或使用一个单一特征是否独立于响应的统计测试来确定特征的重要性。
邻域成分分析(NCA)与ReliefF
这些方法通过最大化基于成对距离的预测精度和惩罚导致错误分类结果的预测器来确定特征权重。
了解模型中特性的重要性
一些有监督的机器学习算法在训练过程中估计特征的重要性。这些估计可以用于在训练完成后对特征进行排序。内置特征选择的模型包括线性支持向量机、增强决策树及其集成(随机森林)和广义线性模型。同样,在套索正则化在训练过程中,收缩估计器将冗余特征的权重(系数)降为零。
MATLAB®金宝app支持以下特征选择方式:
算法 | 培训 | 类型的模型 | 精度 | 警告 |
---|---|---|---|---|
NCA | 温和的 | 更适合基于距离的模型 | 高 | 需要手动调优正则化lambda |
MRMR | 快 | 任何 | 高 | 只对分类 |
ReliefF | 温和的 | 更适合基于距离的模型 | 媒介 | 无法区分相关预测因子 |
顺序 | 慢 | 任何 | 高 | 没有对所有功能进行排名 |
方差齐性检验 | 快 | 任何 | 媒介 | 回归。无法区分相关预测因子。 |
卡方 | 快 | 任何 | 媒介 | 的分类。无法区分相关预测因子。 |
作为特征选择的一种替代方法,特征转换技术将现有的特征转化为新的特征(预测变量),同时去掉较少的描述性特征。特征转换方法包括:
有关MATLAB特征选择的更多信息,包括机器学习、回归和转换,请参阅统计和机器学习工具箱™.
要点
- 特征选择是一种提高模型性能(特别是高维数据)、提高可解释性和减小尺寸的先进技术。
- 首先考虑一个具有“内置”特性选择的模型。否则,MRMR对于分类非常有效。
例子
特征选择可以从小波散射自动生成的数百个特征中选择一个合理的子集。下图是应用MATLAB函数得到的前50个特征的排名fscmrmr
从人体活动传感器数据中自动生成小波特征。