前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >机器学习之特征工程

机器学习之特征工程

作者头像
村雨遥
发布2019-09-09 17:22:57
1K0
发布2019-09-09 17:22:57
举报
文章被收录于专栏:JavaParkJavaPark

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/github_39655029/article/details/96105119

定义

特征工程即利用数据的相关知识从而来构建特征,从而使机器学习算法发挥出其最佳性能,其目的是最大限度的从原始数据当中提取出特征供算法和模型使用。它是机器学习中最为重要的起始步骤,主要包含以下4个方面,具体内容如下图所示,其中最核心的部分为特征处理部分:

  • 特征使用方案
  • 特征获取方案
  • 特征处理
  • 特征监控
特征工程
特征工程

数据预处理

通过特征提取之后,我们就能够得到未经处理过的特征,但此时特征可能存在以下问题:

  • 不属于同一量纲 即特征规格不一致,无法放在一起比较,就像长度和重量不能在一起比较。但是可以采取无量纲的方式来解决这一问题,无量纲量的量纲为1,它的数值用纯数表示,与所选用的单位制无关;
  • 信息冗余 对于某些定量特征,它所包含的有效信息有区间范围,区间内的信息则有效,区间外的信息则是冗余部分。为解决这一问题,可以采用二值化。定量二值化的核心在于设定一个阈值,大于该阈值的赋值为1,其他的赋值为0,公式如下; x、={1,x&gt;threshold0,x&lt;=thresholdx^、=\begin{cases} 1,x&gt;threshold\\ 0,x&lt;=threshold \end{cases}x、={1,x>threshold0,x<=threshold​
  • 定性特征不能直接使用 一些算法和模型只接受定量特征作为输入,所以对于定性特征,我们需要将其转换为定量特征。针对这一问题,一种解决方式是为每种定性值指定一个定量值,但这种方法过于灵活,大大增加了调参的难度。所以经常采用的是一种哑编码的方式将定性特征转换为定量特征。哑编码直观的解释就是将任意一个状态位去除,这种方式相比给定性值指定一个变量值的方式来讲,减少了调参的繁琐工作量,对于一个线性模型,可以经dummy coding后可以达到非线性的效果;
  • 存在缺失值 对于缺失值,如何对其补充是一个难题;
  • 信息利用率低 不同算法和模型对数据中信息的利用率是不同的,但总体而言,数据的利用率还是十分低的;

无量纲化

无量纲化使得不同规格的数据转换到同一规格,这样表征不同属性的各特征间才有可比性。常见的方法有标准化和归一化,标准化的前提是特征值服从正态分布,经标准化后转换成为标准正态分布。

  • min-max归一化 对原始数据进行线性变换,将其映射到[0,1]之间,也叫做离差标准化或区间缩放法,。 x、=x−minmax−minx^、=\frac{x-min}{max-min}x、=max−minx−min​ 其中,max/min是样本的最大/小值,由于两者可能是动态变化的,而且也容易受到噪声(异常点、离群点)影响,因此一般用于小规模数据的场景,此外min-max归一化方法还有如下优点:
    • 维持稀疏矩阵中为0的条目;
    • 若某一属性\特征的方差较小,这样模型学习起来比较难,但通过min-max归一化之后,可以方法这一属性\特征的差异,利于模型学习;
  • z-score标准化 又称0-均值标准化,其公式如下: x、=x−uσx^、=\frac{x-u}{\sigma}x、=σx−u​ 其中,x为原始数据,u为样本均值,σ\sigmaσ为样本标准差。 正态分布基本性质,若xxx~N(u,σ2)N(u,\sigma^2)N(u,σ2),则x、=x−uσx^、=\frac{x-u}{\sigma}x、=σx−u​ ~ N(0,1)N(0,1)N(0,1),其中N(0,1)N(0,1)N(0,1)表示标准正态分布。通过上式,可发现z-score标准化方法视同将原始数据集标准化为均值为0,方差为1且接近于标准正态分布的数据集。但是,如果数据集的分布偏离一般正态分布较远,则标准化效果也会大打折扣。这一方法适合用于数据量大的场景(即样本足够多);
  • min-max归一化和z-score标准化方法比较 相对于min-max归一化方法,z-score标准化方法不仅可以实现无量纲,还能对所有维度的变量同等对待(因为每个维度均接近服从标准正态分布),在最后计算距离时各维度都发挥了相同的作用,避免了不同量纲的选取对最后距离计算所产生的影响。因此在涉及计算点与点之间距离时,如利用距离度量来计算相似度、PCA、LDA、聚类分析等,且数据量大(分布近似呈正态分布)时,可使用这种方法。相反的,如果想要保留原始数据中由标准差所反映的潜在权重关系时则应该选择min-max归一化方法;

特征选择

经过数据预处理之后,我们选取对结果而言有意义的特征作为算法和模型的输入进行训练。选取时 ,常从如下两方面来进行:

  • 特征是否发散 对于一个特征而言,如果它不发散,就说样本在这个特征上基本无差异,这样的话这个特征对这个样本的区分就起不到任何作用;
  • 特征与最终目标的关联性 我们想要取得好的目标结果,则选取特征时应该优先选择与目标相关性较高的特征,除开求方差的方法,其他方法均从关联性进行考虑;

根据特征选择的形式,可将其选择方法分为以下三种:

  • 过滤法(Filter):按照发散性或相关性对各个特征进行评分,设定一个阈值或选择阈值个数,从而进行特征选择;
  • 包装法(Wrapper):根据目标函数(常为预测效果评分),每次选择或排除若干特征;
  • 集成法(Embedded):先使用某些算法和模型进行训练,得到各特征的权值系数,然后按从大到小选择特征,与Filter方法类似,但可以通过训练来确定特征的好坏;

过滤法(Filter)

方差选择法
  • 定义 先计算各特征的方差,然后根据预先所设阈值,选择方差大于阈值的特征,方差越大说明所含信息量越大,建议作为数值特征的筛选方法;
  • 优点 简单、无脑、计算速度快;
  • 缺点
    • 对噪声和outlier非常不鲁棒;
    • 未考虑特征与目标变量间的相关性,可能只是单纯的方差大,与目标变量毫无关系;
    • 特征可能有量纲,可用min-max归一化法fi=xi−xminxmax−xminf_i=\frac{x_i-x_min}{x_max-x_min}fi​=xm​ax−xm​inxi​−xm​in​去量纲,从而缩放到[0,1]区间;
相关系数法
  • 定义 先计算各特征x对目标值y的Pearson相关系数,**注意:**若先将x,y进行标准化,再进行一元线性回归,则最后得到的回归系数就是Pearson相关系数,可以通过最小二乘法公式简单验证得到;
  • 优点
    • 计算速度快;
    • 可以计算各特征间的相关系数,从而减少特征之间的多重共线性关系;
  • 缺点
    • 对大功率噪声不鲁棒;
    • 只对线性相关敏感,若是非线性相关,其相关系数可能很小;
卡方检验
  • 定义 经典卡方检验即检验定性自变量对定性因变量的相关性。假设自变量有N个取值,因变量有M个取值,考虑自变量等于i且因变量等于j的样本频数的观察值与期望的差距,从而构建统计量,计算公式如下,统计量的含义简言值就是自变量对因变量的相关性。此方法建议作为分类问题的分类变量的筛选方法; χ2=∑(A−E)2E\chi^2=\sum\frac{{(A-E)^2}}{E}χ2=∑E(A−E)2​
互信息法
  • 定义 评价定性自变量对定性因变量的相关性,为了处理定量数据,提出最大信息系数法,互信息计算公式如下: I(X;Y)=∑x∈X∑y∈Yp(x,y)logp(x,y)p(x)p(y)I(X;Y)=\sum_{x\in X}\sum_{y\in Y} p(x,y)log\frac{p(x,y)}{p(x)p(y)}I(X;Y)=x∈X∑​y∈Y∑​p(x,y)logp(x)p(y)p(x,y)​

包装法(Wrapper)

递归特征消除法
  • 定义 使用一个基模型来进行多轮训练,每轮训练之后,消除若干权值系数的特征。然后再基于新的特征集进行下一轮训练;

包装法(Embedded)

基于惩罚项的特征选择法
  • 定义 使用带惩罚项的基模型,除了筛选出特征之外,同时也进行了降维的工作,采用带L1惩罚项的逻辑回归模型。实际上,L1惩罚项降维的原理在于保留多个目标值具有同等相关性的特征中的一个,因此未入选的特征不代表不重要,因此可以结合L2惩罚项来优化。具体操作为:若一个特征在L1中的权值为1,选择在L2中权值差别不大且在L1中权值为0的特征构成同类集合,将这一集合中的特征平分L1中的权值,从而构建一个新的逻辑回归模型;
基于树模型的特征选择法
  • 定义 将树模型中的GBDT(梯度提升树)作为基模型,然后进行特征选择;

降维

经过上边的特征选择过程之后,我们就可以直接进行模型训练了,但是可能由于特征矩阵过大,从而导致计算量偏大,训练时间长等问题,因此需要进行降维操作。除开上述的基于L1惩罚项的模型方法外,常用的降维方法还有:

主成分分析法(PCA)

  • 定义 一种常用的数据分析方法,通过线性变换将原始数据变换成一组各维度线性无关的表示,可用于提取数据的主要特征分类,常用语高维数据的降维,同时保持数据集中的对方差贡献最大的特征。PCA依赖于所给数据,所以数据准确性对分析结果影响很大。其目标是为了让映射后的样本具有更大的发散性,因此是一种无监督的降维方法;

线性判别分析法(LDA)

  • 定义 一种统计方法,通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后所获得变量组即为主成分。其目的是让映射后的样本具有更好的分类性能,因此是一种有监督的降维方法;

本文参考

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年07月18日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 定义
  • 数据预处理
    • 无量纲化
    • 特征选择
      • 过滤法(Filter)
        • 方差选择法
        • 相关系数法
        • 卡方检验
        • 互信息法
      • 包装法(Wrapper)
        • 递归特征消除法
      • 包装法(Embedded)
        • 基于惩罚项的特征选择法
        • 基于树模型的特征选择法
    • 降维
      • 主成分分析法(PCA)
        • 线性判别分析法(LDA)
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档