1、概述——特征选择 & 特征提取
-
特征选择(feature selection)和特征提取(feature extraction)都属于降维(dimension reduction)
-
(同)目的:减少特征数据集中的属性(或者称为特征)的数目。
-
(异)方法:
特征提取的方法主要是通过属性间的关系,如组合不同的属性得到新的属性,这样就改变了原来的特征空间。
特征选择的方法是从原始特征数据集中选择出子集,是一种包含的关系,没有更改原始的特征空间。
2、特征提取的主要方法:
PCA,LDA,SVD等。(SVD本质上是一种数学的方法, 它并不是一种什么机器学习算法,但是它在机器学习领域里有非常广泛的应用)
3、特征选择的方法
特征发散:如果特征不发散,也就是说特征的方差趋近于0,则代表这个特征上不同样本之间没有差异性,对区分样本的作用基本不存在。
3.1 Filter方法
- 其主要思想是:对每一维的特征“打分”,即给每一维的特征赋予权重,这样的权重就代表着该维特征的重要性,然后依据权重排序。
- 主要的方法有:Chi-squared test(卡方检验),ID3(信息增益),correlation coefficient scores(相关系数)
3.2 Wrapper方法:
- 其主要思想是:将子集的选择看作是一个搜索寻优问题,生成不同的组合,对组合进行评价,再与其他的组合进行比较。这样就将子集的选择看作是一个是一个优化问题,这里有很多的优化算法可以解决,尤其是一些启发式的优化算法,如GA,PSO,DE,ABC等,详见“优化算法——人工蜂群算法(ABC)”,“优化算法——粒子群算法(PS)”。
- 主要方法有:recursive feature elimination algorithm(递归特征消除算法)
3.3 Embedded方法
- 其主要思想是:在模型既定的情况下学习出对提高模型准确性最好的属性。这句话并不是很好理解,其实是讲在确定模型的过程中,挑选出那些对模型的训练有重要意义的属性。
- 主要方法:正则化。如岭回归就是在基本线性回归的过程中加入了正则项。
*4、特征选择的目标
一个正确的数学模型应当在形式上是简单的。构造机器学习的模型的目的是希望能够从原始的特征数据集中学习出问题的结构与问题的本质,当然此时的挑选出的特征就应该能够对问题有更好的解释,所以特征选择的目标大致如下:
- 提高预测的准确性
- 构造更快,消耗更低的预测模型
- 能够对模型有更好的理解和解释
总结
- 特征提取是从杂乱无章的世界中,去到更高层的世界去俯瞰原始世界,你会发现很多杂乱无章的物理现象中背后暗含的道理是想通的,这时候你想用一个更加普世的观点和理论去解释原先的理论,这个是特征提取要做的事情。
- 而你仍呆在原始世界中,只是想对现有的“取其精华,去其糟粕”,这个是所谓特征选择。只是对现有进行筛选。
参考:
机器学习之特征选择和特征抽取
一些常用的语音特征提取算法
用特征提取技术降低数据集维度,你学会了吗?
车辆识别(特征提取+svm分类器)
原来CNN是这样提取图像特征的。。。