特征工程-数据降维

特征工程

1、数据降维
2、特征提取
3、特征选择

一、数据降维

一、特征工程

​ 特征工程是一个很大的概念,实在找不到合适的词,语句来描述特征工程。为了直观的学习特征工程,还是从特征工程处理的流程来窥视特征工程为何物?

​ 1、数据的生成,这部分严格意义上说不属于特征工程范畴。因为数据都没有的话,谈何学习,但是数据即是特征,如何生成数据也是特征生成的过程。在工程上,数据的生成是非常重要的部分,也称特征构建。

​ 2、数据预处理,缺损值,特征编码,归一化/标准化,数据清洗(异常点)

​ 3、特征提取和选择

一般来说,特征工程之后的特征作为模型学习的输入。在特征工程中,特征提取和特征选择一般通过模型去学习,所以特征工程本身就涉及到模型。这里,笔者理解特征工程为特征表示,是对数据的一种表示。其中,数据生成和数据预处理比较泛,没有相对严格的处理方式,经验性较强。特征提取和特征选择则有非常多成熟的方法,一般来讲特征提取和特征选择是一个数据降维的过程。

二、数据降维

​ 数据降维有以下几点好处:

​ 1、避免维度灾难,导致算法失效,或者时间复杂度高

​ 2、避免高维数据中引入的噪声,防止过拟合

​ 3、压缩存储,可视化分析

​ 数据降维的方法有特征提取特征选择两种方式。特征提取理论上是一种坐标变换,将原始数据特征上进行线性非线性变换到目标空间进行表示;而特征选择则是直接在原始数据特征上进行选择,选出的特征集是原始特征集的子集。特征提取的降维方法可以根据线性非线性进行划分(非线性降维一般是在线性降维方法上加上核技巧)。特征选择的方法可以分为过滤式封装式两种,过滤式特征选择是采用一些特征重要性的度量方式来对特征进行选择,过滤掉一些不重要的特征。封装式特征选择是采用一些优化搜索策略随机选择一些特征子集根据算法最终的性能进行特征选择。另外有一种嵌入在学习算法中的特征选择方法采用正则化来进行稀疏,如L1,L2范数进行正则化约束,当然正则化项的最终目标不是降维,而是使得解稀疏,也可以达到数据降维效果。

​ 不同的数据降维方法除了实现降维目标的作用,同时具有各自的特点,比如主成分分析,降维后的各个特征在坐标上是正交;非负矩阵分解,因为在一些文本,图像领域数据要求非负性,非负矩阵分解在降维的同时保证降维后的数据均非负;字典学习,可以基于任意基向量表示,特征之间不再是独立,或者非负;局部线性嵌入,是一种典型的流型学习方法,具有在一定邻域保证样本之间的距离不变性。

特征工程-数据降维

一般来说,特征提取只适合数值型数据,无法直接处理非数值型属性。而特征选择则二者皆适合,比如熵就就非常适合非数值型属性,而且在树模型中,数值型属性还需要离散化处理,以便划分决策。