机器学习:特征选择与稀疏学习
1、子集搜索与评价
特征选择(feature selection):从给定的特征集合中选择出相关特征子集的过程。
进行特征选择的原因主要分为:
- 解决“维数灾难”问题。(与降维有异曲同工之妙)
- 降低学习任务的难度(将纷繁复杂的因素抽丝剥茧,留下关键因素)
无关特征是指与当前学习任务无关的特征。
冗余特征是指该特征的信息能从其他特征中推演出来。
从初始的特征集合中选取一个包含了所有重要信息的特征子集,在实现中,我们可行的一个做法是生成一个“候选子集”,评价其好坏,基于评价结果产生一个候选子集,在对其评价……直至无法找到更好的候选子集。这个过程,涉及到两个关键环节:
- 如何根据评价结果获取下一个候选子集?
- 如何评价候选特征子集的好坏?
子集搜索
-
前向搜索:初始将每个特征当做一个候选特征子集,然后从当前所有的候选子集中选择出最佳的特征子集;接着在上一轮选出的特征子集中添加一个新的特征,同样地选出最佳特征子集;最后直至选不出比上一轮更好的特征子集。
-
后向搜索:初始将所有特征作为一个候选特征子集;接着尝试去掉上一轮特征子集中的一个特征并选出当前最优的特征子集;最后直到选不出比上一轮更好的特征子集。
-
双向搜索:将前向搜索与后向搜索结合起来,即在每一轮中既有添加操作也有剔除操作。
子集评价
2、特征选择方法
常见的特征选择方法大致可以分为三类:过滤式(filter)、包裹式(wrapper)、嵌入式(embedding)
2.1过滤式选择(Relief)
过滤式方法是一种将特征选择与学习器训练相分离的特征选择技术。
1、先将相关特征挑选出来;
2、再使用选择出的数据子集来训练学习器。
Relief算法(二分类问题)
Relief-F算法(多分类问题)
标准的Relief算法只用于二分类问题,后续产生的拓展变体Relief-F则解决了多分类问题。
2.2包裹式选择
包裹方法是一种为给定学习器选择最有利于其性能的特征子集(量身定做)。
⭐拉斯维加斯和蒙特卡罗方法均是以赌城名的方法:
有时间限制:拉斯维加斯可能给出也可能不给出解;蒙特卡罗一定给出解,虽然不一定是对的;
无时间限制:均可以给出解;
- 蒙特卡罗算法:采样越多,越近似最优解,一定会给出解,但给出的解不一定是正确解;
- 拉斯维加斯算法:采样越多,越有机会找到最优解,不一定会给出解,且给出的解一定是正确解。
LVW包裹式算法
LVW包裹式算法:拉斯维加斯框架下采用随机策略进行子集搜索,以最终很累起的误差为特征自己的评价准则;
2.3 嵌入式选择与正则化
过滤式中特征选择与后续学习器完全分离,包裹式则是使用学习器作为特征选择的评价准则;
嵌入式是一种将特征选择与学习器训练完全融合的特征选择方法,即将特征选择融入学习器的优化过程中。
- 经验风险指的是模型与训练数据的契合度,结构风险则是模型的复杂程度.机器学习的核心任务就是:在模型简单的基础上保证模型的契合度。
4、L1范数与L2范数
L1范数会趋向产生少量的特征,其他特征的权值都是0;
L2会选择更多的特征,这些特征的权值都会接近于0。
这样L1范数在特征选择上就十分有用,而L2范数则具备较强的控制过拟合能力。
岭回归ridge regression:
- 加上了L2范数的最小二乘法,有效地解决了奇异矩阵、过拟合等诸多问题,下面的嵌入式特征选择则是在损失函数后加上了L1范数。
最小绝对收缩选择算子LASSO:
- 加上了L1范数。
5、稀疏表示与字典学习
-
稀疏性表现1:数据集D矩阵中,去除很多表示特征的列;
-
稀疏性表现2:数据集D矩阵中存在很多0元素,且没有出现在同一列中;
稀疏编码(sparse coding)/字典学习(dictionary learning)/码书(codebook)学习:对于一个给定的稠密矩阵,若能通过某种方法找到其合适的稀疏(恰当稀疏)表示,则可以使得学习任务更加简单高效.
当样本数据是一个稀疏矩阵时,对学习任务来说会有不少的好处,例如很多问题变得线性可分,储存更为高效等。这便是稀疏表示与字典学习的基本出发点。
⭐
稀疏学习侧重于对样本进行稀疏性表达的过程;
字典学习侧重于学得字典的过程;
6、压缩感知
通过欠采样信息来恢复全部信息。在实际问题中,为了方便传输和存储,我们一般将数字信息进行压缩,这样就有可能损失部分信息,如何根据已有的信息来重构出全部信号,这便是压缩感知的来历,压缩感知的前提是已知的信息具有稀疏表示。
压缩感知:
- 感知测量:对原始信号进行处理以获得稀疏表示;Eg:傅里叶变换、小波变换、字典学习、稀疏编码等;
- 重构恢复:基于稀疏性从少年的观测中恢复原信号(压缩感知的精髓);