论文部分内容阅读
在机器学习中,给高维数据集建立一个鲁棒训练模型是非常重要的。其中最大的问题是如何进行数据降维。数据降维分为两种形式:特征选择和特征提取。特征选择是在原有的特征集中直接选择其中一部分特征,用这个特征子集来代替原数据集合。特征萃取是将高维数据空间映射到一个低维数据空间,用映射后的结果来代替原数据集合。特征选择在有大量冗余数据的情况下已经被证明比特征提取的效果更好,不但可以提高算法效率,还可以简化计算过程,让结果具有更好的可读性。特征选择由特征排序和子集选择两个部分组成。特征排序按照一定的规则将特征对输出结果的贡献度大小排序,同时滤除掉贡献度很小达不到阈值的特征。子集选择在于选取一个最优的特征子集。一个好的特征子集所包含的特征要对输出的结果贡献尽量大,同时特征之间的相关度尽量小。基于以上的原则,本文把特征选择的问题转换为两个部分:基于相似度的特征聚类;特征贡献度排序。基于相似度的聚类是用来将特征分割为一些子集,在这些子集特征的相似度尽量高,同时在子集之间特征的相似度尽量低。特征排序是按照特征对结果的贡献度大小将特征进行排序。本文提出了一种使用SVM(支持向量机)感度来度量每个特征的贡献大小的方法。但是这种方法没有考虑到每个特征之间的独立性,特征的贡献是相互关联的。针对于这种缺点,本文提出了一种基于正交最小二乘法的特征排序方法,将输入特征空间映射到一个由一组正交基底组成的特征空间,利用特征的正交性来衡量每个特征对输出贡献的独立性。本文同时也提出了另外一种基于简化的正交最小二乘法的特征排序方法来克服正交最小二乘法在数据维度很高的时候时间复杂度高的问题。本文还使用了一种集成的特征选择方法来集成不同的特征选择方法来得到一个更加鲁棒的特征子集。在本文的模型中,本文选取每个类中特征排序最高的特征来代表这个类的所有特征作为特征子集中的特征元素。这样得到的特征子集就能符合上文所提出的好的特征子集的特性:一个好的特征子集所包含的特征要对输出的结果贡献尽量大,同时特征之间相似度要尽量小。特征排序保证了所选特征对输出的贡献尽量大,基于相似度的聚类保证了特征之间的相似度尽量小。经过试验表明,本文所提出的特征选择模型以及特征排序的方法能够得到很好的效果。既能极大的降低输入空间的维度,减少计算量,提高计算效率;又能很好的保持原特征集的特性,在有大量冗余特征的数据集中还能提高分类准确度,能够取得非常鲁棒的特征子集。